个人博客作业三:微软小娜APP的案例分析
个人博客作业三:微软小娜APP的案例分析
我们生活中很多时候要和软件打交道,大家上课开小差时候玩的手机游戏,买火车票的网站,互相联系用的微信、QQ,等等都是软件,都很值得分析。你为何成为它们的用户?它们的团队做对了什么,做错了什么?如果你来做,会做得更好么?
通过各种案例分析,评测,辩论,总结,我们就能看到软件工程的原则在实践中的种种体现,学好软件工程,帮助我们在实践中做得更好。
产品
请下载 微软小娜-智能助手,win10,iOS或Android客户端都有!
第一部分调研,评测
(软件的bug,功能评测,黑箱测试, 第8章 用户调研, 12 章 软件的用户体验)
1. 下载并使用,描述最简单直观的个人第一次上手体验。
界面很简洁清晰,注册登录之后开始调戏小娜。
2. 按照《构建之法》13.1节描述的 bug 定义, 找出几个功能性的比较严重的 bug,至少2个。
在《构建之法》13.1节描述的 bug 有如下定义:
Bug:软件的缺陷,bug可以分解为:症状(Symptom)、程序错误(Fault)、根本原因(Root Cause)。
1)症状:即从用户的角度看,软件出了什么问题。例如,输入(3211)时,程序出错退出。
2)程序错误:即从代码的角度看,代码的什么错误导致了软件的问题。例如,代码在输入为某种情况下访问了非法的内存地址——0X0000000C。
3) 根本原因:错误根源,即导致代码错误的根本原因。例如,代码对于id1==id2的情况没有做正确判断,从而引用了未赋初值的变量,出现了以上的情况。
通过我自己理解,bug简单的说就是软件的行为和用户的期望值不一样就叫bug吧。
3. 用专业的语言描述 (每个bug 不少于 40字),如有必要, 可以配图。
(1)小娜语音识别不用按着就可以直接说话识别,说出歌名能够识别出来,但是出现网页界面,没有唱歌。
4. 相信每个同学的朋友中一定有人需要用这样的软件, 选择一个朋友(用户)进行采访,并加以记载。
5. 提示: 采访提要
5.1. 介绍采访对象的背景和需求(他们为何要使用该软件)
自己下载一个Cortana,试试看和ios的siri有啥区别。
5.2. 让采访对象使用10 – 30 分钟该APP的功能(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)
5.3. 描述用户使用这个产品的过程,用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
它会记录用户的行为和使用习惯,利用云计算、搜索引擎和“非结构化数据”分析,读取和“学习”包括手机中的文本文件、电子邮件、图片、视频等数据,来理解用户的语义和语境,从而实现人机交互。一个很简单的例子就是,假如手机中记录的日程显示将要参加会议,那么不需任何操作,Cortana 到时就会自动将手机调至会议状态。
5.4. 用户对产品有什么改进意见?
讲个笑话的功能语音可以调调语调,语气。
5.5. 结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价:
• 非常不推荐
• 不推荐
• 一般
• 好,不错
• 非常推荐 --------- 1
第二部分分析
(参考《构建之法》 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. 如果你是项目经理,如何提高从而在竞争中胜出?
增加趣味性
2. 目前市场上有什么样的产品了?
IOS的Siri和谷歌Now。
3. 你要设计什么样的功能?
增加点小游戏。
4. 为何要做这个功能,而不是其他功能?
因为现在的人太喜欢抬着手机玩游戏了。
5. 为什么用户会用你的产品/功能?
推广之后,得到好评,自然有人使用。
6. 你的创新在哪里? 请使用 NABCD 分析
( http://www.cnblogs.com/xinz/archive/2010/12/01/1893323.html ).
7. 如果你来领导这个团队,会有什么不一样?
8. 如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
4个人开发和测试,一个人美工
9. 描述你的团队在12 周期间每周都要做什么,才能在第12周如期发布软件,大小里程碑绩点设定.
第1周:需求分析。更深刻的对用户需求进行分析,有针对性的进行这一功能的设计。
第2周:生成设计文档,设计复审。
第3周:任务分配,讨论具体设计细节,。
第4-8周:具体编码。
第9周:代码复审。
第10周:美工。
第11周:测试和修改bug。
第12周:项目报告与发布。
posted on 2017-04-03 15:21 Fassbender 阅读(222) 评论(0) 编辑 收藏 举报