事后诸葛亮分析
事后诸葛亮分析
这个作业属于哪个课程 | 信安1912-软件工程 |
---|---|
这个作业要求在哪里 | 团队作业6——复审与事后分析 |
这个作业的目标 | 复审与事后分析 |
Github仓库地址
队名
红橙黄绿青蓝紫队
团队队员
学号 | 姓名 |
---|---|
3119005415 | 黄奕威 |
3219005447 | 连婉玲 |
3119005417 | 黄智权 |
3119005431 | 欧智昕 |
3219005448 | 刘淑婷 |
3119005410 | 冯波昌 |
3219005445 | 何婉莹 |
一、设想和目标
- 我们软件的作用是什么?是否定义得很清楚?是否有清晰的描述?
- 我们软件是一款休闲小游戏,从界面就可以看出与游戏相关,描述地很清晰。
- 是否有充足的时间来做计划?
- 有,而且定期会开讨论会议,对一些需求不太清晰的部分进行理顺。
- 团队在计划阶段如何解决同事们之间的不同分歧的?
- 直接指出问题,并寻求大家的看法,少数服从多数。
二、计划
- 你们原计划是否最后都做完了?有没有没做完的?为什么?
- 没有全部做完,一开始是设想做一款网络对战的游戏,但是由于时间和技术原因,迫不得已做成单机版。
- 有没有发现做了一些无用功?
- 有的,部分需求在后续讨论后发现没有存在的必要,但是成员们已经写好了,只能将该需求砍掉。
- 是否对每一项任务都有清晰的定义和衡量的交付件?
- 小部分没有,有些任务需要的时间比较长,当做完之后对接的时候可能就会出现一些问题,导致后面需要不断地修改。
- 整个项目是否都在按照计划进行?
- 是的,一切按计划进行。
- 有没有在计划中留下缓冲区?
- 一开始没有想太多,只是认为能够按时完成即可,因此为每天都布置了一些任务。
- 将来的计划是什么?
- 需要预留一些缓冲的时间,并在项目制作的过程中及时开会,理清需求。
三、变更管理
- 每个成员是否及时知道变更?
- 是的,每次变更我们都要求成员在issue中提出和群聊中@相关成员。
- 使用什么方法来决定推迟和必须实现的功能?
- 采用“优先级”原则,如果当前任务会影响到后续任务开展,则会列为必须完成的部分,否则则认为是可以推迟的。
- 项目的“出口条件”是什么?
- 拥有稳定的功能和一定的承载量。
- 对于可能的变更是否制定应急计划?
- 没有,基本是走一步想一步,没有太大的远见,不过后面会更加注意这方面。
- 成员是否能有效处理一些突发情况?
- 算是可以,如果出现突发情况,会先通知群中的成员,大家一起想办法,最后讨论出一个比较可行的解决方案。
四、设计和实现
- 设计工作在什么时候,有谁来负责?是合适的时间和人吗?
- 在项目初期,选择大家都有空的时间,到一间空教室进行讨论,由队长黄奕威负责。
- 设计中有没有碰到模棱两可的情况?如何解决?
- 有碰到过,后面通过参照市面上的游戏解决方法,来模仿他们。
- 团队是否有通过一些工具来辅助设计和实现?
- 有使用unit-test来辅助测试,以及postman来测试接口。
- 什么功能的bug最多?为什么?
- 精灵对战功能bug最多,因为这涉及到动态计算,如果动作执行错误可能会导致整个对战出现错误。
- 代码复审是否严格遵守代码规范?
- 变量名的命名原则有按照,后面的接口功能设计基本一致,不过修复bug的阶段则是能快就快。
五、测试与发布
- 团队是否有测试计划?
- 有,大家分别测试除自己参与的以外的功能,并采用极端测试法,鸡蛋里挑骨头。
- 是否进行了正式的验收测试?
- 也不算正式,如果测试中出现了bug会直接在群聊中提出,让对应的人修复。
- 是否有测试工具来辅助测试?
- 有,像postman来测试接口。
- 团队是如何测量并追踪软件性能的?从实际效果看帮助大不大?
- 主要通过谷歌浏览器的开发者工具来查看渲染性能的友好,以及网络请求的速度。
- 帮助很大,像我们发现一些图片的加载有些慢,需要一定时间,此时屏幕的背景会是白色的,不太雅观,最后通过预加载技术,将需要的资源进行预加载后,再呈现给用户。
- 在发布过程中出现了什么意外?
- 部署项目时,遇到了静态资源获取失败问题,后面通过反向代理解决。
六、团队的角色,管理,合作
-
团队的每个角色是如何确定的,是不是人尽其才?
- 由个人意愿和小组讨论共同决定,人尽其才。
-
团队成员之间有互相帮助么?
- 在遇到困难时,大家会在群中提出,并共同想办法解决,互帮互助。
-
当出现项目管理、合作方面的问题时,团队成员如何解决问题?
- 如果是两三人的冲突能自行解决优先自行解决,不能自行解决则的交给PM或者队长决策。
七、总结
-
你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
- 第三级。
-
你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
- 我认为处于规范阶段。
-
你觉得团队在这个里程碑相比前一个里程碑有什么改进?
- 此为本团队第一个里程碑。
-
你觉得目前最需要改进的一个方面是什么?
- 项目同一规范问题。
-
对照敏捷开发的原则, 你觉得你们小组做得最好的是哪几个原则? 请列出具体的事例
-
有困难及时提出并讨论解决。
-
定时开会进行交流。
-
严格按照开发流程进行开发。
-
-
代码管理的质量具体应该如何提高? 代码复审和代码规范的质量应该如何提高?
- 在项目准备阶段,制定好团队命名规则和代码规范。
-
整个程序的架构如何具体提高? 如何通过重构等方法提高质量,如何衡量质量的提高?
- 将架构提升到可维护性更高的层次,便于后面维护。
- 提升代码的低耦合性。
-
其它软件工具的应用,应该如何提高?
- 充分利用GitHub的代码管理方式,通过学习使用其他软件,比如测试软件,来提高项目开发效率。
-
项目管理有哪些具体的提高?
-
commit规则进行校正。
-
对每日任务的安排应更加详细合理。
-
-
项目跟踪用户数据方面,计划要提高什么地方?例如你们是如何知道每日/周活跃用户等数据的?
- 查看数据库中每日新增的用户。
-
项目文档的质量如何提高?
- 多写,然后参考其他人的文档。
-
对于人的领导和管理, 有什么具体可以改进的地方?
- 可以选择有比较多经验的人来管理和领导,先富带动后富。
八、团队具体贡献
姓名 | 角色 | 团队贡献分 | 可验证的贡献 |
---|---|---|---|
黄奕威 | 队长、前端开发、策划 | 20.6 | 项目前端页面构建、伤害计算算法设计、团队项目统筹 |
冯波昌 | 后端开发、项目测试、推广 | 19.6 | 提出了很多项目不合理的地方、发现很多bug |
何婉莹 | 后端开发 | 20 | 用户模块的接口设计、修复了很多接口bug |
连婉玲 | 后端开发、项目测试 | 19.4 | 用户模块model的构建、提出了建设性建议 |
欧智昕 | 后端开发 | 19.8 | 后端精灵模块的model构建、数据库表格字段设计 |
黄智权 | 后端开发、策划、数据库设计 | 20.2 | 后端精灵模块的model构建、战斗过程中伤害计算的算法设计 |
刘淑婷 | 后端开发、项目架构搭建 | 20.4 | 项目框架搭建者、项目部署 |