事后诸葛亮分析报告
1、作业概述
这个作业属于哪个课程 | 软件工程-计科21级12班-计算机学院-广东工业大学 |
---|---|
这个作业要求在哪里 | 团队作业6——复审与事后分析-计科21级12班 |
这个作业的目标 | 事后诸葛亮分析报告 |
GitHub团队仓库: jiajia-chicken
团队成员:
成员 | 学号 |
---|---|
林桂旭 | 3121004830 |
刘升嘉 | 3121004833 |
谭艺豪 | 3121004837 |
陈泽瀚 | 3121004818 |
梁昊东 | 3121005000 |
一、设想与目标
1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
- 合同管理系统旨在解决企业合同管理过程中的繁琐问题,典型用户包括企业的合同管理员以及合作企业和客户。
2、用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?
- 基本一致,目标基本实现
3、有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
- 对用户需求应该更加实际,解决重要功能、基础功能在先。
- 团队之间协作要更加同步。
二、计划
1、是否有充足的时间来做计划?
- 有,减去计划中繁琐及无用的部分,提高实际效率
2、团队在计划阶段是如何解决成员对于计划的不同意见的?
- 取其精华,去其糟粕。
3、 你原计划的工作是否最后都做完了? 如果有没做完的,为什么?
- 全完成
4、有没有发现你做了一些事后看来没必要或没多大价值的事?
- 有,太多博客园,消耗开发时间。且太多不需要的步骤。很多可以口头解决。
5、是否每一项任务都有清楚定义和衡量的交付件?
- 有,项目的任务细分为每个模块和每个version,模块从选择、数据集、训练、优化、测试多个方面,都有具体的计划和分配,所以每次交付都是确保质量的交付
6、是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?
- 基本上按照计划进行。没有值得记忆的意外,没有可记录风险。
7、在计划中有没有留下缓冲区,缓冲区有作用么?
- 当然,写博客园以及改进项目的不足。
8、将来的计划会做什么修改?
- 将来的计划会在任务的时间设定上做修改,因为已经进入了考试月,所以需要设置更多的缓冲区,但是如果越过缓冲区还是没完成任务,就放弃
9、我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
- 优化人员配置,增加博客园写手😊😊😊
- 后端开发需要增测试时间
三、资源
1、我们有足够的资源来完成各项任务么?
- 没有,博客园真多😊😊😊,其他都有足够资源。
2、各项任务所需的时间和其他资源是如何估计的,精度如何?
- 开发经验缺少,都是靠开发人员的经验预估开发时间,将任务细分,精度不是特别高
3、测试的时间、人力和软件/硬件资源是否足够?对于那些不需要编程的资源(美工设计/文案)是否低估难度?
- 足够
- 是
4、你有没有感到你做的事情可以让别人来做(更有效率)?
- 没有,各司其职即可。
5、有什么经验教训?如果历史重来一遍,我们会做什么改进?
- 有,目前无需改进
四、变更管理
1、每个相关的员工都及时知道了变更的消息?
- 有
2、我们采用了什么办法决定“推迟”和“必须实现”的功能?
- 队员反馈,队长决定
3、项目的出口条件(Exit Criteria - 什么叫“做好了”) 有清晰的定义么?
- 有
- 测试中发现的BUG得到解决。
- 不同服务器都可使用
- 核心功能正常。
4、对于可能的变更是否能指定应急计划?
- 能
5、员工是否能有效地处理意料之外的工作请求?
- 能
6、我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
- 任务和更改的及时通知是非常重要的,如果重来一遍,会提前确保任务不需要修改,避免临时的加改对项目开发进度的拖延
五、设计/实现
1、设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
- 在开始的时候,大家一起完成。是
2、设计工作有没有碰到模棱两可的情况,团队是如何解决的?
- 有,商量解决
3、团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?
- 是,有效
4、什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?
- 前后端交互bug较多,经验不足。没发现重要的bug
5、代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
- 各自管好自己。是
6、我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
- 及时反馈问题
六、测试/发布
1、团队是否有一个测试计划?为什么没有?
- 有
2、是否进行了正式的验收测试?
- 是
3、团队是否有测试工具来帮助测试?
- 有
4、团队是如何测量并跟踪软件的效能(Performance)的?压力测试(Stress Test)呢? 从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
- 软件的效能,主要从识别的准确度,回复的准确度以及回复的速度跟踪测量。压力测试使用jmeter进行测试,模拟大量用户从终端同时登录和同时与服务器发送消息,测试系统正常运行的极限。从结果看,这些测试工作的作用并不明显,因为目前使用我们软件的用户量远不及压力测试的数量,应从实际出发,测试并加快响应速度,而不是一味的折磨服务器5、在发布的过程中发现了哪些意外问题?
6、我们学到了什么? 如果重来一遍, 我们会做什么改进?
- 测试也是开发中的一大环。
七、总结
1、你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
- 四档。
2、你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
- 创造
3、你觉得团队在这个里程碑相比前一个里程碑有什么改进?
- 效率提高
4、你觉得目前最需要改进的一个方面是什么?
- 团队间的协作
5、对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例
- 保持每日会议以及每日总结
6、代码管理的质量具体应该如何提高? 代码复审和代码规范的质量应该如何提高?
- 保留一定的注释,遵守相同的代码规范,确保不同任务的成员之间不同任务的代码可以看懂,增强代码的易读性
7、整个程序的架构如何具体提高? 如何通过重构等方法提高质量,如何衡量质量的提高?
架构需要对整个项目都有比较深入的理解,从算法模型,到前后端框架
每次完成issue和每日任务的时候,将新模块加入到程序中,就重构一次,确保一日一重构
质量的提高可以从程序运行的代码覆盖率,以及用户的使用体验衡量
8、其它软件工具的应用,应该如何提高?
- 阅读使用文档
9、项目管理有哪些具体的提高?
- 按照计划走
10、项目文档的质量如何提高?
- 专人编写
11、对于人的领导和管理, 有什么具体可以改进的地方?
- 增加博客园写手和后端工作时间
团队贡献分
名字 | 角色 | 团队贡献分 | 可验证的贡献 |
---|---|---|---|
林桂旭 | 前端开发、测试 | 20 | 测试、代码 |
刘升嘉 | 后端开发 | 20 | 测试、代码 |
梁昊东 | 项目经理、测试 | 20 | 测试、需求分析 |
谭艺豪 | 前端开发 | 20 | 代码 |
陈泽瀚 | 后端开发 | 20 | 博客园,代码 |