第一次迭代开发心得
设想和目标
1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
用户可以通过这款软件拍摄短视频,形成自己的作品;还可以浏览其他用户的作品,并点赞、评论、私信等等。
因是一款手机软件,所以无典型用户和典型场景
2. 是否有充足的时间来做计划?
因项目可以对标抖音APP,需求极其明确,所以有充足的时间来做计划。
3. 团队在计划阶段是如何解决同事们对于计划的不同意见的?
PM组织开会,组员之间良好沟通解决的。
计划
1. 你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
大部分都做完了,因课程压力,少数难度较大的功能未实现。其次,因阿里云域名备份迟迟没有批准,视频上传功能未能实现。
2. 有没有发现你做了一些事后看来没必要或没多大价值的事?
域名未备份就做视频上传功能,浪费了很多时间,归根结底是自己开发知识储备不够。
3. 是否每一项任务都有清楚定义和衡量的交付件?
每周一PM开会制定本周计划。
4. 是否项目的整个过程都按照计划进行?
没有完全按照计划进行,计划总是在不断调整。
因项目实际测试为开发人员的手机,手机型号和sdk版本的不同会导致运行结果的差异,导致了很多意想不到的问题。
5. 在计划中有没有留下缓冲区,缓冲区有作用么?
有缓冲区。阿尔法版本迭代开发的前后一段时间主要是用来学习开发知识,为后续开发不做无头苍蝇,提高效率做准备。
6. 将来的计划会做什么修改?(例如:缓冲区的定义,加班)
贝塔版本任务更多更难,缓冲区要减少,可能要熬夜肝项目。
资源
1. 我们有足够的资源来完成各项任务么?
域名备案迟迟没有批准,导致阿尔法版本没有视频的在线播放。课程压力也导致时间资源不足。
2. 各项任务所需的时间和其他资源是如何估计的,精度如何?
任务所需时间估计有偏差,资源估计可从学长学姐那里得知。
3. 用户测试的时间,人力和软件/硬件资源是否足够?
实际测试为开发人员的手机,测试时间充足。
人力资源不足,项目既有android端又有web。
软件资源不足,域名备案迟迟未批准。
4. 你有没有感到你做的事情可以让别人来做(更有效率)?
android部分是我和PM负责,如果PM有足够的时间来完成我的任务可能会更有效率。
变更管理
1. 每个相关的员工都及时知道了变更的消息?
任何变更消息都会发到项目群里并@全体成员,通知还是比较及时的。
2. 我们采用了什么办法决定“推迟”和“必须实现”的功能?
对标抖音APP,基本的视频播放和一些社交功能必须实现。导师附加的特殊用户需求可推迟。
3. 项目的出口条件(Exit Criteria)是否得到清晰的定义?
基本的视频播放和一些社交功能必须实现。尽量做到用户体验良好。
4. 对于可能的变更是否能制定应急计划?
否。但小组会开会讨论对变更做出计划的调整。
5. 员工是否能够有效地处理意料之外的工作请求?
肝能解决大部分问题。
设计/实现
1. 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
对标抖音APP加上导师的意见。
2. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?
有,虽然是对标抖音APP,但一些细节可能忽略了,通过小组开会讨论和请教老师解决的。
3. 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?
使用了UML,它使整个项目的结构和流程更清晰。
4. 什么功能产生的Bug最多,为什么?
因实际测试使用的是开发人员的手机,手机的机型和sdk版本的不同还会导致android代码的不同,因而整合代码的时候产生了很多bug。
5. 代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
采用了项目小组互相审查的形式。查出问题后我们对不规范处也进行了修复。
测试/发布
1. 团队是否有一个测试计划?为什么没有?
采用真机测试,实际用到不同品牌的智能手机。
2. 是否进行了正式的验收测试?
是。阿尔法迭代开发版本的验收。
3. 团队是否有测试工具来帮助测试?
不同品牌的智能手机。
4. 团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
真机测试方便快捷。后期应该在更多手机上测试。
5. 在发布的过程中发现了哪些意外问题?
手机的机型和sdk版本的不同还会导致android代码的不同,整合代码的时候遇到了很多问题。
总结
1. 你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
属于CMMI一级,完成级。
2. 你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
规范阶段。
3. 你觉得团队在这个里程碑相比前一个里程碑有什么改进?
效率更高了。
4. 你觉得目前最需要改进的一个方面是什么?
代码规范性。
5. 对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例。
在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。因此我们小组每周都会进行至少一次例会,把开发过程中遇到的问题提出来进行面对面沟通交流,并分配好本周迭代开发任务。
分工明确。每部分都严格执行计划,很好的完成阿尔法版本验收。
浙公网安备 33010602011771号