事后诸葛亮会议 及 交换1人

此作业要求:https://edu.cnblogs.com/campus/nenu/2019fall/homework/9861

组名:扛把子

组长:迟俊文

组员:宋晓丽 梁梦瑶 韩昊 刘信鹏

扛把子组“PSP小能手”项目

Postmortem结果

设想和目标

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

答:“PSP小能手”这一项目是基于腾讯微信的生成psp表小程序,使用者在上面进行工作任务计时最终生成一张PSP表。该项目当下主要是解决用户(软件工程课上群体)的例行报告,提高用户完成作业的效率和准确度。目前项目的使用群体小但定位准确,对该项目未来宏观的典型用户和典型场景在 选题Scrum例会报告的需求分析 部分中有清晰的描述。

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

答:有充足的时间,我们的小组成员在选题前进行前对项目进行了评估和研究,并且对小组成员所掌握的技术手段有一定的认知。在确定选题后,我们进行了典型用户和典型场景的定义,并且在整个项目制作过程中,我们各自发挥了各自优势,并且各自都分配了相对擅长的任务,大大提高了效率,节省了时间。

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

答:首先,在每周作业发布后的首次例会中,我们会对上一周的工作进行总结,并且对新一周的任务进行细化分工(截止时间精确到小时)。在做讨论决定时小组成员各抒己见,保证每一个成员的民主平等,提出建议后组长组织组员进行分析并投票(投票的形势遵循少数服从多数的原则)以保证好的建议能够被得以实行。

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

答:我们本次项目的Alpha阶段实现了PSP记录时间并生成表格功能,这也是我们产品的重要功能之一。我们的产品在Alpha阶段预计的15用户(不含项目涉及人员)目标达成,用户在使用项目后为我们提出了许多宝贵的意见例如PSP界面美观度以及初试界面的引导功能不足等,通过与用户的交流我们了解到了用户的需求同时也得到的大多数用户的肯定,所以用户对于主要功能的接受程度和我们事先设想基本一致。

我们离目标确实更近了,目前该项目已经实现了预期的主要功能,结合用户的建议后期我们会对项目继续优化。

经验教训是团队开发中在实现特定功能时要学会变通,不能钻牛角尖。在设计过程中,我们常会遇到让大家耗费大量时间但难以解决的问题,这个时候不能故步自封,要学会请教他人以及查询是否有其他方法可以解决此类问题。

如果重来一遍,我们依旧会选择做微信小程序,但在在墨刀中设计原型时会参考多方面因素,在图标和使用界面的设计中要下更多功夫,这样就会尽可能的避免在用户反馈时出现的界面不美观的问题。

 

计划

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

答:原计划的工作已经完成,并且我们正在进行Beta阶段的任务。

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

答:存在。在对部分功能的实现上,我们太过苛刻的用原定方式解决,而忽略了更高效的方式。 

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

答:是。我们对于任务的分配非常谨慎并且非常详细,在每周例会上通过讨论分配任务后,会在当日立即公布在leangoo,看板上对任务的负责人,截止时间等均有清晰描述。在组员任务完成时会通过微信群的方式面向全组进行公示,其他人员会针对该组员完成的任务进行讨论。

4.是否项目的整个过程都按照计划进行?

答: 是的,我们通过对于项目功能以及作业完成的切割,合理的分配给特定的组员。在任务截止前,组员有权利义务在可能无法完成任务时进行组内求助,其他成员同时也有权利和义务对出现的问题进行讨论并提出解决的办法,整个过程中我们始终按照原有计划执行,并执行的相对良好。

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

答:我们的项目预留了缓冲区。因为我们小组是按模块划分任务的,所以会给任务设置一个较早的deadline,以方便组内成员检查修改。缓冲区的作用是为不能按时完成计划留有缓冲,给我们有条不紊的完成计划任务提供保障。

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

答:每周的任务要根据实际情况决定,在任务分配时我们会尽量保证合理,但不存在出现变动的情况,例如比较复杂的任务需要更多人员的配合以及更多时间的消耗。

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

答:我们学会了要悉心听取他人意见,并合理对人任务进行划分。如果再来一遍,我们会将任务分配更加合理,并且在组内人员无法攻克的问题上,会及时请教他人,并权衡他人提出的建议。

 

资源

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

答:有的。 网络上有关于小程序开发的教学视频,身边有大量从事相关行业的老师和朋友。

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

