【Beta】Phylab2.0: Postmortem

时间:2022-09-17 22:18:00

设想和目标#

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

主要解决同学们写物理实验报告时,处理数据的困难——巨大的计算量和不规范的物理报告数据处理格式。典型场景和描述见前面的功能说明书。
Beta阶段新增场景:学校管理员登录后通过权限验证,在管理员后台负责管理实验,操作包括新增实验(未发布)、修改实验内容、发布新增实验三种。

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

在Beta一开始的时候已经将Beta阶段的工作重心确定下来,之后一直按目标进行。

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

大家没有不同的意见,均认为该计划可行。

用户量, 用户对重要功能的接受程度和我们事先的预想一致么? 我们离目标更近了么?

稍微比预期要少一些。客观原因是实验课程已经进入尾声,同学们很多都已经做完了实验。

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

一定要在weekday把要做的做完,周末看似有两天,但是可用时间并没有多少。

计划#

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

顺利完成,可能对某些细节还需要做调整,文档说明也跟上了(文档内容可能仍需要雕琢一下)。

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

无。

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

有,任务大部分明确了完成时需要提交/检查什么东西。
如:

【Beta】Phylab2.0: Postmortem

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

Beta阶段进行较为顺利,并无意外。

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

有,缓冲区的作用是在大家被其他作业所困得时候,缓冲开发节奏。

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

增加PM对项目的控制力度,PM必须清楚项目细节。

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

学到了控制好一个团队并非易事,不能对团队的每个人有过高期望,要考虑最坏情况。
改进:需要有一个核心,过于*办不成事。

资源#

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

Beta阶段最稀缺的资源仍是时间。
虽说我们有5个人,但是有两名成员有一个周末因为参加比赛,没有任何进展。恰逢周末才是有连续编码时间的时候,所以总体来说我们团队只能有4.5人的工作时长。
其次,步入后半学期,许多其他课程的大作业层出不穷,占用了很多时间。

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

通常预想时间放宽20%,整个阶段预留两次任务发布周期作为缓冲区,即10次会议周期实际完成8次左右的周期工作任务。

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

Beta阶段因为在确定目标时考虑到时间问题,因此降低了工作量,资源勉强足够。

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

目前工作岗位配置仍算合理。

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

还是这句:可能不会轻易接手一个项目,接手前需要对项目规范、文档进行考察。如果发现问题,果断进行重构。

变更管理#

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

讨论组通知、私信通知。

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

PM决定。

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

PM再发布任务时确定大概轮廓,细节由各成员在轮廓内自行补充。

4. 对于可能的变更是否能制定应急计划?

无应急计划,只有缓冲区。

5. 员工是否能够有效地处理意料之外的工作请求?

能够。由于意料之外的工作不多,难度不高,因此均顺利完成。比如接到用户反映的问题,对UI作修正等。

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

目前感觉尚可。

设计/实现#

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

设计工作在去年的团队的时候已经开始,我们在Alpha阶段重新设计了可模块化的结构,并在Beta阶段退出模块化的管理系统。

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

主要PM决定。

3. 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?

否,只有简单的测试,但也算是自动化测试。

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

目前没有发现重大bug,部分问题反映主要原因是用户数据出错,另一些是UI调整。

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

没有代码复审,没有严格代码规范。

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


测试/发布#

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

有,从beta阶段开始便一直进行脚本的测试。

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

有,对于每个实验的数据处理均有测试文件。但是没有采用标准测试工具。

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

否。

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

没有跟踪效能。

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

某些文件读写权限在开发服务器和发布服务器不一致,目前已经解决。

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

总结#

  **你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?**
只达到可重复级。 **你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?**
规范阶段。 **你觉得团队在这个里程碑相比前一个里程碑有什么改进? **
首先在团队管理上有较大改进——规范了会议时间、调整了工作周期,使开发任务更加清晰。 **你觉得目前最需要改进的一个方面是什么?** 将内容产生部分交给更加熟悉的相关人员——我们毕竟已经完成物理实验课程一年,对其内容和热情度不足,因此需要正在上这门课程的人担任管理员——内容产生者。 **我们小组什么地方做的比较好?** 在Beta阶段坚持每周至少两次会议(一般为3次),并不是最后10天才草草发布会议记录。 **下个阶段需要改进什么?** 对招募到的管理员进行培训

