项目回顾
1.设想和目标
我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们软件要解决校园里同学们之间安全二手交易的问题和失物招领。
是否有充足的时间来做计划?
有充足的时间来做计划,根据小组讨论和pm规划进行任务时间安排
团队在计划阶段是如何解决同事们对于计划的不同意见的?
每日例会进行小组讨论,总结出对项目最合理的计划
用户量、用户对重要功能的接受程度和我们事先的设想一致吗?我们离目标更近了吗?有什么经验教训?
用户量,用户对重要功能的接受程度未达到一致,但离目标接近了,只实现了进本功能,无法实现较好的功能要求
如果历史重来一遍,我们会做什么改进?
对任务时间进行更细致的安排,对人员任务划分要更细致
2.计划
你原计划的工作是否最后都做完了?
都已做完
有没有发现你做了一些事后看来没必要或没多大价值的事?
有一些功能与项目的主要需求无关,如:界面功能过剩
是否每一项任务都有清楚定义和衡量的交付件?
对每一项任务都有清晰的说明
是否项目的整个过程都按照计划进行?
项目整个过程按照阶段划分进行
在计划中有没有留下缓冲区,缓冲区有作用么?
有留下缓冲区,当任务无法按照计划完成时,在缓冲区尽力完成
将来的计划会做什么修改?(例如:缓冲区的定义,加班)
留下充足的缓冲区,避免任务无法完成。
如果历史重来一遍,我们会做什么改进?
对时间安排进行更精致的划分,为难度大的任务留下充足时间
3.资源
我们有足够的资源来完成各项任务么?
有老师以及同学的帮助,和在网上的各种资料
各项任务所需的时间和其他资源是如何估计的,精度如何?
根据任务的难度进行划分,后期更具完成任务时的实际情况在进行精致的划分
用户测试的时间,人力和软件/硬件资源是否足够?
各项资源都足够。
你有没有感到你做的事情可以让别人来做(更有效率)?
有,但也按时完成了任务。在任务分配时,根据组员的实际情况和意见,进行分配
如果历史重来一遍,我们会做什么改进?
会为困难的任务留下更多的缓冲时间和人员分配,以保证任务的完成质量
4.变更管理
每个相关的员工都及时知道了变更的消息?
及时知道,因为我们有任务群,会及时通知
我们采用了什么办法决定“推迟”和“必须实现”的功能?
根据项目的实际需求划分
项目的出口条件(ExitCriteria)有清晰的定义吗?
让需求人查看需求的完善情况
对于可能的变更是否能制定应急计划?
能,每日例会可以及时制定
员工是否能够有效地处理意料之外的工作请求?
可以,可以在网上找资料解决
如果历史重来一遍,我们会做什么改进?
时间更明确的安排
5.设计和实现
设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
确定需求后开始设计。合适的人
设计工作有没有碰到模棱两可的情况,团队是如何解决的?
有,讨论解决
团队是否运用单元测试(unittest),测试驱动的开发(TDD)、UML,或者其他工具来帮助设计和实现?这些工具有效么?
没有
什么功能产生的Bug最多,为什么?
签到功能的Bug最多,因为不会
代码复审(CodeReview)是如何进行的,是否严格执行了代码规范?
由测试人员进行复审,执行了代码规范
如果历史重来一遍,我们会做什么改进?
设计进行改进
6.测试和发布
团队是否有一个测试计划?为什么没有?
有计划,由代码整合人员进行测试
是否进行了正式的验收测试?
没有
团队是否有测试工具来帮助测试?
用夜神模拟器进行测试基本功能
团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
团队没有进行
在发布的过程中发现了哪些意外问题?
没有
我们学到了什么? 如果重来一遍, 我们会做什么改进?
学到了测试计划的重要性,如果重来将安排严谨的测试计划
总结
1没有根据每个人的擅长进行划分
2功能实现不够完善
3.不同意见时经常开会讨论,完善需求