zoukankan      html  css  js  c++  java
  • 软件工程作业三:微软小娜APP的案例分析

      我们生活中很多时候要和软件打交道,大家上课开小差时候玩的手机游戏,买火车票的网站,互相联系用的微信、QQ,等等都是软件,都很值得分析。你为何成为它们的用户?它们的团队做对了什么,做错了什么?如果你来做,会做得更好么?

         通过各种案例分析,评测,辩论,总结,我们就能看到软件工程的原则在实践中的种种体现,学好软件工程,帮助我们在实践中做得更好。

    产品

       请下载 微软小娜-智能助手,win10,iOS或Android客户端都有!

    第一部分调研,评测

    1.  下载并使用,描述最简单直观的个人第一次上手体验。

    界面简洁,声音比siri好听,反应快速。

    2.  上网或图书馆查找bug的定义, 找出几个功能性的比较严重的 bug,至少2个。

    (1)锁屏状态直接启动微软小娜,有时能打开,有时打不开。且锁屏状态的语音操作,不能直接完成,必须要先解锁手机。

    (2)使用微软小娜拨打已有联系人电话时,若联系人名字中存在生僻字,不能识别拨打,只是打开拨打电话界面提示输入号码或是打开与生僻字读音相近的联系人的拨打电话界面。

    (3)语言不统一。例如系统语言是中文,若用英文进行语音操作,微软小娜不能对操作进行应答,只是对所说英文内容翻译。

    3.  用专业的语言描述 (每个bug 不少于 40字),如有必要, 可以配图。

    (1)锁屏状态直接启动微软小娜,有时能打开,有时打不开,不稳定。且锁屏状态的语音操作,不能直接完成,必须要先解锁手机。如图1-1是锁屏状态下能打开微软小娜时界面显示,图1-2和图1-3是锁屏状态下不能打开微软小娜是界面显示。

                                                      

        图1-1锁屏状态下不能打开微软小娜时界面显示             图1- 2 图1-3锁屏状态下能打开微软小娜时界面显示

    (2)使用微软小娜拨打已有联系人电话时,若联系人名字中存在生僻字,不能识别拨打,只是打开拨打电话界面提示输入号码或是打开与生僻字读音相近的联系人的拨打电话界面。如图1-4、图1-5和图1-6所示。

                              

    图1-4 图1-5 拨打电话联系人名字中存在生僻字时                 图1-6 拨打联系人电话成功

    4.  相信每个同学的朋友中一定有人需要用这样的软件, 选择一个朋友(用户)进行采访,并加以记载。

    我采访的对象是宿舍室友邵同学。由于她一直使用微软小娜,所以我认为采访一个长期使用微软小娜的人,比采访一个新手更有价值。

      采访时间:2017年3月30日  采访地点:宿舍

      采访对象:宿舍室友邵同学   记录:LSYang

      采访者:LSYang

      使用照片(如图1-7所示):

      

     图1-7  邵同学使用微软小娜图

      采访过程:

          我:小邵你好,能采访你使用微软小娜的一些问题吗?

      宿舍室友邵同学:好,你问吧!

      我:你为什么要用智能助理的相关应用呢?

      宿舍室友邵同学:因为智能助理这样的应用,“能够通过了解用户的喜好和习惯”,帮助我进行日程安排,进行一些问题的解答。

      我:那你为什么用微软小娜呢?

      宿舍室友邵同学:觉得挺好用的,和siri比起来,更智能一些。

      我:你都会使用微软小娜的哪些功能呢?

         宿舍室友邵同学:拨打电话、阅读短信、调整闹钟、搜索信息、语音问答。

         我:那你说的这些功能,是siri、百度都可以做的事情啊?你认为微软小娜和siri、微软小冰比,好在哪里?是功能方面,操作方面,还是视觉方面?

         宿舍室友邵同学:首先,第一个问题,小娜可以说是微软在机器学习和人工智能领域方面的尝试,与小娜的智能交互,不是简单地基于存储式的问答,而是对话,没有siri那些那么死板。第二个问题,我觉得更多的是功能方面吧。一个很简单的例子就是,假如手机中记录的日程显示将要参加会议,那么不需任何操作,小娜到时就会自动将手机调至会议状态。

        我:意思就是微软小娜更人性化一些?

      宿舍室友邵同学:相对吧。可以说手机能够理解我将要做什么

      我:还有最后三个问题。使用这个产品的过程,你的问题都能解决么?

      宿舍室友邵同学:肯定不都能解决呀!

      我:能举个例子吗?

      宿舍室友邵同学:比如说有时候我查询一些专业的缩写,它上边就没有,只能查一些专业的词汇。现在肯定做的不完美吧。有些还需要谷歌和百度。

      我:下一个问题,软件在数据量、界面、功能、准确度上、用户体验上各有什么优缺点?

      宿舍室友邵同学:这个我不太懂。

      我:就说你觉得界面怎么样?

      宿舍室友邵同学:蛮简洁的。操作起来也很顺手。

      我:你有需要的新功能吗,你觉得页面怎么改会更好?

      宿舍室友邵同学:新功能?界面背景颜色如果能多一些亮色就好了 。

      我:你对产品有什么改进意见?

      宿舍室友邵同学:暂时没有吧。语音库或许能多一些选择会更好吧。

      我:好的。采访结束了,谢谢!

    5.  结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价:

      a)   非常不推荐

      b)   不推荐

      c)   一般

      d)   推荐

      e)   非常推荐

      请选择一个结论。

      我的结论是(d).

    第二部分分析

    1.  使用此软件的所有功能,估计这个项目做到这个程度大约需要多少时间 (团队人数6 人左右, 计算机大学毕业生, 并有专业UI 支持)。

         两年。

    2.  分析这个软件目前的优劣 (和类似软件相比,至少对比2款软件), 推理出这个软件团队在软件工程方面可以提高的重要方面 (具体建议)。要求把对比的结果列出一个表格,对比每个软件各自的优点和缺点。

        感觉上,三大科技巨头的语音助手服务差别不大,都提供了相似的功能和设备覆盖。当然,在细微使用体验上还是有一些差别,比如Siri更像一个机器人,Cortana使用形式更灵活、Google Now则往往会给你最精确的答案等。

        展望未来,三大语音助手也都拥有更好的形态,微软希望Cortana能够成为谈话服务的组成部分、Siri则更加开放,而谷歌助手则似乎想要无处不在,智能语音助手大战才刚刚开始。

    3.  [附加题] 针对不同的维度评分,对用户体验方面、UI界面美观度、核心功能,分别打分(能给出更详细的评分更优)。

    评分细则
    用户体验方面
    1分:体验糟糕,频繁闪退卡顿
    2分:体验比较糟糕,时而发生闪退
    3分:体验一般,某些功能会发生闪退
    4分:体验较好
    5分:体验好,软件操作流畅
    UI界面美观度
    1分:难看,板块混杂,没有按照功能划分
    2分:较难看,板块划分混乱
    3分:一般,板块按功能划分但界面不够清晰美观
    4分:较好看,板块按功能划分,界面清晰,但美观度有待上升
    5分:好看,板块按功能划分,界面清晰美观
    核心功能
    1分:功能少,且存在大量bug,影响用户的整体使用
    2分:功能较少,且存在bug,影响用户部分功能使用
    3分:功能一般,且存在较少bug,基本功能都能使用
    4分:功能较多,存在极少的不影响用户使用的bug
    5分:功能多,且基本无法察觉bug
    
    微软小娜打分
    用户体验方面 + UI界面美观度 + 核心功能 = 4+3+3 = 10

    第三部分建议和规划

    1.  如果你是项目经理,如何提高从而在竞争中胜出?

    (1)迎合市场需求。考虑用户体验。

    (2)提高UI界面设计,对模块细化,统一界面框架风格(字体,色调,排版等),做好看的皮肤。

    (3)功能优化,定期更新。

    2.  目前市场上有什么样的产品了?

     siri、Google now、小米语音助手等。

    3.  你要设计什么样的功能?

    界面优化,更具友好性。功能方面不必过繁,可以适当减少。主打功能要不断的去优化,以达到给用户最好体验的目的。有小问题的功能要不断的修复。

    4.  为何要做这个功能,而不是其他功能?

    以为界面的不断优化会不断的促使用户量增加,随着用户量的增加用户体验后的反馈会越来越多,这样的话,我们就可以根据反馈过来的信息来不断的优化软件的功能,从而优化性能。一定程度上满足用户的需求。如此一来才可以达到事半功倍的效果。而如果去设计其他功能则无法实现这种效果。

    5.  为什么用户会用你的产品/功能?

    用户选择一款软件其实最为直观的决策因素就是界面,当看到别人使用的软件界面比较好,自己会想着去下载看看。同时会推荐给他人。包括一些论坛、软件的下载中心也都是通过界面来展现一款软件。试想如果界面很难看,你还会选择去看里面的东西吗?因为我着力去设计界面,所以我的软件界面会受到更多人的喜爱,所以更多的用户会选择使用我的产品。

    6.  你的创新在哪里? 请使用 NABCD 分析。

    (1)N (Need 需求)

    每个人的手机都有很多不同功能的app应用,但是如果存在一个可以汇总它们或者说集中调用这些app的功能的手机助手存在,会很便捷。如果能更人性化的跟用户互动,这也会给大家带来很多乐趣。

    (2)A (Approach 做法)

    界面优化,更具友好性。功能方面不必过繁,可以适当减少。主打功能要不断的去优化,以达到给用户最好体验的目的。有小问题的功能要不断的修复。

    (3)B (Benefit  好处)

    操作简单,可以在一个app里打开很多app,有时候用户的手机里软件非常多,需要用到其中哪个的时候不好找到,而微软小娜可以直接语音打开进行操作。

    (4)C (Competitors 竞争)

    为能够竞争得到优势,调研市场是必须的,学习别人的,同时也要创新自己的,构建成这个良性发展圈,才能使自己的产品不断地被用户主动接受和选择。

    (5)D (Delivery 推广)

    推广的途径有很多,可以设置一个互动平台让用户体验后提出好的想法,如果想法不错可以给予一定的奖励等。

    7.  如果你来领导这个团队,会有什么不一样?

    首先我会和我的伙伴们保持良好的关系,要关心他们。

    对于产品每个细节我都会参与进去,我会做更多的统计类,分析类,调查类工作。

    同时我会保持谦虚,积极主动的像同行请教经验,向我的团队虚心学习,向用户虚心请教。

    要形成一种和谐的氛围,这样更有利于团队工作的开展,要形成一种良好的同行关系,一起学习和进步。

    和用户打成一片,知道他们需要什么,就努力做好什么。

    8.  如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?

    这次的主要改动是关于界面的,所以需要一个专门的美工,开发很重要设置三个开发。同时开发也协助美工提出好的建议,美工在具体的工作中也好好的协助开发。测试一个。测试首先要辅助美工和开发,然后再具体的融入到测试工作中。

    9.  描述你的团队在12 周期间每周都要做什么,才能在第12周如期发布软件,大小里程碑绩点设定.

    • 第1周  需求分析
    • 第2-3周  框架设计,功能逻辑设计
    • 第4-10周  代码开发,美工
    • 第11-13周  测试,改Bug,提高软件稳定性
    • 第14-15周  内测,修订
    • 第16周  发布
  • 相关阅读:
    c#处理3种json数据的实例
    Json to JObject转换的使用方法
    js 中对象属性特性的描述
    js 中对象属性的特性
    js 中对象--对象结构(原型链基础解析)
    js 中对象--属性相关操作
    js 的对象--如何定义一个对象
    js 中特殊形势的函数-匿名函数的应用
    js 默认的参数、可变的参数、变量作用域
    js 通过function来定义函数
  • 原文地址:https://www.cnblogs.com/liusiyang1126/p/6645345.html
Copyright © 2011-2022 走看看