-
Tom&Jerry_team——事后诸葛亮
一、作业描述
二、设想和目标
1. 我们的软件要解决什么问题?是否定义的很清楚?是否对典型用户和典型场景有清晰的描述?
- 要解决的问题:提供了一个听歌聊天的平台,供用户放松身心
- 定义清晰
- 对典型用户和典型场景有相对清晰的描述
2. 我们达到目标了么?
- 原计划的功能只实现了一部分
- 按原计划的交付时间按时交付了
- 原计划的模块部分只完成了一部分
3. 和上一个阶段相比,团队软件工程的质量提高了么?在什么地方有提高,具体提高了多少,如何衡量的?
- 团队软件工程的质量有明显的提高
- 团队的合作效率、会议效率、任务分配和任务完成效率等方面都有明显的提高
- 衡量标准:任务完成速度和组员响应速度所花费的时间
4. 用户量、用户对重要功能的接受程度和我们事先的预想一致么?我们离目标更近了么?
- 原计划中没有提及用户量,我们的目标用户是所有友好的网友,且目前仍在软件开发测试阶段,没有进行推广,所以没有什么用户量
- 用户对重要功能的接受程度还是未知数 —— 目前的重要功能也只实现了其中的一小部分
- 离目标更近了是一定的,因为团队每天都在稳步地向着目标前进
三、计划
1. 是否有充足的时间来做计划?
- 有,在进行需求分析的时候就已经做好了较为详细的计划,冲刺阶段开始前完善好了计划。
2. 团队在计划阶段是如何解决同事们对于计划的不同意见的?
4. 有没有发现你做了一些事后看来没必要或没多大价值的事?
5. 在计划中有没有留下缓冲区,缓冲区有作用么?
- 没有留下缓冲区,本次任务冲刺阶段时间过于紧张,没有预留缓冲区。
四、资源
1. 我们有足够的资源来完成各项任务么?
- 时间资源较为短缺,我们是在最后的两周内开始正式的编程,开发的。
- 技术资源不够充分,开发小组内技术开发不够,项目相关技术不熟练,遇到bug、疑问,项目无法继续进行。
2. 各项任务所需的时间和其他资源是如何估计的,精度如何?
- 有一个初步计划,并任务进行中根据实际情况进行调整
- 精度开始时较为粗略,实现过程中逐步讨论完善
3. 测试的时间,人力和软件/硬件资源是否足够? 对于那些不需要编程的资源 (美工设计/文案)是否低估难度?
- 测试方面,各模块及时自行测试,当测试满足后,会再进行统一测试,硬件资源基本满足
- 美工设计/文案方面低估了难度。
4. 你有没有感到你做的事情可以让别人来做更有效率?
- 没有,组员们都是根据自己的兴趣来学习,来做事,方向不同,不大会出现谁比谁更有效率。
5.有什么经验教训? 如果历史重来一遍, 我们会做什么改进?
- 团队资源安排上需充分考虑到任务难度及实现情况,团队内及时交流进行情况,尽量避免成员任务分配不均、实现难度相差甚大。
- 时间资源安排不够合理,较为之前的安排,开发期间又有其他的变数,所以在之后的安排中,会将意料之外的变量考虑进来,以实现意外不会影响项目的进度和效率。
五、变更管理
1. 每个相关的员工都及时知道了变更的消息?
- 是的,我们会进行每日会议,有问题有消息也会及时在团队群内进行交流讨论。
2. 我们采用了什么办法决定“推迟”和“必须实现”的功能?
- 我们根据功能重要性、实现难度以及项目的实际进度在团队交流讨论时统一意见
3. 项目的出口条件(什么叫“做好了”)有清晰的定义么?
4. 对于可能的变更是否能制定应急计划?
- 能,大家都很积极,反应快,能及时解决突发情况,并及时进行相应的调整。
5. 员工是否能够有效地处理意料之外的工作请求?
- 基本上没有意料之外的工作请求,大多在计划中进行,如果有也能及时处理。
6.我们学到了什么? 如果历史重来一遍, 我们会做什么改进?
- 我们经常在群内沟通交流,学习一些实现项目需要的技术。如果再来一遍, 我们会在前期设计的时候尽量简单化。
六、设计/实现
1. 设计工作在什么时候,由谁来完成的?
2. 设计工作有没有碰到模棱两可的情况,团队是如何解决的?
3. 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么? 比较项目开始的 UML 文档和现在的状态有什么区别?这些区别如何产生的?是否要更新 UML 文档?
- 有运用单元测试、UML等工具来帮助设计和实现
- 都有显著的效果,使用uml更好地理清类、对象等之间的关系。
- 有些类的名称改变了,需要更新UNL文档。
4. 什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug? 为什么我们在设计/开发的时候没有想到这些情况?
- 搜索框和我的收藏两个功能出现的Bug较多,因为写的demo较多,整合到一起的时候出现了一点问题,之前经验欠缺,所以没想到
5. 代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
- 由于时间较短,代码复审较为仓促,写完一部分后由另外一个人进行检阅
- 有提前统一代码规范,整合在一起的时候再次检查,但部分命名不规范未修改
七、测试/发布
1. 团队是否有一个测试计划?
2. 是否进行了正式的验收测试?
3. 团队是否有测试工具来帮助测试?
4. 团队是如何测量并跟踪软件的效能的?从软件实际运行的结果来看,这些测试工作有用么?应该有哪些改进?
- 人工手动测试.
- 有用,通过测试可以在开发过程中寻找不足。
八、团队的角色,管理,合作
1. 团队的每个角色是如何确定的,是不是人尽其才?
- 团队的人物角色是通过大家商议决定的,例如大家擅长什么,或者有人想学习一些自己以前没有接触过的东西而项目中刚好会运用到的,就选择了想要的团队角色
- 基本上是每个人都发挥到了自己应有的作用
2. 团队成员之间有互相帮助么?
- 团队成员大家都是互相帮助的,可能因为项目的冲刺阶段是临近期末,大家聚在一起的时间不是特别多,但是当大家有问题解决不了的时候,会选择出来一起解决,男生和男生之间可以在寝室一起相互讨论。
3. 当出现项目管理、合作方面的问题时,团队成员如何解决问题?
- 我们在完成项目的过程中,有出现过一次,因为遇到的问题一直没有解决,项目没有进展,有过消极的想法,但是后面大家相互鼓励,一起去解决问题,问老师或者身边其他的同学。
九、总结:
1.你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
- 二级,管理级。在管理级水平上,所有第一级的要求都已经达到,另外,软件组织在项目实施上能够遵守既定的计划与流程,有资源准备,权责到人,对项目相关的实施人员进行了相应的培训,对整个流程进行监测与控制,并联合上级单位对项目与流程进行审查。二级水平的软件组织对项目有一系列管理程序,避免了软件组织完成任务的随机性,保证了软件组织实施项目的成功率。
2.你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
- 磨合阶段,规范虽然已经有,但是自身编码习惯有些问题,有时候并没有严格按照规范做。
3.你觉得团队在这个里程碑相比前一个里程碑有什么改进?
- 大家从个体,变成了团队,之间的默契有了一点,但是还是差很远。
4.你觉得目前最需要改进的一个方面是什么?
- 队伍内人员之间在统计和实现之间的沟通,多多互相了解团队内的其他人的工作。
十、各组员对于最终项目成果的贡献度
成员 |
贡献度 |
高洁 |
14% |
黄波 |
13% |
何昆佰 |
19% |
刘超然 |
20% |
林金 |
12% |
刘丙亮 |
12% |
李安娜 |
5% |
蒋晨 |
5% |
-
相关阅读:
微信公众号开发 该公众号提供的服务出现故障,请稍后再试
docker 搭建以太坊私有链搭建
docker /var/lib/docker/aufs/mnt 目录满了,全是垃圾数据
golang 如何将imagemagick 和golang 打包到docker 环境中
CSharpGL(2)设计和使用场景元素及常用接口
CSharpGL(1)从最简单的例子开始使用CSharpGL
CSharpGL(0)一个易学易用的C#版OpenGL
Opengl中矩阵和perspective/ortho的相互转换
C#+OpenGL+FreeType显示3D文字(3)
C#+OpenGL+FreeType显示3D文字(2)
-
原文地址:https://www.cnblogs.com/TomJerry/p/13254667.html
Copyright © 2020-2023
润新知