第一次迭代开发心得

设想和目标

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. 对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例。

在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈。因此我们小组每周都会进行至少一次例会,把开发过程中遇到的问题提出来进行面对面沟通交流,并分配好本周迭代开发任务。

分工明确。每部分都严格执行计划,很好的完成阿尔法版本验收。

posted on 2018-12-09 22:21  沐弦  阅读(111)  评论(1)    收藏  举报

导航