截止时间:2016年9月25日24:00。
很多同学有误解,软件工程课是否就是理论课?或者是几个牛人拼命写代码,其他人打酱油的课?要不然就是学习一个程序语言,搞一个职业培训的课?
都不对, 软件工程有理论,有实践,更重要的是分析,思辨,总结。在课程中,自己组织团队写一个软件,然后分析,的确是学习软件工程的一个好方法;但我们也可以从别人的成功/失败中学到很多。
我们生活中很多时候要和软件打交道,大家上课开小差时候玩的手机游戏,买火车票的网站,互相联系用的微信微博,等等都是软件,都很值得分析。 你为何成为它们的用户?它们的团队做对了什么,做错了什么?如果你来做,会做得更好么? 通过各种案例分析,评测,辩论,总结,我们就能看到软件工程的原则在实践中的种种体现。
产品:必应词典客户端有Windows 10,Windows Phone,iPhone,Android,iPad 客户端!
关于 微软必应词典客户端 的案例分析
第一部分 调研, 评测
(软件的bug,功能评测,黑箱测试,第8章 用户调研,12 章 软件的用户体验)
下载并使用,按照描述的bug定义,找出几个功能性的比较严重的bug。至少两个。用专业的语言描述(每个bug 不少于 40字),如有必要,可以配图。
相信每个同学的朋友中一定有人需要用这样的软件,记载你对这位用户的采访。
提示:采访提要
1) 介绍采访对象的背景和需求(他们为何要学英语,查词典和用法,还有别的需求么)
2) 让采访对象使用10-30分钟必应词典的功能(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)
3) 描述用户使用这个产品的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
4) 用户对产品有什么改进意见?
结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价:
a) 非常不推荐
b) 不推荐
c) 一般
d) 推荐
e) 非常推荐
请选择一个结论。
第二部分 分析
(参考 8.6 节 对工作的估计, 和14.1 节 软件工程的质量)
使用此软件的所有功能(包括必应词典背单词, 单词挑战,口语练习等),联系第二部分的分析,估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。 分析这个软件目前的优劣(和类似软件相比),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。
第三部分 建议和规划
(参考《构建之法》第8章 功能的定位和优先级;第9章 项目经理)
这个软件有很多可以提高的部分,如果你是项目经理,如何提高从而在竞争中胜出?
目前市场上有什么样的产品了?你要设计什么样的功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用 NABCD分析。
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件。