团队作业6——事后诸葛亮分析

一杯温水️ 一杯温水️ 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

基本信息

这个作业属于哪个课程广工软件工程课程学习社区
这个作业要求*团队作业6——复审与事后分析*
这个作业的目标Alpha阶段程序复审以及事后诸葛亮分析
队伍名随机组合队
队伍人员朱宏集、陈力正、王辉、黄永昌、翁良鹏、梁萍、梁林霞

目录

  • 基本信息
  • 设想和目标
  • 计划
  • 资源
  • 变更管理
  • 设计/实现
  • 测试/发布
  • 团队的角色,管理,合作
  • 总结:

设想和目标

  1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?

我们主要想解决私密聊天和内网聊天的保密性的问题。一般针对的是不适用市面上聊天软件的,想要确保通信安全的用户及场景

  1. 我们达到目标了么(原计划的功能做到了几个? 按照原计划交付时间交付了么? 原计划达到的用户数量达到了么?)

达到了一半吧,主要功能都做完了,经过了组内的测试,但是并没有其他用户使用

3.有什么经验教训? 如果历史重来一遍, 我们会做什么改进?

交流中需要明确需求,不断把需求精确下来。同时定期交流,提前安排好时间,不能每次都赶在ddl前面

计划

  1. 是否有充足的时间来做计划?

有的,但是计划并没有被很好的执行

  1. 团队在计划阶段是如何解决同事们对于计划的不同意见的?

互通每个人情况和对产品的理解,做到求同存异,确保时间和可行性

  1. 你原计划的工作是否最后都做完了? 如果有没做完的,为什么?

没有,注册功能以及用户登录功能的完善并没有做好,主要是时间问

  1. 是否每一项任务都有清楚定义和衡量的交付件?

并不是,前后端的一些功能其实并不想我们一开始想得可以分离,他们常常是一个方法里面写有前端的样式以及相对应的监听器(方法),这给我们造成了很大的麻烦

  1. 是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?

并没有,项目中我们有个同学生病住院了,使得我们大家对开发的信心降低了,同时还要和这个同学交接任务,因为当时没有留存文档和写好注释,沟通起来非常麻烦

  1. 在计划中有没有留下缓冲区,缓冲区有作用么?

有的,因为我们常常错估了一个功能的开发时间,长时间的停滞多亏了缓冲区我们才能即时赶完

  1. 将来的计划会做什么修改?(例如:缓冲区的定义,加班)

少任务多完善、多优化功能,以最少的需求换取开发的高质量以及后期开发的稳健

资源

  1. 我们有足够的资源来完成各项任务么?

有的

  1. 测试的时间,人力和软件/硬件资源是否足够? 对于那些不需要编程的资源 (美工设计/文案)是否低估难度?

并不足够;确实低估了,我们原本预想着前端设计就好了,但是发现这样后端的压力过大,使得前端也有加入写代码、学习的道路上

  1. 你有没有感到你做的事情可以让别人来做(更有效率)?

有的,数据库一些功能的实现完全可以给让同学做,这部分功能网上有很多现成的车轮子,找几个csdn帖子就可以让其他同学完成了

变更管理

  1. 每个相关的员工都及时知道了变更的消息?

前后期主要通过微信,中期试着采用项目看板、Issue来管理,但是发现这个增加了沟通成本以及学习成本,这对时间本不充裕的我们是一个巨大的挑战,最后还是决定一直在微信上把变更给管理好

  1. 我们采用了什么办法决定“推迟”和“必须实现”的功能?

主要是线下讨论和微信群讨论

  1. 项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?

主要是我们内部觉得这个功能没有bug了,我们就认定它"做好了"

设计/实现

  1. 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?

开始的时候完成的,主要有项目管理的三个同学 王辉、陈力正、朱宏集

  1. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?

不断沟通,减少需求以及复杂度

  1. 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么? 比较项目开始的 UML 文档和现在的状态有什么区别?这些区别如何产生的?是否要更新 UML 文档?

有的,我们有使用java自带的单元测试junit测试。这些工具在开始的时候确保了了我们的功能能够够被正常执行,但是一旦变更需求了之后有需要我们调试,之后我们的函数编写也没有在使用这个了

  1. 什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?

前端的展示bug最多,应为设计到UI的相关监听器功能的设置,保证ui的内部逻辑不会乱,这点我们再开发中并没有想到

  1. 代码复审(Code Review)是如何进行的,是否严格执行了代码规范?

主要是组内负责这部分的代码的人来向同伴说明,让组内成员对代码提出要求、规范

测试/发布

  1. 团队是否有一个测试计划?为什么没有?

有一个不算完整的内部测试计划,主要是对各个功能进行使用,检查是否有bug

  1. 团队是否有测试工具来帮助测试?很多团队用大量低效率的手动测试,请提出改进计划:至少一个方面的测试要用自动化的测试工具,自动化的测试结果报告,比较测试结果的差异,等等。

我们的测试主要是手动+自动测试,前期对于方法会写一些测试方法来调用他们,但是相当多的测试还是依赖手动

  1. 团队是如何测量并跟踪软件的效能(Performance)的?压力测试(Stress Test)呢? 从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?

并没有

团队的角色,管理,合作

  1. 团队的每个角色是如何确定的,是不是人尽其才?

主动报名的,虽然人尽其才,但是工作量分配比较不均衡

  1. 团队成员之间有互相帮助么?

有的

3. 当出现项目管理、合作方面的问题时,团队成员如何解决问题?

协商,沟通,精简需求,由开发的同学最后下手

总结:

  1. 代码管理的质量具体应该如何提高? 代码复审和代码规范的质量应该如何提高?

多写注释文档,同时

  1. 整个程序的架构如何具体提高? 如何通过重构等方法提高质量,如何衡量质量的提高?

使用优秀的框架如springboot和maven来

  1. 项目管理有哪些具体的提高?

对项目管理,人员管理的沟通有了进一步的认识,明白了项目管理的核心在人以及沟通

  1. 对于软件工程的理论,规律有什么心得体会或不同意见? 请看阅读作业。

觉得

  1. 你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?

CMM

  1. 你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?

萌芽

7.你觉得目前最需要改进的一个方面是什么?

配合以及基本的代码功底要加强,同时协作的思想要放在重要地位,编程时应该考虑同伴要如何理解你的代码,如何让组员便于理解

团队贡献分计算

姓名学号分工贡献分
朱宏集(组长)3119003006项目管理、后端开发21
陈力正3120005060项目管理、后端开发20
王辉3120002988后端开发、测试20
黄永昌3120005068后端开发、测试17
翁良鹏3120000075后端开发、测试16
梁萍3220004910前端开发、博客撰写19
梁林霞3220004956博客撰写、辅助开发21
...全文
评论
收藏 已收藏
分享
返回顶部