事后诸葛亮会议

beta阶段的postmortem报告

一、 每个成员在beta 阶段的实践和alpha 阶段有何改进?

 

成员一:

学习了将opencv的相关知识,实现图像识别

对软件功能进行优化改进,

由设计者思维逐渐转变为用户导向思维。

成员二:

对窗口交互页面进行优化改进,

项目的代码有了更明确的架构。

成员三:

寻找了训练ai的相关数据,帮助了Beta的服务器的重架构,分工的模块化更强。

成员四:

项目的代码有了更明确的架构,对合作性的要求更高。


二、团队在beta 阶段吸取了那些alpha 阶段的经验教训?

 

1. Alpha的方式是每个人开发自己的部分,并且没有结构设计。最后合并起来非常凌乱。

Beta设计好了整个代码的结构。由相应的人填入各自的部分,最后合并起来比较方便。

2. Beta 采用小组成员的面对面编程,出现问题,现场解决,完成的功能及时的进行合并。

而Alpha阶段采用的是整个队伍在项目阶段快要结束时一起合并,效率不高,不是所有人同时都是有事做的。

3. Alpha中最大的问题是进度很拖沓。Beta其实也有一样的问题,并且也没有很好的控制。

4. 在Beta中,意识到团队成员之间的交流沟通对整个项目的完成效率更重要。Beta中往往要比Alpha花更多的时间沟通交流。

 

三、 12 条敏捷开发的原则中, 团队做得最好和最不好的各列举 2 点。

 

最好的两点:

(1) 在团队内部,最具有效果并且富有效率的传递信息的方法,就是直接一对一的·沟通解决问题。

通过网络的交流,虽然是很方便的的沟通方式,但往往使得人们缺乏动力和激情。面对面的交谈,讨论,能够使工作更有效率,能使交谈的人对项目的需求和架构更加了解。

(2) 围绕比较清楚项目结构的的人来构建项目。
往往我们采用1-2个主要的人来负责架构,这些人清晰整个项目的架构,并且其他的开发者,可以围绕他们的思路进行进一步的开发。由少部分人带动其他的人。

最不好的两点:

(1) 开发阶段中要有持续的开发速度。

由于大家的时间都不是很多,也不是很集中,所以通常是在一段时间突然有了大量的进度。其他时间没有什么进展。

(2) 我们最优先要做的是去了解用户的需求,做出对用户有价值的功能。

应该尽早地去使用自己的软件,从而了解最需要改善的地方。软件工程不仅仅是写代码,其中还涉及很多为人处事的道理需要我们去领悟。

 

四、对照 The Cathedral and the Bazaar (大教堂和集市), 你的团队开发模式是哪一种, 优势/劣势在哪里?

 

我们团队的开发模式在Alpha阶段是大教堂模式。因为在最后发布以前,我们并没有公开的渠道向用户和其他开发者沟通。

在Alpha发布以后,我们得到了一些来自其他组的开发者的反馈,开始重新架构我们的软件。

 

大教堂模式的好处

(1) 需求不太容易变动,目标明确。

(2) 内部的开发者交流比较充分。并且整个源代码,由一个团队管控,比较没有风险。

 

大教堂模式的坏处。

(1) 没有激励去对项目功能进行优化改进,缺少激励。

(2) 没有很好的倾听用户的想法,在功能点的选择取舍上,比较自以为是,要满足大众化的用户需求。

 

文中还提到的以下一点还做得不够好:

保持项目的简单性。设计达到完美的时候,不是无法再增加东西了,而是无法再减少东西了。在以后的项目中,还是需要尽早考虑一些关于结构的问题,应对敏捷开发中需求的变化。

 

在项目开发的过程中,我们团队存在诸多潜在问题。

 

经过改进的用户界面仍然不够友好,没有直接调用电脑摄像头进行对事物拍摄的功能。由于开发团队没有专业的界面美工设计人员,以及没有足够的用户调查和测试。导致做出来的界面并不符合用户预期,使用户体验并不好。我们应该充分借鉴同类图像识别软件的用户界面设计,进行用户调查和测试以便了解用户的需求和反馈。

 

代码规范和文档不当,缺乏编码规范、代码文档以及版本控制工具的使用。造成代码混乱、难以维护和更新。团队接下来将进行代码格式规范。实行一致的编码规范,建立代码文档,明确开发维护用户角色、信息流动、时间表和代码版本。

 

我们团队接下来应该针对智能垃圾分类系统开发中可能出现的问题,在设计和开发过程中需要全方位考虑,并采取相应的解决方案,从而提高软件的质量和用户体验,以满足用户的需求和市场需求。

 

posted @ 2023-05-22 16:30  霍普金斯大学丁真  阅读(9)  评论(0)    收藏  举报