无言以队事后诸葛亮会议
beta阶段的postmortem报告
1. 每个成员在beta 阶段的实践和alpha 阶段有何改进?
成员一:
学习了将数据库挂到云服务器上,实现远程操作数据库
对软件功能进行优化改进,
由设计者思维逐渐转变为用户导向思维。
成员二:
对Android应用的交互页面进行优化改进,
项目的代码有了更明确的架构。
成员三:
Alpha阶段的实验工作,帮助了Beta的服务器的重架构,分工的模块化更强。
成员四:
项目的代码有了更明确的架构,对合作性的要求更高。
2. 团队在beta 阶段吸取了那些alpha 阶段的经验教训?
1. Alpha的方式是每个人开发自己的部分,并且没有结构设计。最后合并起来非常凌乱。
Beta设计好了整个代码的结构。由相应的人填入各自的部分,最后合并起来比较方便。
2. Beta 采用小组成员的面对面编程,出现问题,现场解决,完成的功能及时的进行合并。
而Alpha阶段采用的是整个队伍在项目阶段快要结束时一起合并,效率不高,不是所有人同时都是有事做的。
3. Alpha中最大的问题是进度很拖沓。Beta其实也有一样的问题,并且也没有很好的控制。
5. 在Beta中,意识到团队成员之间的交流沟通对整个项目的完成效率更重要。Beta中往往要比Alpha花更多的时间沟通交流。
3. 12 条敏捷开发的原则中, 团队做得最好和最不好的各列举 2 点。
最好的两点:
(1) 在团队内部,最具有效果并且富有效率的传递信息的方法,就是直接一对一的·沟通解决问题。
通过网络的交流,虽然是很方便的的沟通方式,但往往使得人们缺乏动力和激情。面对面的交谈,讨论,能够使工作更有效率,能使交谈的人对项目的需求和架构更加了解。
(2) 围绕比较清楚项目结构的的人来构建项目。
往往我们采用1-2个主要的人来负责架构,这些人清晰整个项目的架构,并且其他的开发者,可以围绕他们的思路进行进一步的开发。由少部分人带动其他的人。
最不好的两点:
(1) 开发阶段中要有持续的开发速度。
由于大家的时间都不是很多,也不是很集中,所以通常是在一段时间突然有了大量的进度。其他时间没有什么进展。
(2) 我们最优先要做的是去了解用户的需求,做出对用户有价值的功能。
应该尽早地去使用自己的软件,从而了解最需要改善的地方。软件工程不仅仅是写代码,其中还涉及很多为人处事的道理需要我们去领悟。
4. 对照 The Cathedral and the Bazaar (大教堂和集市), 你的团队开发模式是哪一种, 优势/劣势在哪里?
我们团队的开发模式在Alpha阶段是大教堂模式。因为在最后发布以前,我们并没有公开的渠道向用户和其他开发者沟通。
在Alpha发布以后,我们得到了一些来自其他组的开发者的反馈,开始重新架构我们的软件。
大教堂模式的好处
(1) 需求不太容易变动,目标明确。
(2) 内部的开发者交流比较充分。并且整个源代码,由一个团队管控,比较没有风险。
大教堂模式的坏处。
(1) 没有激励去对项目功能进行优化改进,缺少激励。
(2) 没有很好的倾听用户的想法,在功能点的选择取舍上,比较自以为是,要满足大众化的用户需求。
文中还提到的以下一点还做得不够好:
保持项目的简单性。设计达到完美的时候,不是无法再增加东西了,而是无法再减少东西了。
在以后的项目中,还是需要尽早考虑一些关于结构的问题,应对敏捷开发中需求的变化。


在项目开发的过程中,我们团队存在诸多潜在问题。
经过改进的用户界面仍然不够友好。由于开发团队没有专业的界面美工设计人员,以及没有足够的用户调查和测试。导致做出来的界面并不符合用户预期,使用户体验并不好。我们应该充分借鉴同类记账APP的用户界面设计,进行用户调查和测试以便了解用户的需求和反馈。
数据库设计不够合理,团队没有充分考虑应用程序的数据流和数据存储需求,没有建立适当的关系模型和约束条件。我们团队下一步应该进行彻底的数据流分析,建立各组件之间的概念模型,设计出适当的数据库架构,并确保在实现时使用一些数据接口工具来确保数据的完整性和一致性。
代码规范和文档不当,缺乏编码规范、代码文档以及版本控制工具的使用。造成代码混乱、难以维护和更新。团队接下来将进行代码格式规范。实行一致的编码规范,建立代码文档,明确开发维护用户角色、信息流动、时间表和代码版本。
记账应用程序可能涉及用户的个人财务信息,所以必须采取有效的安全措施,以保护用户的数据安全和隐私。保证数据本地化。记账程序通常需要存储数据以便用户进行随时访问,但如何保护数据? 是否进行本地数据存储还是云端存储, 这些都需要慎重考虑。记账 App 应该是直观和易于使用的,因此设计界面非常重要。需要了解用户的需求和习惯,提供易于使用和直观的用户界面。用户反馈是一种宝贵的资源,并且可以帮助开发者不断的改进程序,因此需要开发者重视用户的反馈和体验问题。
我们团队接下来应该采取本地和云存储相结合的方案,保护用户数据安全,同时提供云服务来实现多设备数据同步和共享的功能。采用云服务来实现数据共享和多设备同步,确认好同步逻辑和策略,在多平台之间实现数据无缝同步。采用市场上成熟和流行的UI设计标准进行设计,并借助用户调查和测试,让用户沟通反馈意见,来不断改进并优化用户界面体验。建立完善的数据分析和统计模型,并基于不同用户需求,提供个性化的数据分析和统计报表,以便用户更好的理解和分析数据信息。建立专门的用户体验和反馈机制,并及时收集和反馈用户的意见和反馈,并加以逐步优化和改进。根据市场趋势和用户需求,及时升级和改进软件功能,通过市场分析和市场营销手段来吸引用户并提高服务质量。
我们团队接下来应该针对记账 App 开发中可能出现的问题,在设计和开发过程中需要全方位考虑,并采取相应的解决方案,从而提高软件的质量和用户体验,以满足用户的需求和市场需求。