Beta版本项目展示要求如下:
- 不得使用PPT,展示所用的资料必须发表在博客上(可以有图片、视频等多媒体的内容)。
- 现场演示你们发布的软件。如果是部署在服务器上的软件,必须连接到服务器上进行演示。可以有多个人上台展示,有团队PM牵头。
- 具体的汇报内容包括:介绍你们的项目愿景、你们Beta版本实现了什么功能、你们在M2阶段在软件工程方面学到了什么东西等。
- 评价标准:软件工程的各个环节的质量,实地演示质量,用户数量,是否用了真实的数据,数据量是否达到要求,团队合作等。
Beta版本项目展示大纲
展示用博客的内容可以按照下面的模板来组织:
1) 团队成员的简介和个人博客地址
2) 我们要做软件工程,那就要有一点工程的样子:
团队项目的目标,预期的典型用户,预期的功能描述,预期的用户数量在哪里?
团队的产品如何满足了用户的需求?要看到目标用户使用产品的过程和评价 (视频或者活人上台介绍) ?
事先定义的软件下载量达到了么?为什么没有达到?
团队的成员如何分工协作的?有什么经验教训?
团队如何平衡 时间/质量/资源 争取如期完成任务的?
在产品之外,团队代码的软件工程质量如何?如何用数据来证明?
- 项目的最终代码在哪里?
- 测试用例数目,代码覆盖率数目。
- 运行测试用例得到代码覆盖率的视频录像,(需要现场看到。没有诸如 “我的电脑没有装测试环境”,“文件不全”等等借口)。
- 代码规范在哪里?
- 齐全的文档在哪里?
- 有些项目是在原来的基础上改进的,那么我们团队的软件工程项目质量有什么样的提高?例如,代码覆盖率从原来的x增长到y?
- 原来的项目有些代码都找不到,文档也没有,或者没有最近的代码,你们的项目是如何更好解决这个问题的?明年的同学继续开发这个项目,会不会出现类似的抱怨?如果一个新学生在一台新机器上想编译并运行你的项目, 请问能顺利完成么?有什么样的文档能指导新学生?
- 对于项目的目标用户是一般学生的项目, 你们如何找到学生做需求分析?他们给你什么样的反馈?
- 所有的项目都会收集到用户的数据,请问你们对这类数据做了什么样的分析,这些分析如何验证或推翻了原来的假设? 这些数据如何帮助项目改进软件工程的质量?
3) 团队项目的实际进展(拷贝那些 scrum 过程中的燃尽图即可),发布的功能(拷贝发布文档),在哪里发布了软件(3 – 10 个网址), 用户反馈的截屏。说明在项目管理中,scrum的燃尽图是如何真实反映项目的状态的?或者燃尽图美化了状态?
4) 团队成员在M2的角色和具体贡献:
名字 |
角色 |
具体的, 可衡量的, 可验证的贡献 |
团队贡献分 |
马小哥 |
PM |
写了多少文档/博客/推广活动/多少次用户调查/多少次推广 |
|
牛大哥 |
Dev |
写了多少行代码, 多少注释, 多少文档 |
|
板砖哥 |
Test |
写了多少测试计划, 测试用例, 发现多少bug? 多少bug 被修复了 |
|
… |
|||
不少同学上这个软件工程课,可能抱着打酱油,抱大腿的心态。 既然敢于打酱油,那我们就亮相给大伙看看,把这些情况量化出来,摆在大家面前。 酱油在哪里,大腿在哪里就一目了然。 这样我们的团队贡献分就很好决定了。
5) 所做软件最有特色的功能是什么,请着重介绍一下。活的用户如何从你的软件中获益的,请现场展示。
6) 团队从用户那里得到了什么反馈,有什么样的bug?这是预料之中的还是没想到的?
如果现场评审成员发现了系统崩溃这样明显的bug,但是我们项目小组的测试人员并没有发现这样的bug,那么对每一个bug,这个团队的成绩扣掉10分,扣到0 分后,继续扣,团队项目得分可以为负分。
7) 团队和M1相比,在软件工程方面有什么进步?希望看到小组 M2 postmortem的博客。
8) 总结,整个团队在Beta阶段学到了什么,对软件工程的教育,对这个具体的课程有什么批评建议?