Fork me on GitHub

事后诸葛亮分析

一、设想与目标

1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们的软件原本主要是用来提高广大高校师生学习工作效率,便利学生发展为出发点而开发的。后来发现能力不足,只能作为练手之作。
我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?)?

2.我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?)?
很遗憾,我们努力达成了部分目标,但是仍然有许多目标没有完成。
3.用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?
用户量和事先与想的不太一样,与最开始相比,我们离目标更近了。

二、计划

1.是否有充足的时间来做计划?

2.团队在计划阶段是如何解决同事们对于计划的不同意见的?
大家意见很统一
3.你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
无,因为能力不够。
4.有没有发现你做了一些事后看来没必要或没多大价值的事?
纠结前端的美术
5.是否每一项任务都有清楚定义和衡量的交付件?

6.是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?
否,因为项目成员所需的技术没有达到要求,所以一直是在边学边做,到后面跟不上来了。高估了自己的学习能力。
7.在计划中有没有留下缓冲区,缓冲区有作用么?

8.将来的计划会做什么修改?(例如:缓冲区的定义,加班)
将来无计划。

三、资源

1.我们有足够的资源来完成各项任务么?

  • 人力资源上:只有四个人,其中还有两个人没接触过前后端。任务完成起来难度很大。
  • 开发资源:上网学习还好。
  • 设备资源:设备资源充足。
  • 时间资源:边学习边做项目,时间比较紧。
    2.各项任务所需的时间和其他资源是如何估计的,精度如何?
    大家都没做过项目,时间安排都是脑补的,精度不好。
    3.测试的时间、人力和软件/硬件资源是否足够?对于那些不需要编程的资源(美工设计/文案)是否低估难度?
    人力和软件/硬件资源足够,对于不需要编程的资源也没低估难度。
    4.你有没有感到你做的事情可以让别人来做(更有效率)?
    有。

四、变更管理

1.每个相关的员工都及时知道了变更的消息?
嗯,我们通过微信群来通知大家项目的进展及变动,会有定期的团队会议来汇报项目情况以及讨论项目变更改进。
2.我们采用了什么办法决定“推迟”和“必须实现”的功能?
以项目的开发进度和功能模块来决定。评估功能的重要等级:若这个功能在项目的运行中是必不可少的,就是必需实现;若它可有可无,只是锦上添花的话,则可以作推迟处理。
3.项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?

  • 在输入正常的情况下系统能做出相应的反应,提供相应的功能而不出错,没有较大的bug
  • 各页面间的跳转,接口的进入与连接,页面设计都有较好的逻辑性,连接顺畅不突兀,页面跳转符合预期
    4.对于可能的变更是否能制定应急计划?

    5.员工是否能够有效地处理意料之外的工作请求?

五、设计/实现

1.设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
第一次集体会议的时候大家集体决定。时间也都是大家空闲的时候,耐心的商讨出来,由pm拍板。

2.设计工作有没有碰到模棱两可的情况,团队是如何解决的?
有,把问题在集体会议中提出来,一起讨论解决。

3.团队是否有测试工具来帮助测试?
有使用,效果还可以,基本满足了我们的测试需求。

4.什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?
选课功能BUG最多,因为当时设计的时候不够细心。发布之后没有暂时发现重要的BUG。

5.代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
我们通过使用阿里巴巴的代码规划,同时开发团队在开发的IDE上都安装了这个插件,所以代码大都能按照规范进行。

6.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
我们学到了一个真正的项目的开发流程经过。再重来一遍的话,可以更快的完成开发测试,避免BUG,少走弯路。

六、测试发布

1.团队是否有一个测试计划?为什么没有?
有,在原先的项目安排中有给出了测试计划。

2.是否进行了正式的验收测试?
对几个主流的浏览器的各主要功能进行了逐一验证,都通过了。

3.团队是否有测试工具来帮助测试?
没有,都是由团队测试人员手动测试。原因:产品本身实现的功能不多,手动测试也不是特别麻烦。
4.在发布的过程中发现了哪些意外问题?
无。

5.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
测试对于一个合格的产品来说十分重要,它能发现很多在单独编写一个接口代码时未出现的bug,可以避免糟糕的用户体验以及用户隐私泄露等严重问题。如果之后有较为复杂的程序,我们可以了解一些自动化测试工具来提高测试效率。

七、总结

1.你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
二级。

2.你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
磨合,因为这是团队合作的第一个项目,在这过程中产生了大量的问题,最后呈现的结果也是不尽人意。但同时我们也有了这个项目的经验。

3.你觉得目前最需要改进的一个方面是什么?
这次开发的过程中,总感觉时间不够,东西很多,开发团队的技术水平,开发前需要各个成员自己认真去下功夫精进自己的技术水平,才能推动项目的完成速度和完成质量。

八、团队合照

九、团队成员在Alpha阶段的角色和具体贡献

名字 角色 团队贡献分(总分100) 可验证的贡献
蔡宏洲 RD,Dev,Test 35 后端开发、测试
邱榕涛 RD,Dev,Test 15 整体架构、后端开发、测试
饶祥滨 RD,Test 20 前端开发、测试、博客编写
徐文俊 PM,Test 30 测试,后端开发,产品经理
posted @ 2021-12-12 22:41  Sashiburi  阅读(32)  评论(0编辑  收藏  举报