【混子小分队】事后诸葛亮

一、设想与目标

1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?

我们的软件主要是用来解决人们的倾诉情感方面的需求;我觉得我们对典型用户和典型场景描述的较为清楚,有比较强烈的实际应用需求,因为大家生活的过程中容易受到来自学习、生活、工作等各方面压力的影响,一个简约的倾诉平台更利于用户接受;具体的描述可以参考需求规格说明书

2.是否有充足的时间来做计划?

差不多,但是因为大家对开发的流程等不大熟悉,所以还是略有延误。

3.团队在计划阶段是如何解决成员对于计划的不同意见的?

听队长的。

4.用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?

虽然上线了,但是用户量还没达到。但是我们有特意邀请同学体验一下我们上线的小程序,与我们事先预想一致。我们离目标还是有点距离,但我们对它的前景很看好,在未来可能会对它进行改进发布。

有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
确定好每个人的工作,在前期做好所有事情的规划。当然这是马后炮了,只有经历过团队开发才知道规划这方面有这么多不足之处。

二、计划

1.你原计划的工作是否最后都做完了? 如果有没做完的,为什么?

按照最初的设想,基本上都完成了,而且也成功上线了。

2.有没有发现你做了一些事后看来没必要或没多大价值的事?

暂时没有,因为大家都要集中精力共同开发。

3.是否每一项任务都有清楚定义和衡量的交付件?

基本上是,除了一些比较模糊、难以划分的任务。

4.是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?

基本上是按照计划进行,项目制作得还算顺利,唯一没有想到的是后面调试的时候遇到一些奇奇怪怪的bugs,不过都顺利解决了,都是意外。

5.在计划中有没有留下缓冲区,缓冲区有作用么?

有预留,比如将ddl的时间自主地前移,可以有效保证任务按时完成。

三、资源

1.我们有足够的资源来完成各项任务么?

还是可以的,我们组内有编程能力很高的成员,项目的完成不是问题,只是大家的经验不足。

2.各项任务所需的时间和其他资源是如何估计的,精度如何?

感觉一下,精度不高。

3.有什么经验教训? 如果历史重来一遍, 我们会做什么改进?

希望能有更多dl来支持,能更快地从技术上突破。

四、变更管理

1. 每个相关的员工都及时知道了变更的消息?

是,我们有一个微信的群来通知大家项目的进展及变动,同时在github上大家进主页的时候也会看到团队项目的动态变化。

2. 我们采用了什么办法决定“推迟”和“必须实现”的功能?

以项目的开发进度和功能模块来决定。若这个功能在项目的运行中是必不可少的,就是必需实现;若它可有可无,只是锦上添花的话,则可以作推迟处理。

3. 项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?

大致定义为以下几点

  • 各功能正常运行
  • 无突然崩溃、卡顿等奇奇怪怪的bug
  • 常用模块没有问题
  • 能长时间运行无bug。

4. 对于可能的变更是否能制定应急计划?

是的,比如我们留下了缓冲区,可以在紧急情况下获得更多时间、还有多个多技术型成员,可以在应急情况下及时处理问题。

5. 员工是否能够有效地处理意料之外的工作请求?

是的。

五、设计/实现

1. 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?

在最初的集体会议中就着手准备设计的工作了,大家共同商讨决定,还是挺合适的,如果能再早一点就好了。

2. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?

有,我们先以“最低要求”来实现,并且记录本次问题,在项目后期再对这些情况作进一步处理,完善它们。

3. 团队是否有测试工具来帮助测试?

有使用,它们的效果还很好,但是没有大规模地进行,因为我们采用边测试边开发的思想,尽最大化程度地节省测试,而且我们最后时间似乎不大够,但最后结果还是令人满意的。

4. 什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?

在我们这个项目中,收、发信的过程容易出现bug,因为它是核心、并且是常常使用的模块。项目构建中我们没有以一种大局的观念来进行项目的开发,在前后端等接合的地方容易出现问题。

5.代码复审(Code Review)是如何进行的,是否严格执行了代码规范?

我们有使用阿里巴巴的代码规划,大家在开发的IDE上都安装了这个插件,所以代码大都能按照规范进行。

6.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

再早一点干活会更好……

六、测试/发布

1. 团队是否有一个测试计划?为什么没有?

2. 是否进行了正式的验收测试?

对安卓机、苹果机的各主要功能进行了逐一验证,都通过了。

3. 团队是否有测试工具来帮助测试?

没有,都是手动一个一个地测试的,因为这个程序的功能不多,量不高,所以这样测试还能令人接受。对于以后的改进,我认为我们需要学习至少一种自动化测试工具,提高效率。

4. 在发布的过程中发现了哪些意外问题?

小程序上线的时候需要配置域名,并且还要配置SSL,幸好我们小组有成员购买了域名,顺利解决,成功上线。

5.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

测试对于程序来说还是很重要的,它可以发现很多编写代码中暂时未出现的bugs,我们未来还要继续学习测试相关的手段或方法,若下次还有这种项目,可以使用自动化测试手段来提高效率。

七、总结

1. 你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?

二级

2. 你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?

萌芽阶段,还是有很多很多很多需要学习的地方。

3. 你觉得目前最需要改进的一个方面是什么?

对项目的看法以及团队项目的流程,这次开发的过程中,总感觉时间不够,东西很多,还有很多bug,程序能跑起来已经很不错了。我们还需要用一种工程的视角来看待这个大作业,希望以后做得更好,提交效率。

posted @ 2020-11-28 23:45  ゛魚生  阅读(226)  评论(0编辑  收藏  举报