我的博客做业三:微软小娜APP的案例分析html
咱们生活中不少时候要和软件打交道,你们上课开小差时候玩的手机游戏,买火车票的网站,互相联系用的微信、QQ,等等都是软件,都很值得分析。你为什么成为它们的用户?它们的团队作对了什么,作错了什么?若是你来作,会作得更好么?浏览器
经过各类案例分析,评测,辩论,总结,咱们就能看到软件工程的原则在实践中的种种体现,学好软件工程,帮助咱们在实践中作得更好。微信
产品网络
请下载 微软小娜-智能助手,win10,iOS或Android客户端都有!工具
第一部分调研,评测post
(软件的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. 使用此软件的全部功能,估计这个项目作到这个程度大约须要多少时间 (团队人数6 人左右, 计算机大学毕业生, 并有专业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周如期发布软件,大小里程碑绩点设定.
· 进行需求分析 |
第一周 |
· 生成设计文档 |
第二周 |
· 设计复审 |
第三周 |
· 设定代码规范 |
第三周 |
· 软件具体设计 |
第四周 |
· 软件具体编码 |
第五到第七周 |
· 代码复审 |
第八周 |
· 测试(单元测试、压力测试等) |
第九周 |
报告 |
第十到第十二周 |
· 测试报告 |
第十到第十一周 |
· 计算工做量 |
第十一周 |
· 过后总结, 并提出过程改进计划 |
第十二周 |