zoukankan      html  css  js  c++  java
  • 个人博客作业三:微软小娜APP的案例分析

    个人博客作业三:微软小娜APP的案例分析

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

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

    产品

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

    第一部分调研,评测

    (软件的bug,功能评测,黑箱测试, 第8章 用户调研, 12 章 软件的用户体验)

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

       感觉和苹果手机里的siri类似,然后故意把小娜的名字叫成siri,想看看她是什么反应,接着又调戏她唱首歌,结果这个家伙有感情地唱了一段《我的未来不是梦》,又测试了她一些其他的功能,例如:帮我订个下午五点的闹钟,附近有啥吃的之类的,总的来说,小娜的识别准确率很高,而且给的信息也很满意,无聊的时候还可以调戏她一下,真是不得不感叹人机交互的发展之迅速。

     2.按照《构建之法》13.1节描述的 bug 定义, 找出几个功能性的比较严重的 bug,至少2个。

    (1)有时小娜给的答案会不太准确(答非所问)

    (2)有时会弹出Bling浏览器(类似于百度搜索)

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

      当小娜读不懂用户的需求是什么的时候,她会做一件熟悉的事情——打开浏览器,然后在Bing上搜索,即便是一些在你看来非常简单的请求,都有可能是通过Bling搜索找到的结果。或许,小娜还需要一些时间来进行深度学习,以便更好地了解人们的意识和需求。

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

    5.    提示采访提要

    5.1. 介绍采访对象的背景和需求(他们为何要使用该软件)

           好奇心,想知道微软现在的人机交互技术进展如何。

    5.2. 让采访对象使用10  30 分钟该APP的功能(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)

    5.3. 描述用户使用这个产品的过程,用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?

     小娜能够了解用户的喜好和习惯,帮助用户进行日程安排、问题回答等,通过微软小娜可以进行查询搜索、预订机票、打开应用等,为用户带来更多方便。小娜还拥有很多长词的功能实现,比如在提醒功能中,可以说“当XX打电话时,提醒我做XXX”,或是直接通过小娜语音写便签等等。  另外值得一提的是,微软小娜还有很多有趣的小彩蛋,无聊的时候可以调戏小娜解闷。比如你可以让小娜唱歌、背诗、说绕口令、说方言等等,小娜甚至可以模仿明星说话,诗词接龙等等,如果你实在无聊的话,还可以让小娜启动自毁程序,倒数5秒钟之后会有惊喜!

    5.4. 用户对产品有什么改进意见?

      声音可以有多种选项。

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

    •     非常不推荐

    •     不推荐

    •     一般

    •     好,不错

         非常推荐   --------- 1

    第二部分分析

    (参考《构建之法》 8.6 节 对工作的估计, 和14.1 节 软件工程的质量)

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

        要想完成一个项目, 首先要制定项目计划,然后进行需求开发阶段,怎么样写好需求很关键,如果有项目成员,可以一起做需求,最能能够写出一份《需求规格说明书》,接着就要进行系统设计阶段;通过结合用户对系统环境、开发语言以及运行的网络硬件等要求,确定开发工具,用图的方式表达出用户和项目系统功能的关系。然后是代码开发和单元测试阶段,也就是实打实地打代码,打完代码之后当然就是要进行测试工作,测试是项目的很重要的环节,这个阶段花费的时间要稍微多一些,最后一步就是进行过系统的后续维护工作。在我看来,要完成以上这些工作,至少需要一年的时间,因为这是一个不断修复BUG的过程,在用户使用的过程中,多多少少会有体验不佳的地方,这时就需要系统人员进行维护。

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

       苹果的siri,三星的Bixby,谷歌的NOW

    优点:有趣的性格,只要你所提的问题和当前话题相关,它就可以将对话保持下去,可以处理几乎所有虚拟助手应该去处理的基本任务。

    缺点:小娜并不支持免动手模式,所以你需要通过长按搜索键的方式来激活它,然后它在语音听写上也存在一些问题。

    第三部分建议和规划

    (参考《构建之法》第8章功能的定位和优先级;第9章项目经理)

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

          吸引人的UI界面

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

        苹果的siri,三星的Bixby,谷歌的NOW

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

           我会让界面不再那么枯燥,增加多种声音选择,并且让小娜的回答不再那么死板,会变得圆润一些,让用户觉得自己在和一个真正的人在对话而不是机器。

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

           因为用户的第一次体验很重要,如果第一次就使用户对小娜产生兴趣,那么这个功能就是成功的。

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

           因为她有实实在在的便利之处,以及放松用户心情的作用。

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

    ( http://www.cnblogs.com/xinz/archive/2010/12/01/1893323.html ).

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

     我会让我的团队调整一下状态,不应该每天都是绷着弦,我觉得一个愉快的心情可能是一个好的软件的良好开端。

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

      开发人员:3人;测试人员:1人;美工:1人;

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

          

    · 进行需求分析

     第一周

    · 生成设计文档

     第二周

    · 设计复审

     第三周

    · 设定代码规范

     第三周

    · 软件具体设计

     第四周

    · 软件具体编码

     第五到第七周

    · 代码复审

     第八周

    · 测试(单元测试、压力测试等)

     第九周

    报告

     第十到第十二周

    · 测试报告

     第十到第十一周

    · 计算工作量

     第十一周

    · 事后总结, 并提出过程改进计划

     第十二周

  • 相关阅读:
    SELENIUM2 使用JavascriptExecutor在页面Javascipt执行
    用Merge来改写相关更新的例子
    Oracle --获取绑定变量的值.
    [NewLife.XCode]高级统计(数据报表利器)
    [NewLife.XCode]分表分库(百亿级大数据存储)
    [NewLife.XCode]导入导出(实体对象百变魔君)
    [NewLife.XCode]角色权限
    [NewLife.XCode]实体工厂(拦截处理实体操作)
    [NewLife.XCode]百亿级性能
    [NewLife.XCode]对象字典缓存(百万军中取敌首级)
  • 原文地址:https://www.cnblogs.com/zhangrunze/p/6662349.html
Copyright © 2011-2022 走看看