201971010216-李斌 实验四 团队作业1——软件研发团队组建

实验四 团队作业项目

项目 内容
课程班级博客的链接 2019级卓越工程师班
作业要求链接 实验四 团队作业
团队名称 奋起上进
课程学习目标 1.组件软件项目研发团队; 2.互评实验三项目,吸取其他项目的优点。
团队博客 奋起上进
目标实现 1.对实验三中完成质量较高小组的项目进行学习; 2.对本组实验三的项目进行了修改;3.找到了合适的队友并进行了团队的组建。

任务一:

浏览班级博客园中提交《实验三 软件工程结对项目》作业,任选一个你认为完成质量较高的小组项目成果,继续以实验三结对学习方式完成以下任务

1.评论对象信息

项目 内容
被评论作业同学学号和姓名 201971010118-梁春云
对方博客链接 实验三 结对项目
仓库链接 实验三 仓库

2.博文评论:

  • 博文结构: 博文结构清晰,排版整洁,内容充实
  • 博文内容: 内容完整充实,完成了各个任务,条理清晰,整体简约。
  • 博文结构与PSP中“任务内容”列的关系:博文结构与“任务内容”基本一致,基本遵循了PSP过程。
  • PSP两列数据的差异化分析与原因探究:
    • 该项目的PSP计划与实际时间基本一直,可以看出该组同学对计划的制定以及实施做到了精准的把握;
    • 预计时间相对合理,有完成规划

3.克隆到本地,进行代码审查

项目 内容
1.概要部分
代码符合需求和规格说明么? 基本符合需求和规格说明
代码设计是否考虑周全? 基本周全
代码可读性如何? 可读性高
代码容易维护么? 容易维护
代码的每一行都执行并检查过了吗? 检查过
2.设计规范部分
设计是否遵从已知的设计模式或项目中常用的模式? 遵从
有没有硬编码或字符串/数字等存在? 有部分
代码有没有依赖于某一平台,是否会影响将来的移植(如Win32到 Win64) 不影响移植
开发者新写的代码能否用已有的 Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现? 可以实现
有没有无用的代码可以清除?
3.代码规范部分
修改的部分符合代码标准和风格么(详细条文略)? 符合
4.具体代码部分
有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? 对错误进行了处理,处理了异常
参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度, 无错误,是以0开始计数
边界条件是如何处理的? switch语句的default分支是如何处理的?循环有没有可能出 没有出现死循环,循环语句正确
有没有使用断言(Assert)来保证我们认为不变的条件真的满足?
对资源的利用,是在哪里申请,在哪里释放的?有无可能存在资源泄漏(内存、文件、各种GUI资源、数据库访问的连接,等等)?有没有优化的空间? 不会导致资源泄露
数据结构中是否有无用的元素 没有
5.效能
代码的效能(Performance)如何?最坏的情况是怎样的? 程序运行正常,代码效能优秀。
代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类,C#中 string 的操作是否能用StringBuilder 来优化)?
对于系统和网络调用是否会超时?如何处理? 不会超时
6.可读性
代码可读性如何?有没有足够的注释? 代码可读性好,有足够注释
7.可测试性
代码是否需要更新或创建新的单元测试?还可以有针对特定领域开发(如数据库、网页、多线程等)的核查表。

4.阅读《现代软件工程—构建之法》第12章内容

A. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片:
  • 1.运行初始界面,并使用贪心算法
  • 2利用遗传算法求解的实验截图
  • 3散点图表
B.总结任务3要求的功能软件解决了吗?软件在数据量/界面/功能上各有什么优缺点?对该软件产品功能有什么改进意见?
项目 内容
任务3要求的功能 在实验二的基础上实现了遗传算法
功能
优点 GUI界面简约
缺点 没有实现数据库的功能
改进意见 增加一个数据存储的记录

C. 从学历、年龄、专业、爱好、收入等方面概括软件产品的典型用户群特征,他们表面需求,潜在需求都是什么?

学历 年龄 专业 爱好 收入 表面需求 潜在需求
本科 20+ 计算机专业 编程 中等收入 实现 算法掌握

经过(1)-(3)的工作,你们一定有充分的理由给评价作业选择一个结论:a) 非常不推荐 b) 不推荐 c) 一般 d) 好,不错 e) 非常推荐:

d) 好,不错

改进:无

任务二和任务三:

团队博客链接:实验四 团队作业

第五章阅读:

1、团队的特点:
  • 团队有一致的集体目标,团队要一起完成这个目标。
  • 团队成员有各自的分工,互相依赖合作,共同完成任务。
2、软件团队的模式:
  • 主治医师模式 (Cheif Programmer Team, Surgical Team)
  • 明星模式 (Super-star Model)
  • 社区模式 (Community Model)
  • 业余剧团模式 (Amateur Theater Team)
  • 秘密团队 (Skunk Work Team)
  • 特工团队 (SWAT)
  • 交响乐团模式 (Orchestra)
  • 爵士乐模式 (Jazz Band)
  • 功能团队模式 (Feature Team)
  • 官僚模式 (Bureaucratic Model)
3、开发流程:

(1) 软件开发流程概念:

  • 我们在开发、运营、维护的过程中有很多的技术、做法、习惯和思想。软件工程把这些相关的技术和过
    程统一到一个体系中,叫做“软件开发流程”。

团队作业个人总结

通过本次作业,软件工程作业正式进入团队合作模式,我和尚洁选择了曹永兴和张容星组,我之前和尚洁进行过
合作,团队组建起来很轻松,在进行交流及完成各项任务时也很容易,很快就完成了。相信我们团队在以后的实
验中会充分发挥团队的优势,充分利用每个人的优势。在以后的实验过程中我们会再接再厉。

posted @ 2022-04-11 13:09  是小朋友啊  阅读(13)  评论(0编辑  收藏  举报