事后诸葛亮(问题总结)

团队名称 打代码一定要笑
beta阶段随笔集合 团队作业第六次——beta冲刺+事后诸葛亮

设想和目标

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

  能解决大学生不想去取快递及其他生活琐事。定义的很清楚,典型用户就是学生,典型场景:一个住在3楼的大学生,周末有个快递到了,可他不想去拿,想在宿舍呆着,于是他用‘取经’发布了一个任务,住在同一栋楼5楼的另一个人刚好愿意去拿快递,他在取快递的路上通过‘取经’查看到了3楼同学的任务,帮他顺路拿了还赚去了积分。

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

  原计划的功能基本都完成了,(原计划用户4个功能,管理员3个功能)也按照原计划的时间交付了。用户数量方面还在内测,所以没有。

3. 和上一个阶段相比,团队软件工程的质量提高了么? 在什么地方有提高,具体提高了多少,如何衡量的?

  和上个阶段比,组员对于软件开发的流程和技术更为熟悉了,开发整合过程进行的更为流畅了。组长的管理水平也有所提升,逐步建立了明确的奖惩而不是人情管理。

4. 用户量,用户对重要功能的接受程度和我们事先的预想一致么?我们离目标更近了么?有什么经验教训? 如果历史重来一遍, 我们会做什么改进?

  内测中,暂时还没有向用户推广。

计划

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

  计划的时间比较充足。

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

  对于不同的意见一般通过讨论解决,我们组的所有人都是讲理且价值观差不多的人,一般讨论到后面都会有统一意见。

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

  基本全部完成。

4. 有没有发现你做了一些事后看来没必要或没多大价值的事?

  有,比如一些细节的讨论会进行很久,最后却拍板的很随意,改动又不是很大,没有什么必要

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

  每一个项目模块的标准都是通过冲刺前开会讨论来定义的,如果实现过程中出现问题会相应调整。

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

  没有完全按照计划进行。有位同学在最后整合之前说完成不了任务,导致其他同学进行了计划外的加班。没有估计到会有人没有完成自己的任务,因为觉得大家都应该会很负责。

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

  没有。

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

 beta阶段会提前预留缓冲时间,防止相同的意外出现。加班的话,尽量不加班,如果加班也大概率是个人的加班,不希望出现集体的进度拖延。

9.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

  学到了前后端的开发、交互,数据库的搭建,服务器的部署,ui界面的设计,需求分析等
  如果重来一遍,我们在数据库设计会再多下点功夫,实际过程中修改了两次数据库的表结构。还要合理安排好工作时间,开会时间,休息时间。

资源

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

  资源是够的,后端有三位小佬,就是前端大家对于这块都比较陌生,熟悉前端开发花了比较多的时间。

2. 各项任务所需的时间和其他资源是如何估计的,精度如何?

  由于大部分人都没有开发经验的问题,我们只进行粗略的估计,精度会稍微差点,实际时间花费的比较多,尤其是最后的整合阶段,花了很多很多的时间。

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

  测试只是大概的测试一下,因为后面很赶。人力又有点不足,毕竟我们组只有6个人。美工设计的话,我们都是自己顺手画一下,不要求有多精美。

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

  开发过程中忽略了前端开发的困难,没有给到足够的资源,有点感到人力不足的感觉,如果重来的话,会多多关注前端这一块的投入。

设计/实现

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

  设计工作是所有人一起完成的,林昌锴和欧振贵完成需求分析报告,然后由柯燊熙和麻继友实现原型设计。

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

  有遇到,都是在开会时讨论解决的。

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

  有进行单元测试,这样可以减少后期合并时的工作量。现在的uml文档会更加明确,相互之间表达更加明确了。

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

  整合时bug是最多的,因为后端人员不懂vue,数据的传输总是出错。在设计的时候以为就是数据传来传去很简单的。

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

  代码复审由各自大模块下不同模块的负责人进行,要求严格执行项目开始时规定的设计文档。

6.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?

  对于单元测试要再多花一些心思,尤其是后期合并时前后端的交互需,这样可以减少bug的数量提高软件的性能。

测试/发布

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

  有,我们的测试工作由组长负责。

2. 是否进行了正式的验收测试?

3. 团队是否有测试工具来帮助测试?

  Visual Studio等

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

  软件测试由测试人员进行性能测试,从软件实际运行结果来看有一些效果,不过老师提出我们测试的不够细,下阶段会改进,粒度更细。

5. 在发布的过程中发现了哪些意外问题?

  经常出现一级界面没问题了,修改二级界面后,一级界面又报错。来来回回过程很艰辛

6.我们学到了什么? 如果重来一遍, 我们会做什么改进?

  对于软件的测试可以尝试使用更为专业的工具,传统的方法有点落伍。

团队的角色,管理,合作

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

  团队的角色有大家组队时自愿选择来确定的,这样可以让大家都在自己擅长或者感兴趣的地方工作。在前期的准备工作中,编码能力不强的同学占主要工作量。

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

  有,大家有问题都会在开会时提出自己还未解决的问题,对于自己了解的方面都会去帮助。

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

  出现这种问题时,一般都是通过开会讨论决定的。组长在其中进行了解及调解。

新组员工作交接和培训方案

我们换出去的那个组员原本是做的用户端的前端界面,新来的组员接替他的工作不变。在交换之后,组长就已经把之前产品的全部资料转发了一分给他,并且安排同样是前端的沈泳焕同学在学习技术上进行帮助

posted @ 2020-05-20 17:36  打代码一定要笑  阅读(274)  评论(8编辑  收藏  举报