个人博客作业三:微软小娜APP的案例分析
个人博客作业三:微软小娜APP的案例分析
我们生活中很多时候要和软件打交道,大家上课开小差时候玩的手机游戏,买火车票的网站,互相联系用的微信、QQ,等等都是软件,都很值得分析。你为何成为它们的用户?它们的团队做对了什么,做错了什么?如果你来做,会做得更好么?
通过各种案例分析,评测,辩论,总结,我们就能看到软件工程的原则在实践中的种种体现,学好软件工程,帮助我们在实践中做得更好。
产品
请下载 微软小娜-智能助手,win10,iOS或Android客户端都有!
第一部分调研,评测
(软件的bug,功能评测,黑箱测试, 第8章 用户调研, 12 章 软件的用户体验)
1. 下载并使用,描述最简单直观的个人第一次上手体验。
下载的时候是从小米自带的应用商店里搜的,一开始搜的是微软小娜,然而并没有搜出来,之后没辙就去浏览器搜了下,搜完才知道微软小娜也叫Cortana,但是应用商店里并没有标注出来(除非你点进去看)。之后就是安装,不一会就安完了,点开Cortana后,便提示我注册,于是我就按着它给我的步骤开始注册,然而出现了无限加载的问题(如图一所示),等了很长时间没动静,索性就返回了桌面。返回桌面后发现多了一个叫做Cortana语音的软件,点开后便又开始了无限启动中(如图二所示),等了一万年都没动静。于是就删了,怎么说呢,第一次下载使用的感觉非常差,如果纯靠自愿的话,我短时间内不会再下载并使用了。
2. 按照《构建之法》13.1节描述的 bug 定义, 找出几个功能性的比较严重的 bug,至少2个。
1)注册的时候,不知道是不是网络的问题,无限加载,也不提示我是否是网络的问题
2)点击进入Cortana的时候,无限启动中,根本没动静,不知道是不是小米手机的问题
3. 用专业的语言描述 (每个bug 不少于 40字),如有必要, 可以配图。
就是无限加载,无限启动。程序并没有按照预定的计划运行
4. 相信每个同学的朋友中一定有人需要用这样的软件, 选择一个朋友(用户)进行采访,并加以记载。
5. 提示: 采访提要
5.1. 介绍采访对象的背景和需求(他们为何要使用该软件)
下载一个Cortana,试试看和ios的siri有啥区别。
5.2. 让采访对象使用10 – 30 分钟该APP的功能(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)
5.3. 描述用户使用这个产品的过程,用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
它会记录用户的行为和使用习惯,利用云计算、搜索引擎和“非结构化数据”分析,读取和“学习”包括手机中的文本文件、电子邮件、图片、视频等数据,来理解用户的语义和语境,从而实现人机交互。一个很简单的例子就是,假如手机中记录的日程显示将要参加会议,那么不需任何操作,Cortana 到时就会自动将手机调至会议状态。
5.4. 用户对产品有什么改进意见?
讲个笑话的功能语音可以调调语调,语气。
5.5. 结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价:
• 非常不推荐
• 不推荐
• 一般 √
• 好,不错
• 非常推荐
第二部分分析
(参考《构建之法》 8.6 节 对工作的估计, 和14.1 节 软件工程的质量)
1. 使用此软件的所有功能,估计这个项目做到这个程度大约需要多少时间 (团队人数6 人左右, 计算机大学毕业生, 并有专业UI 支持)。
根据《构建之法》8.6节 计划喝估计,需要做到目标,估计和决心三大点。其次从浪漫的角度看软件开发,人们不禁想象软件团队一开始就理解了用户的需求,软件工程师咋次基础上开发了各种完美的功能,按时交付给用户。
2. 分析这个软件目前的优劣 (和类似软件相比,至少对比2款软件),推理出这个软件团队在软件工程方面可以提高的重要方面(具体建议)。要求把对比的结果列出一个表格,对比每个软件各自的优点和缺点。
IOS的Siri和谷歌Now。
以下的视频连接是Siri和小娜的对话:
http://www.miaopai.com/show/3MDYkLeU6h3QBK7Ll4BaPQ__.htm
第三部分建议和规划
(参考《构建之法》第8章功能的定位和优先级;第9章项目经理)
1. 如果你是项目经理,如何提高从而在竞争中胜出?
减少BUG的出现,并增加宣传力度
2. 目前市场上有什么样的产品了?
IOS的Siri和谷歌Now。
3. 你要设计什么样的功能?
增加语气或者说是心情系统。
4. 为何要做这个功能,而不是其他功能?
让语言活起来,不再那么死板。
5. 为什么用户会用你的产品/功能?
让人觉得再跟一个真正的人在交流
6. 你的创新在哪里? 请使用 NABCD 分析
( http://www.cnblogs.com/xinz/archive/2010/12/01/1893323.html ).
7. 如果你来领导这个团队,会有什么不一样?
8. 如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
2个人开发,1个人测试,2个人美工
9. 描述你的团队在12 周期间每周都要做什么,才能在第12周如期发布软件,大小里程碑绩点设定.
第1周:需求分析。更深刻的对用户需求进行分析,有针对性的进行这一功能的设计。
第2周:生成设计文档,设计复审。
第3周:任务分配,讨论具体设计细节,。
第4-8周:具体编码。
第9周:代码复审。
第10周:美工。
第11周:测试和修改bug。
第12周:项目报告与发布。