信息项 | 内容 |
---|---|
课程名称 | 广工计院计科34班软工 |
作业要求位置 | https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13236 |
队名:民族大团结队
团队成员:
姓名 | 学号 |
---|---|
张汉洁(组长) | 3222004598 |
张逸程 | 3122004589 |
杨富国 | 3122004587 |
萨姆哈尔·艾得力 | 3122004581 |
会议图片
一、项目总结与反思
1. 设想和目标
软件要解决的问题:我们的软件旨在提供一个高效、准确的成绩管理和绩点计算平台,方便学生查询成绩、老师录入成绩以及管理员管理用户权限。
是否定义得很清楚:通过详细的用户需求分析,我们明确了不同用户群体的需求,并制定了清晰的功能列表。
典型用户和典型场景:详细描述了学生、老师和管理员的使用场景,确保功能设计符合实际需求。
2. 我们达到目标了吗?
原计划的功能实现情况:基本实现了所有预定功能,如成绩录入、查询、绩点计算等。
交付时间:按时完成了Alpha版本的发布。
用户数量和接受度:由于是内部测试,用户数量有限,但反馈积极。
经验教训:在多用户并发处理和排序功能上遇到了一些挑战,这些问题将在后续版本中改进。
3. 和上一个阶段相比,团队软件工程的质量提高了么?
提高的地方:
Bug修复率显著提升,成功解决了多个关键问题。
功能覆盖率更高,实现了更多的预定功能。
用户体验有所改善,界面更加友好。
数据同步和一致性得到了优化。
具体提高多少:Bug修复率达到100%,功能覆盖率达到了90%以上。
衡量标准:通过Bug数量、功能覆盖率、性能测试结果等定量指标,以及用户反馈等定性指标进行衡量。
4. 用户量及对重要功能的接受程度
用户量:由于是内部测试,用户数量有限。
接受程度:用户对核心功能的接受度较高,特别是成绩查询和录入功能。
与预期对比:整体符合预期,但在用户体验方面仍有提升空间。
二、计划
1. 是否有充足的时间来做计划?
时间安排:总体上有足够的时间进行规划,但在某些阶段时间较为紧张。
2. 计划阶段如何解决不同意见?
沟通机制:通过每日站会和定期进度汇报,确保信息透明,及时解决问题。
3. 原计划的工作是否最后都做完了?
完成情况:大部分工作按计划完成,部分功能(如排序问题)推迟到下一版本。
未完成原因:时间和资源有限,优先处理了关键问题。
4. 发现做了不需要或没价值的事吗?
发现情况:没有发现明显不必要的工作,但可以进一步优化任务分配,避免重复劳动。
5. 每一项任务是否有清楚定义和衡量的交付件?
任务定义:每项任务都有明确的交付标准和验收条件。
6. 项目过程是否按照计划进行?
实际情况:基本按照计划进行,但在多用户并发处理和排序功能上遇到了一些挑战。
意外情况:及时调整计划,确保项目顺利推进。
7. 缓冲区的作用?
缓冲区设置:设置了适当的缓冲区,确保在遇到问题时有足够的时间应对。
作用效果:缓冲区发挥了重要作用,帮助团队应对了一些突发问题。
8. 将来的计划修改?
改进建议:在未来的计划中,增加更多风险评估和应急预案,确保项目更加稳健。
三、资源
1. 是否有足够的资源来完成各项任务?
资源情况:总体资源充足,但在某些阶段需要额外支持。
2. 时间和其他资源的估计精度?
估计精度:大多数任务的时间估计较为准确,但在复杂功能上存在偏差。
3. 测试资源是否足够?
测试资源:测试资源基本满足需求,但在自动化测试方面可以进一步加强。
4. 工作效率提升建议?
改进建议:合理分配任务,避免重复劳动;引入代码审查机制,提升代码质量。
四、变更管理
1. 变更通知是否及时?
通知机制:通过即时通讯工具和邮件通知,确保变更信息及时传达。
2. 如何决定“推迟”和“必须实现”的功能?
决策机制:根据项目的优先级和资源情况,由项目经理和核心成员共同决定。
3. 出口条件是否清晰定义?
出口条件:明确了所有功能完备、现有关键Bug修复、测试人员测试完所有功能等出口条件。
五、设计/实现
1. 设计工作的时机?
设计时机:在开发前进行了详细的设计工作,确保每个功能都有明确的设计文档。
2. 设计碰到模棱两可的情况如何解决?
解决方案:通过讨论和参考最佳实践,确保设计决策的合理性。
3. 使用了哪些工具来帮助设计和实现?
工具使用:使用了UML、TDD、单元测试等工具,提升了设计和实现的质量。
4. 什么功能产生的Bug最多?
Bug最多的功能:排序功能产生了较多Bug,主要原因是需求不够明确。
5. 代码复审如何进行?
代码复审:定期进行代码复审,确保代码质量和规范性。
六、测试/发布
- 是否有测试计划?
测试计划:制定了详细的测试计划,确保每个功能都经过充分测试。 - 是否进行了正式的验收测试?
验收测试:进行了正式的验收测试,确保系统符合预期。 - 测试工具的应用?
测试工具:使用了自动化测试工具,减少了手动测试的工作量。 - 测量并跟踪软件效能?
效能测量:通过性能测试工具,确保系统的响应速度和稳定性。 - 发布过程中发现的问题?
发布问题:发布过程中遇到了一些配置问题,但已及时解决。
七、团队的角色、管理与合作
- 角色确定是否合理?
角色确定:每个成员的角色和职责明确,确保了项目的顺利推进。 - 团队成员之间是否有互相帮助?
互相帮助:团队成员之间互相帮助,形成了良好的协作氛围。 - 解决项目管理和合作问题的方式?
问题解决:通过定期会议和即时通讯工具,及时解决问题。
八、总结与展望
- 当前状态属于哪个档次?
当前状态:我们认为团队目前处于CMM/CMMI的“规范”阶段,各项工作已经逐步规范化。 - 最需要改进的一个方面?
最需改进:在未来的项目中,我们需要进一步优化测试流程,引入更多自动化测试工具,提升测试效率和准确性。 - 对照敏捷开发的原则,做得最好的是哪些?
做得最好:团队在沟通、迭代开发和用户反馈方面做得较好,确保了项目的顺利推进。 - 下一阶段如何提高软件工程的质量?
提高措施:
代码管理:引入更严格的代码审查机制,确保代码质量和安全性。
架构优化:通过重构等方法提升程序架构的质量,确保系统的稳定性和扩展性。
工具应用:继续引入更多先进的开发和测试工具,提升开发效率。
项目管理:制定更详细的项目计划和风险管理策略,确保项目更加稳健。
九、团队贡献分
成员 | 贡献分 | 贡献理由 |
---|---|---|
张汉洁 | 25 | 负责前端开发、任务分配和监督 |
张逸程 | 20 | 负责前后端交互、完成了多个界面设计、用户体验优化较好 |
杨富国 | 20 | 负责后端开发、包括数据库的管理、技术贡献大 |
萨姆哈尔·艾得力 | 20 | 负责后端开发,并且书写开发文档,但对时间管理有点欠缺 |