答:在任务的分配时,成员首先要熟悉任务,任务的分配会根据成员自身的实际情况进行。所以组内会有一个时间诉求,该诉求会经过组内分析确保成员能在自身条件满足并不影响整体项目进行的情况下进行,精度会根据每天课余时间的多少有所不同,一般精确到天。

3.用户测试的时间,人力和软件/硬件资源是否足够?

答:足够。 

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

答:没有。组内的任务分配会参考个人能力与个人兴趣两个方面考虑。在熟悉任务的过程中有非常明确的标准,所以在任务分配时进行的十分顺利且精致。

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

答:经验教训是在遇到问题时要尽早提出来,依靠团队的力量解决问题会事半功倍的结局问题。在遇到难题时不该把解决问题局限在某个人上,而是该分享给组内甚至组外的人。

如果重来一遍的话在分配任务的同时会关注每一个任务的进度,并在过程中及时沟通,及时查找方法乃至请教他人。 

变更管理

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

答:是的。

每次会议大家都会汇报自己的工作进度和工作情况。并且在课余时间会经常在微信群里进行讨论。

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

答:我们根据功能的重要程度和难易程度,如果是关系到后续发布的核心功能那么必须做到按时实现。对于工作量大以及暂时不具备能力完成的功能模块,经组长和组内人员协商可以进行推迟。

3. 项目的出口条件(ExitCriteria)有清晰的定义吗?

答:我们认为实现了预期,本项目的预期就是先期实现记录时间以及PSP表格

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

答:能。我们的组员结构清晰,很多时候都是结伴任务,有良好共同。并且对于紧急的变更我们会通过电话的方式通知大家进行线上讨论或是线下会议。

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

答:是的。大家是团队协作,对于出现的意料之中的工作情况有很及时的沟通,组内关系融洽,并且对彼此工作了解。

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

答:我们学到了在团队开发的过程中一定要做到将心比心,在确保自己任务完成的同时要关注整体项目的进行,融洽的气氛和广泛的交流是一个团队成长的关键。

如果历史重来一遍,我们会提升对于项目的责任感,在过程中多多交流,增进团队成员之间的友谊。

 

设计/实现

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

答:在设计方面,由具备一定经验和编程能力的同学负责,由团队整体进行协作。在现实的工作中证明,是合适的时间和人。

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

答:有。根据问题的性质和类别,有组内成员进行讨论和分析,并权衡分析结果的优势和劣势后进行组内投票,遵照少数服从多数的原则决定最后结果。

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

答:没有,在开发过程中更多的是组内人员不断的试玩来确定改进。

4.什么功能产生的Bug最多,为什么?

答:在实现时间记录的问题上我们出现了在暂停后二次计时,而开始时间定格为更改为第二次计时时间的情况。原因是在代码设计时出现的判断错误已经前期的测试不够全面。

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

答:由于开发周期短,代码规范还没有拟定。代码复审主要是Alpha阶段项目整合之后,产品上线之前,通过代码互查、组内个人代码分享的形式进行了复审。

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

答:在产品的设计前要做好市场调研,去了解用户的 需求,以及用户所处在的环境。已经在每个功能的实现如何对用户去进行引导和帮助。

如果重来一遍,我们会让自己的产品更加亲民,充分了解用户的感受,与此同时要增加严格的代码规范。

 

测试/发布

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

答:有测试计划,但是因为时间不够充分,所以测试不细致。

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

答:没有。由于时间有限,我们还没来得及做这项工作。

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

答:没有。

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

答:Alpha阶段没有涉及效能分析。

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

答:在PSP2.0发布的过程中我们遇到了项目代码审核无法通过的问题。官方给出的原因是项目有“违法,涉黄”嫌疑,并附上了带有相关关键字的图片。这是我们意料之外的,2.0版本中我们对图标界面等进行了大量升级,但由于该特殊原因在为期两天的过程里无法进行发布。但我们的技术人员巧妙地在代码中加入了官方的安全接口,最后通过漫长的审核,最后发布成功。

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

答:经验是要做好完整的计划,把项目的 细节尽可能的做到最好,保证项目发布的同时更加要保证项目的质量。

如果重来的话,我们会制定周密的计划,做好测试,并跟踪软件的效能。

posted @ 2019-10-30 09:05  扛把子  阅读(185)  评论(1编辑  收藏  举报