【Beta】Phylab2.0: Postmortem的更多相关文章

  1. 【Alpha】Phylab2.0: Postmortem

    设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 主要解决同学们写物理实验报告时,处理数据的困难--巨大的计算量和不规范的物理报告数据处理格式.典型 ...

  2. 【Beta】阶段汇总

    [项目文档&API文档] PhyLab2.0需求与功能分析改进文档(NABCD) PhyLab2.0设计分析阶段任务大纲(α) 团队个人贡献分分配规则 功能规格说明书 [Phylab2.0]B ...

  3. 【ActionScript】ActionScript3.0对舞台组件的增删改查

    以一个样例来说明ActionScript3.0对舞台组件的增删改查 例如以下图: 在Flash执行的时候,通过脚本.斜向下生成text0-text9十个文本节点. 提供两个功能. 1.在右上角,用户输 ...

  4. 【AngularJS】 2.0 版本发布

    [AngularJS] 2.0 版本发布 w5cValidator[AngularJS] 2.0 版本发布   w5cValidator 插件基于angular原有的表单验证,在原有的基础上扩展了一些 ...

  5. 【Beta】 第七次Daily Scrum Meeting

    第七次meeting会议 [Beta] 第七次Daily Scrum Meeting 一.本次会议为第七次meeting会议 二.时间:10:00AM-10:20AM 地点:禹州楼 三.会议站立式照片 ...

  6. 【Tomcat】CentOS7.0下安装多个Tomcat及其配置

    安装前所需环境 在开始安装Tomcat之前,需要安装环境JDK,并配置JAVA环境.如果不知道如何配置,可参考这篇博客:[Linux]CentOS7.0下安装JDK环境 Tomcat安装 Tomcat ...

  7. 【转】mysql8.0 在window环境下的部署与配置

    [转]mysql8.0 在window环境下的部署与配置 今天在阿里云window服务器上配置mysql环境,踩了一些坑,分享出来.需要的朋友可以看看.额,或许有人要吐槽我为什么不在linux上去配置 ...

  8. 【Android】11.0 UI开发(二)——列表控件ListView的简单实现1

    ************************ 转载请注明出处:https://www.cnblogs.com/xiaofu007/p/10342462.html ***************** ...

  9. 【Android】8.0活动的生命周期(一)——理论知识、活动的启动方式

    1.0 Android是使用任务(Task)来管理活动的,活动就像栈一样堆放着在一起. 每个活动的生命周期最多可能会有四种状态: 1.1 运行状态 位于栈顶 1.2 暂停状态 不在栈顶但在界面上仍处于 ...

随机推荐

  1. 【POJ】2420 A Star not a Tree?

    http://poj.org/problem?id=2420 题意:给n个点,求一个点使得到这个n个点的距离和最短,输出这个最短距离(n<=100) #include <cstdio&gt ...

  2. sequenza细胞纯度计算

    安装sequenza bam文件要放在前面,否侧会-f命令可能识别错误 samtools mpileup a.bam -f hg19.fasta -Q 20 |gzip > normal.pil ...

  3. leetcode 67

    67. Add Binary Given two binary strings, return their sum (also a binary string). For example,a = &q ...

  4. 从M个数中随机选出N个数的所有组合,有序,(二)

    这就是数学中的 A m n 的选取. 共有   m!/n!种可能.. 同样举一个例子吧.. 从12345这五个数字中随机选取3个数字,要求选出来的这三个数字是有序,也就是说从12345中选出来的是12 ...

  5. JDK几个高版本的新特性

    JDK 高版本的新特性 1.JDK5的新特性: 自动拆装箱 见Integer部分笔记 泛型 增强for循环 静态导入 可变参数 见集合部分笔记 枚举 是指将变量的值一一列出来,变量的值只限于列举出来的 ...

  6. Debian&sol;Ubuntu&sol;Deepin下AndroidStudio2&sol;3打开AVD模拟器无反应

    Debian系AS无法启动模拟器 问题描述 早在半年前将开发环境从windows迁移到了Linux:当时用的是Debian系统,也是在安装完成AndroidStudio之后无法开启模拟器,也没出现什么 ...

  7. WGAN源码解读

    WassersteinGAN源码 作者的代码包括两部分:models包下包含dcgan.py和mlp.py, 这两个py文件是两种不同的网络结构,在dcgan.py中判别器和生成器都含有卷积网络,而m ...

  8. css3 之border-radius 属性解析

    在css 设置样式的时候,有时候会用到将元素的边框设置为圆形的样子的时候,一般都是通常直接设置:{border-radius:5px },这样就行了,但是到底是什么意思,一直以来都没有弄明白,只是知道 ...

  9. 音响理论基础入门:Gain(增益)

    谈到放大器就必须先了解增益:一个小的信号Level(电平)经过放大电路成为大的信号Level ,也就是说由小变大之间的差异就叫增益,也叫放大率,反过来的叫衰减率.在音响系统内,一般以信号源的输入电平决 ...

  10. IIS错误:在唯一密钥属性&OpenCurlyDoubleQuote;fileExtension”设置为&OpenCurlyDoubleQuote;&period;mp4”时,无法添加类型为&OpenCurlyDoubleQuote;mimeMap”的重复集合项

    之前的IIS配置中,.mp4类型的文件默认无法访问,所以个人在IIS7.5的mime类型中增加了.mp4的类型的支持,但问题是需要每台机器中增加这些设置,不利于团队协作,于是,只好将这些修改体现在代码 ...