【炼狱系统小组】事后诸葛亮
一、设想与目标
1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们的软件主要是用来解决,帮同学查课程成绩,查体测成绩等问题的需求。我觉得我们对系统内的主要功能,的目标还是很明确的,有比较强的实际应用需求,因为同学们在平常选课和查体测成绩的时候都异常的困难,所以我们才有这个想法,去做这个小的系统。一方面就满足自己的需求,也满足同学们的需求。
2.是否有充足的时间来做计划?
因为大家对开发的流程等不大熟悉,在计划上做的一般。
3.团队在计划阶段是如何解决成员对于计划的不同意见的?
大家商量讨论,投票决定。
4.用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?
虽然上线了,但是用户量还没达到。我们离目标还是有点距离,在未来可能会对它进行改进发布。
有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
确定好每个人的工作,在前期做好所有事情的规划,尽量的把计划做的完美一点,在用户需求上也尽可能的多去调查。当然这是马后炮了,只有经历过团队开发才知道规划这方面有这么多不足之处。
二、计划
1.你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
按照最初的设想,基本上都完成了,而且也成功上线了,但还是有一部份的功能未实现。
为什么:时间上有点不足,技术上有点困难
2.有没有发现你做了一些事后看来没必要或没多大价值的事?
暂时没有,因为大家都要集中精力共同开发。
3.是否每一项任务都有清楚定义和衡量的交付件?
基本上是,除了一些比较模糊、难以划分的任务。
4.是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?
基本上是按照计划进行,项目制作得还算顺利,但是最终调试的时候遇到一些奇奇怪怪的bugs,不过都顺利解决了,都是意外。
5.在计划中有没有留下缓冲区,缓冲区有作用么?
有预留,在每个小任务的时候,做计划都把时间做的宽裕点,可以有效保证任务按时完成。
三、资源
1.我们有足够的资源来完成各项任务么?
有点困难,我们组比较少编程能力很高的成员,勉强能完成项目,也学到了很多。
2.各项任务所需的时间和其他资源是如何估计的,精度如何?
感觉一下,然后比感觉的在宽裕一点,但精度不高。
3.有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
希望能有更多编程能力很高的大佬来支持,能更快地从技术上和时间上突破。
四、变更管理
1. 每个相关的员工都及时知道了变更的消息?
是,我们有一个微信的群来通知大家项目的进展及变动,而且我们每天线上线下讨论的时间也不少。
2. 我们采用了什么办法决定“推迟”和“必须实现”的功能?
以项目的开发进度和功能模块来决定。若这个功能在项目的运行中是必不可少的,就是必需实现;若它可有可无,只是锦上添花的话,则可以作推迟处理。
3. 项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?
大致定义为以下几点
- 各功能正常运行
- 无突然崩溃、卡顿等奇奇怪怪的bug
- 常用模块没有问题
- 能长时间运行无bug。
- 响应时间短
- 不会莫名的出现看不懂的操做链接
4. 对于可能的变更是否能制定应急计划?
有点难,我们的对较少编程能力很高的成员,对应急的事情要多方讨论互相查找资料,但是,我们做的计划多有宽裕,项目难度不是很大,应急计划相对来说不是很重要,当然这也是我们的弱点。
5. 员工是否能够有效地处理意料之外的工作请求?
能。
五、设计/实现
1. 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
在最初的集体会议中就着手准备设计的工作了,大家共同商讨决定,还是挺合适的,每天都有线上的小会,一起讨论计划。
2. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?
没有,虽然我们的项目简单,但我们的目标很明确。
3. 团队是否有测试工具来帮助测试?
有使用,它们的效果还很好,但是没有大规模地进行,因为我们采用边测试边开发的思想,尽最大化程度地节省测试,而且我们最后时间似乎不大够,但最后结果还是令人满意的。
4. 什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?
相对来说,每个小功能的Bug多差不多,没有什么特别重要的Bug,但是在最后功能一体的时候,就有一些奇怪的Bug出来,是设计的时候没有想到的。
5.代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
由于我们的项目比较小,我们没有这一块的功能。
6.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
再早一点干活会更好……,再加一些大佬会更好
六、测试/发布
1. 团队是否有一个测试计划?为什么没有?
有
2. 是否进行了正式的验收测试?
对各大浏览器都进行了主要功能进行了逐一验证,都通过了。
3. 团队是否有测试工具来帮助测试?
没有,都是手动一个一个地测试的,因为这个程序的功能不多,量不高,所以这样测试还能令人接受。对于以后的改进,我认为我们需要学习至少一种自动化测试工具,提高效率。
4. 在发布的过程中发现了哪些意外问题?
没有,比较顺利。
5.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
测试对于程序来说还是很重要的,它可以发现很多编写代码中暂时未出现的bugs,我们未来还要继续学习测试相关的手段或方法,若下次还有这种项目,可以使用自动化测试手段来提高效率。
七、总结
1. 你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
二级
2. 你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
萌芽阶段,还是有很多很多很多需要学习的地方。
3. 你觉得目前最需要改进的一个方面是什么?
对项目的看法以及团队项目的流程,这次开发的过程中,总感觉时间不够,要自学的东西很多,程序能跑起来已经很不错了。我们还需要用一种工程的视角来看待这个大作业,希望以后做得更好,提交效率。
八、团队成员
成员 | 学号 | 职责 | 角色贡献分(10分满) |
---|---|---|---|
陈观汇 | 3118005267 | 测试、撰写博客 | 7.5 |
黄靖 | 3118005275 | 前端开发、测试 | 7 |
朱长江 | 3118005303 | 后台开发、测试、撰写博客 | 9 |
阿布都外力.肉孜 | 3118005266 | 前端开发、测试 | 7 |
甄海辉 | 3118005300 | 后台开发、测试 | 9 |
邓佩昌 | 3118005270 | 测试、撰写博客 |
7 |