M2事后分析报告
设想和目标
1、我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
这次M2预想的就是解决3个主要问题,1:增加查询自己购买或者发布记录的功能,2:优化
所有的网络连接框架,3:重新部署服务器,由于M1阶段使用的服务器带宽不足,经常出现访问
崩溃现象,所以M2我们使用了学校提供的服务器并进行重新部署。我们的典型用户就是同校的大学生。
2、是否有充足的时间来做计划?
有时间来做计划,但有的方面完成的不是很好。
3、团队在计划阶段是如何解决同事们对于计划的不同意见的?
一般都是听从开发人员的意见。
计划
1、你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
1:增加查询自己购买或者发布记录的功能,目前这一功能是完成了的;2:优化
所有的网络连接框架,这一功能也已经完成;3:重新部署服务器,由于M1阶段使用的服务器带宽不足,经常
出现访问崩溃现象,所以M2我们使用了学校提供的服务器并进行重新部署。但效果不是很好,偶尔还是会出
现崩溃,具体原因还没有弄清楚。
2、有没有发现你做了一些事后看来没必要或没多大价值的事?
这个基本没有,因为我们做的都是事先规划好的必须要做的,按照目标计划进行,基本没有什么无用的工作。
3、是否每一项任务都有清楚定义和衡量的交付件?
这个没有太明确的标准,对于任务只是规划好了基本目标功能,我们都是在实现基本功能之后,由添加或者删减
一些小的方面的功能来完善的。
4、是否项目的整个过程都按照计划进行?
没有,项目的完成情况比预想的进度要慢很多,本来以为M2没有什么太复杂的功能,本以为会很快完成,但由于
这学期的编译和数据库大作业,进度一直走走停停,拖得很晚。
5、在计划中有没有留下缓冲区,缓冲区有作用么?
有缓冲区,主要是各人进度不一,有些模块不断地有一些小问题,花了很长时间才能做好。
资源
1、我们有足够的资源来完成各项任务么?
大部分是有的,但也存在没有的,比如说我们预想做一个注册进行短信验证的功能,但后来了解到这一块都是
收费的,而且需要一次性购买很多条,性价比不高,而且我们的软件目前没有什么盈利功能,就放弃了。
2、各项任务所需的时间和其他资源是如何估计的,精度如何?
基本上都是粗略的估计了一下,因为本身工作量不是很大,所以没有进行细致的预估。
3、用户测试的时间,人力和软件/硬件资源是否足够?
人力、时间是够的,我们有专门的测试人员,硬件我们是通过云测软件对不听机型进行测试的。
4、你有没有感到你做的事情可以让别人来做(更有效率)?
确实有,比如美工设计,因为我们没有人做设计工作,所以一般都是开发人员自己决定的。
变更管理
1、每个相关的员工都及时知道了变更的消息?
由于大家距离都比较近,所以消息变更还是及时知道了的。
2、我们采用了什么办法决定“推迟”和“必须实现”的功能?
推迟的功能是由于某些硬件资源没有到位,比如服务器暂时无法使用,必须实现的功能是软件本身所应具备的核心功
能,影响软件正常使用的都是必须实现的功能,这是由软件本身决定的。
3、项目的出口条件(Exit Criteria)是否得到清晰的定义?
这个大家都不是很了解,所以也没有什么清晰的定义
4、对于可能的变更是否能制定应急计划?
没有什么应急计划,只是按照已有成员按部就班的推进工作
5、员工是否能够有效地处理意料之外的工作请求?
请求一般都是交给pm处理的,所以其他员工的压力相对来说小一点
设计/实现
1、设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
设计师由开发人员在具体实现时进行的,没有专门的设计人员
2、设计工作有没有碰到模棱两可的情况,团队是如何解决的?
这个碰到过很多,往往大家针对某一问题都有着不同的见解,这个时候一般都是由开发人员根据大家的意见,综合技术
难点来决定最后的实施方案。
3、团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些
工具有效么?
运用了单元测试,整体看来bug不多。其他的工具除了使用云测来检测软件兼容性外基本没有使用
4、什么功能产生的Bug最多,为什么?
聊天功能吧,这个涉及多个页面的交互,还有和服务器以及本地文件的数据交互,所以bug比较多。
5、代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
代码复审进行的不是很规范,基本上都是由设计人员大致检查一下。
测试/发布
1、团队是否有一个测试计划?为什么没有?
期初没有制定测试计划,后来在老师的建议下考虑到软件的质量保证问题制定了测试计划,
2、是否进行了正式的验收测试?
进行了验收测试,由PM最后对软件进行统一的验收测试。
3、团队是否有测试工具来帮助测试?
有,比如说上面提到过的云测
4、团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
这个一般是由我们团队的测试和推广人员通过对使用软件的同学的询问调查来测量并跟踪软件的效能的,及时的从使
用者那里得到相关信息的反馈。目前来看这些测试工作是有用的,帮我们发现了一些bug,如服务器异常,及页面间传
递不及时。至于改进,我们认为应该话更多的时间在单元测试上,确保单元测试有足够高的覆盖率,从而及早的发现
bug并修复。
5、在发布的过程中发现了哪些意外问题?
发布过程中没有遇到意外问题