201871030136-颜静

导航

201871030136-颜静 实验四 团队作业1:软件研发团队组建

项目 内容
课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2018CST
这个作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/14660499.html
我的课程学习目标 1,更新之前的代码,完善自己思考的方面;
2,查看同学的优秀代码,取长补短。
3,申请团队博客,建立研发团队
这个作业在哪些方面帮助我实现学习目标 1,通过对同学优秀的代码的查看,了解了自己的不足,让自己的思维方式更加全面;
2,建立研发团队,为后续学习做准备。
团队博客链接 https://www.cnblogs.com/dwxxd/

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

1.对博文作业进行阅读,结合评分要求进行评论

项目 链接
被评论的博客链接 https://www.cnblogs.com/Yangrui-coco/p/14653983.html
被评论作业的GitHub项目仓库链接 链接
评论内容如下

2.克隆任务3项目源码到本地机器,阅读并运行代码,找出项目代码的5个以上bug,参照《现代软件工程—构建之法》4.4.3节核查表复审项目代码并记录。

1)克隆代码

2)克隆成功

3)该项目的不足之处:

1,没有滑动条,数据多了就看起来不方便了
2,没有错误处理
3,不能返回上一操作
4,没有相应的操作选择,系统会自动弹出界面,不能选择界面的出现顺序
5,在刚开始运行项目是对文件编号进行选择时,只能对文件1执行相应结果,当输入其余文件编号,系统则没有响应。

4)代码审查表

复审原则 复审结果
概要部分
代码符合需求和规格说明吗? 符合
代码设计是否考虑周全? 周全
代码可读性如何? 很好
代码容易维护吗? 容易
代码每一行都执行并检查过了吗?
设计规范部分
设计是否遵从已知的设计模式或项目中常用的模式?
有没有硬编码或字符串/数字等存在? 没有
代码有没有依赖于某一平台,是否会影响将来的移植? 不会
开发者新写的代码能否用已有的Library/SDK/Framework中的功能实现?
有没有无用的代码可以清除?
代码规范部分
修改的部分符合代码标准和风格吗? 符合
具体代码部分
有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? 没有
参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度是以0开始计数还是以1开始计数? 没有
边界条件是如何处理的? switch语句的default分支是如何处理的?循环有没有可能出现死循环? 没有出现死循环
有没有使用断言( Assert)来保证我们认为不变的条件真的得到满足? 没有
数据结构中有没有用不到的元素? 没有
效能
代码的效能(Performance)如何?最坏的情况是怎样的? 达到了具体任务的要求
代码中,特别是循环中是否有明显可优化的部分(string的操作是否能用StringBuilder来优化)? 没有
对于系统和网络的调用是否会超时?如何处理? 没有超时
代码可读性如何?有没有足够的注释? 注释较少
可测试性
代码是否需要更新或创建新的单元测试? 可以继续更新

3.阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:

A. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片;
1)运行代码,选择数据文件

2)读取成功后弹出提示框

3)界面显示任务二的散点图

4)遗传算法:

5)动态规划算法的运行结果以及根据价值重量比排序

B. 总结任务3要求的功能软件解决了吗?软件在数据量/界面/功能上各有什么优缺点?对该软件产品功能有什么改进意见?
  任务三要求实现的功能基本解决,软件功能完善,界面的设计不是很美观友好,没有相应的操作选择,系统会自动弹出界面,不能选择界面的出现顺序,后续更进一步的美化界面,修改bug。

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

职业:在校大学生或青少年

学历:专科或本科以上

年龄:20+

专业:与计算机相关,或对计算机有浓厚兴趣

爱好:了解计算机相关的技术

收入:3000-5000

表面需求:学习与计算机有关的知识

潜在需求:开拓眼界,提高自己的能力
(4)经过(1)—(3)的工作,你们一定有充分的理由给评价作业选择一个结论: a) 非常不推荐 b) 不推荐 c) 一般 d) 好,不错 e) 非常推荐
  通过我们对代码的审核与测试,选择d

(5)结合(1)—(3)的评论体会,迭代改进本小组实验三任务3。
  通过评论体会,进一步对本组的项目进行了改进,添加了对于错误的处理,完善了GUI界面,对重要代码进行了注释。

二、组建团队

1,团队名称

image

2,团队成员组成

成员学号末五位 成员*名 个人博客地址 备注
30136 *静 https://www.cnblogs.com/yanj/ PM
30129 *琦 https://www.cnblogs.com/123456789wq/ 测试
30130 *诗怡 https://www.cnblogs.com/lomzn/ 文档
30105 *啟程 https://www.cnblogs.com/chenpiawu/ 开发

