信息项 | 内容 |
---|---|
课程名称 | 广工计院计科34班软工 |
作业要求位置 | https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13236 |
团队成员:
姓名 学号
方尔博(组长) 3122004861
黄文超
一、设想与目标
- 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?
我们是做一个提供用户进行技术交流或学习心得分享的博客平台。典型场景:发布者可在上面记录或分享自己所学的知识,普通用户可在上面学习到新知识
- 我们达到目标了么?
基本达到目标,可以正常使用,但仍有很多功能可以再被开发出来
- 和上一个阶段相比,团队软件工程的质量提高了么?在什么地方有提高,具体提高了多少,如何衡量的?
提高了,删除了一些已经没必要存在的文件,也修复了一点bug
- 用户量, 用户对重要功能的接受程度和我们事先的预想一致么?我们离目标更近了么?
目前使用用户较少,但已知一些功能仍可以优化,离目标是更近的
- 有什么经验教训?如果历史重来一遍,我们会做什么改进?
因为是第一次合作开发,如何分工、前后端如何对接等比较乱。改进:应该制定更加详细的计划,更加频繁地交流
二、计划
- 是否有充足的时间来做计划?
因为经验不足,对项目的开发流程不够熟悉,所以计划进行了多次更改,时间也比较紧张
- 团队在计划阶段是如何解决同事们对于计划的不同意见的?
面对面交流,互相听取对方的意见,最后一致决定
- 你原计划的工作是否最后都做完了?如果有没做完的,为什么?
基本完成,有一些没做完,因为时间比较紧张
- 有没有发现你做了一些事后看来没必要或没多大价值的事?
本来想实现通过滚动不断获取内容的,后来觉得使用分页就行
- 是否每一项任务都有清楚定义和衡量的交付件?
前后端代码开发分工明确,但其它部分因为不熟悉流程所以没有清楚定义
- 是否项目的整个过程都按照计划进行,项目出了什么意外?有什么风险是当时没有估计到的,为什么没有估计到?
否,中间前后端对接发现有对需求理解的偏差,所以修改了一些代码。原因:没有及时深入交流
- 在计划中有没有留下缓冲区,缓冲区有作用么?
有,缓冲区可以让我们应对一些意想不到的bug
- 我们学到了什么?如果历史重来一遍,我们会做什么改进?
及时沟通是很重要的,时间管理也是很重要的,要团队间加强沟通,提高积极性
三、资源
- 我们有足够的资源来完成各项任务么?
因为是申请的免费服务器,内存不足以容纳大量数据,还有因为开发经验的不足,时间资源也有点不够
- 各项任务所需的时间和其他资源是如何估计的,精度如何?
根据模块的需要用到的技术大概估计时间,时间有一些偏差,但大差不差
- 测试的时间,人力和软件/硬件资源是否足够?对于那些不需要编程的资源(美工设计/文案)是否低估难度?
测试的时间,人力和软件/硬件资源足够。美工设计确实花了挺多时间,低估了其难度
- 你有没有感到你做的事情可以让别人来做(更有效率)?
作为前端,一些涉及后端内容的感觉一起做更有效率
- 有什么经验教训?如果历史重来一遍,我们会做什么改进?
多利用搜索引擎学习不会的知识
四、变更管理
- 每个相关的员工都及时知道了变更的消息?
是,通过微信或面对面交流
- 我们采用了什么办法决定“推迟”和“必须实现”的功能?
一起讨论决定
- 项目的出口条件(Exit Criteria – 什么叫“做好了”)有清晰的定义么?
能完成基本需求,无明显bug,可在多个浏览器使用
- 对于可能的变更是否能制定应急计划?
能,在微信上交流
- 员工是否能够有效地处理意料之外的工作请求?
能,通过搜索、学习去解决
- 我们学到了什么?如果历史重来一遍,我们会做什么改进?
沟通是很重要的,要及时沟通
五、设计/实现
- 设计工作在什么时候,由谁来完成的?是合适的时间,合适的人么?
两个人一起商量的。
- 设计工作有没有碰到模棱两可的情况,团队是如何解决的?
有,一起商量,选择合适的一个
- 团队是否运用单元测试(unit test),测试驱动的开发(TDD)、UML, 或者其他工具来帮助设计和实现?这些工具有效么?
运用了单元测试
- 什么功能产生的Bug最多,为什么?在发布之后发现了什么重要的bug?为什么我们在设计/开发的时候没有想到这些情况?
因为前后端分离,分工,交接过程中经常出现意想不到的bug。发布之后发现某些评论发完后无法正常显示,后面发现是因为携带的参数问题。因为开发时修改了一点代码,却没有重新测试导致出现这种情况
- 代码复审(Code Review)是如何进行的,是否严格执行了代码规范?
自己尽量优化自己的代码
- 我们学到了什么?如果历史重来一遍,我们会做什么改进?
学到了前后端如何分工,对接。对项目进行更加详细的设计
六、测试/发布
- 团队是否有一个测试计划?为什么没有?
有
- 是否进行了正式的验收测试?
是,在上线前对已完成的功能进行了测试
-
团队是否有测试工具来帮助测试?
主要是通过手动测试
-
在发布的过程中发现了哪些意外问题?
无
-
我们学到了什么?如果重来一遍,我们会做什么改进?
测试的早期介入:在项目初期就应该制定测试计划,确保所有功能都得到充分测试。
自动化测试的引入:如果手动测试的工作量太大,可以考虑引入自动化测试工具,节省时间和提高测试覆盖率。
性能监控:上线后需要持续监控软件的性能,及时发现并解决性能瓶颈。
七、总结
- 你觉得团队目前的状态属于 CMM/CMMI 中的哪个档次?
因为只有两个人,所以暂时没有制作严格的开发流程和方法,主要处于初始级
-
你觉得团队目前处于 萌芽/磨合/规范/创造 阶段的哪一个阶段?
磨合阶段
-
你觉得目前最需要改进的一个方面是什么?
在开发过程中加强沟通,相互学习
标签:事后诸葛,分析,是否,什么,bug,测试,团队,我们 From: https://www.cnblogs.com/FFF111/p/18592706