M1 工作总结
现代软件工程 项目Postmortem
设想和目标
1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们的软件主要做的是serch功能,上传下载,定义的清晰,分工明确,我们之前画过用例图和类图,进行分析,有较为清晰地描述。
2. 是否有充足的时间来做计划?
只有十天工程时间,计划时间是比较短的。但是我们在工程中不断完善这个计划。
3. 团队在计划阶段是如何解决同事们对于计划的不同意见的?
协商民主投票解决。
如果历史重来一遍, 我们会做什么改进?
我们会重点分析好客户的需求,做好前期的准备工作,增加测试时间,测试压力规模。
计划
1. 你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
都做完了。
2. 有没有发现你做了一些事后看来没必要或没多大价值的事?
比较少有这样的事,前期分工比较明确,对工作的认识比较清楚,所以没做什么无用功。
3. 是否每一项任务都有清楚定义和衡量的交付条件?
有些有,有些没有,比如serch部分衡量就比较模糊,上传下载部分的定义和衡量的交付条件就比较明确。
4. 是否项目的整个过程都按照计划进行?
是
5. 在计划中有没有留下缓冲区,缓冲区有作用么?
有,有一天的缓冲时间,最后用来测试和修复一些漏洞。
6. 将来的计划会做什么修改?(例如:缓冲区的定义,加班)
将来会抓紧工作,争取多留一些缓冲时间,因为软件漏洞可能比较多。
如果历史重来一遍, 我们会做什么改进?
其实这次计划的已经不错了,时间安排的比较合理,下次主要应该改进缓冲时间,留出大量时间测试。
资源
1. 我们有足够的资源来完成各项任务么?
没有,我们很多测试数据是自己编的,但人手是够用的。
2. 各项任务所需的时间和其他资源是如何估计的,精度如何?
对任务时间的判断是比较准确的,误差1小时左右,对资源判断误差较大。
3. 用户测试的时间,人力和软件/硬件资源是否足够?
硬件是足够的,时间不够,人力不够,软件是够的。
4. 你有没有感到你做的事情可以让别人来做(更有效率)?
没有。
如果历史重来一遍, 我们会做什么改进?
与上组piepline组协作好,让他们给我们更多的测试数据。
变更管理
1. 每个相关的员工都及时知道了变更的消息?
是,我们每天都开项目会议组长发布最新消息。
2. 我们采用了什么办法决定“推迟”和“必须实现”的功能?
以工作的重要性决定推迟和必须实现,与项目关系不大的功能推迟,关系密切的列为必须实现。
3. 项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?
功能完善,bug少
4. 对于可能的变更是否能制定应急计划?
能
5. 员工是否能够有效地处理意料之外的工作请求?
可以
如果历史重来一遍, 我们会做什么改进?
注重开会的效率,更合理的分配工作
设计/实现
1. 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
陈柏雄是设计员,我们认为他是合适的人员。设计时间也是项目开始时,比较合适。
2. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?
有,协商解决
3. 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?
uml有用到,其他的太复杂,没用学会用
4. 什么功能产生的Bug最多,为什么?
serch功能,因为它的步骤最多,代码量最大,功能复杂。
5. 代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
没有严格是代码规范,但组员们的风格都比较好,都有注释,缩进。
如果历史重来一遍, 我们会做什么改进?
更好的设计接口,规范代码
测试/发布
1. 团队是否有一个测试计划?为什么没有?
有测试计划
2. 是否进行了正式的验收测试?
没有
3. 团队是否有测试工具来帮助测试?
没有,完全自己测试
4. 团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
主要看搜索时间来判断功能的效率,有用,应该再快一点。。。
5. 在发布的过程中发现了哪些意外问题?
还没有跟其他组整合好,所以还没有正式发布
如果历史重来一遍, 我们会做什么改进?
做好测试计划,用好的测试软件来帮助测试。
1) 对比敏捷的原则, 你觉得你们小组做得最好的是什么?
计划是随着项目进度而不断变化的,从而更加适应用户的要求
2) 什么是在下个阶段 m2 要改进的地方? 越具体越好。
m2阶段换了项目,目前正在研究改进方法。
转载于:https://www.cnblogs.com/DOOM-scse/archive/2012/11/26/2788776.html