关于MSF

MSF,即Microsoft Solution Framework,也就是微软推荐的做软件的方法。

MSF有8个基本原则:

(1)推动信息共享与沟通(Foster open communications)

所有信息都保留,并公开,讨论要包括所有涉及的角色,决定要公开,并告知所有人。

(2)为共同的远景而工作(Work toward a shared vision)

我们做一个产品,不管是应用软件、行业软件,还是通用软件,要明确项目的目标是什么。

(1)这个目标必须是明确的,没有二义性;

(2)这个目标不是当前就能达到,必须是通过努力才能达到的;

(3)这个目标不是空泛的,它应该对项目成员每天的工作都有指导作用。每天你来上班,如果发现你做的事情对项目的远景没有帮助,你应该跟老板提出来。

(3)充分授权和信任(Empower team members)

在一个高效的团队中,所有的成员都应该能得到充分的授权,他们有权力在自己的职权范围内按照他们自己的承诺完成任务,同时,他们也充分信任其他同事也能实现各自的承诺。类似地,团队的顾客(包括内部和外部的顾客)也认为团队能兑现承诺,并进行相应的规划。

(4)各司其职,对项目共同负责(Establish clear accountability and shared responsibility)

团队中的每个角色都有自己的职责,如果出了问题,这个角色就要负责任。

与此同时,团队的各个角色合起来,对整个项目最终的成功负责,为什么?因为每个角色在其职责范围内的失败都会导致整个项目的失败。而且各个角色的工作都是互相渗透、互相依赖的。这种互相依赖的方式也鼓励团队成员在自己本职之外为其他领域做贡献。例如,测试人员可以帮助“用户体验”角色更好地设计用户界面,因为如果用户界面很差,再好的功能也不能发挥应有的作用。

(5)重视商业价值(Focus on delivering business value)

一个项目的商业价值只有在它被成功地发布并运行时才能体现出来,所以,MSF过程模式包括了开发和发布阶段。

(6)保持敏捷,预期变化(Stay agile, expect change)

软件工程,唯一不变的是变化。所以干脆别幻想客户的需求会在第一时刻很明确,然后保持不会变。要注意,我们是预期变化,不是期望变化。

除开外部原因,团队内部也在变化,我们对技术的掌握每天都在提高,原来认为不可能的事可能变得容易。我们对客观世界和软件系统的了解每天都在深化,原来觉得没问题的小细节忽然成了大问题。甚至原来一起打拼的同事忽然要离开……这些都要求我们团队保持敏捷的身段。

(7)投资质量(Invest in quality)

对质量的重视,引起对质量的投资,引起对人、过程和工具的投资。

(8)学习所有的经验(Learn from all experiences)

让团队成员从别人的成果和失败的例子中学到东西,帮助新项目重复以往成功的做法,培育团队总结的习惯和“批评与自我批评”的文化。

(9)与顾客合作

团队和顾客是伙伴,而不是对立的,应和顾客一起做需求分析,以达到双方都满意的结果。

4,组建团队企业微信群:

5,团队特色描述

男女搭配,干活不累!

  • 即有活泼机智古灵精怪的角色设定,也有踏实稳重认真沉着的人物角色,多种个性集结,多种角度解读解决问题
  • 团队气氛活跃融洽,在学习时大家不会因为死气沉沉的氛围影响心情而昏昏欲睡

6,记录完成《实验四 团队作业1:软件研发团队组建》各项任务实际花费的时间

** 各个阶段** 预估的时间(分钟) 实际的记录(分钟)计划
计划 40 40
· 估计任务需要多少时间 40 40
团队组建(包括下面 7 项子任务) 82 111
· 成员组建 5 10
· 设计团队名称 20 25
· 商讨团队口号 5 5
· 介绍团队风采 20 25
· 组建企业微信群 2 1
· 介绍团队特点 10 15
· 建立信任关系 20 30
总共花费的时间 (分钟) 122 151

三、完成本次作业的感受和体验

  通过完成本次作业,我们完成了团队的组建和建设,并意识到团队合作的重要性,以及团队合作需要注意的要点,即清晰有效的表达,这锻炼了我的语言表达能力,使我能更好的与人交流沟通,有利于项目更好的进行,通过评测别的小组的代码,我意识到了自己思维的不全面,察觉到了自己没注意到的缺点和不足,这让会让我在今后的学习中正视这一缺点,努力改正,全面自己的思维,提高自己的技术。

posted on 2021-04-21 08:59  201871030136-颜静  阅读(80)  评论(0编辑  收藏  举报