团队9527 实验四 团队作业1:软件研发团队组建
项目 | 内容 |
---|---|
课程班级博客链接 | 2019级卓越工程师 |
作业要求链接 | 实验四 |
团队名称 | 团队9527 |
团队课程学习目标 | (1)学习《现代软件工程—构建之法》第7章 (2)理解MSF的9点基本原则 |
团队实现的学习目标 | (1)总结学习了《现代软件工程—构建之法》第7章的内容 (2)理解并掌握了MSF的9点基本原则 |
团队博客地址 | 团队9527 |
任务2:团队组建
- 1.队名:团队9527
- 2.团队成员组成
成员学号 | 成员姓名 | 个人博客地址 | 备注 |
---|---|---|---|
201971010118 | 梁春云 | 梁春云 | PM |
201971010131 | 李治江 | 李治江 | |
201971010121 | 李健康 | 李健康 |
-
3.阅读《现代软件工程—构建之法》第5章内容并总结
(1)团队的特点:团队有一致的集体目标,团队要一起完成这目标。一个团队的成员不一定要同时工作。
(2)软件团队模式:主治医师模式;明星模式;社区模式;业余剧团模式;秘密团队;特工团队;交响乐团模式;爵士乐模式;功能团队模式;官僚模式。
(3)要完成一个复杂的软件项目,团队的各种成员要在不同阶段做不同的事情,这些不同类型的工作在RUP中叫做规程(Discipline)或者工作流( Workflow )。简介如下。- 业务建模:业务建模( Business Modeling)工作流用精确的语言(通常是UML)把用户的活动描述出来。这个词有时也翻译为“商业建模”,但并不是只有存在金钱交易的商业活动才能符合建模的要求,任何和客户的正常工作相关的业务活动(例如政府为居民提供网上服务,学生到图书馆借书)都是建模的对象。
- 需求:有了用例之后,开发人员和用户(或者用户代表)要分析并确认软件系统得提供什么样的功能来满足用户的需求,功能有什么约束条件,如何验证功能满足了用户需求。
- 分析和设计︰分析和设计(Analysis & Design)工作流将需求转化成系统的设计。
- 实现:在实现(Implementation)工作流中,工程师按照计划实现上一步产出的设计,将开发出的组件(Module),连同验证模块(例如:单元测试)提交到系统中。
- 测试 :测试工作流要验证现阶段交付的所有组件的正确性、组件之间交互的正确性,以及检验所有的需求已被正确地实现。在这个过程中,发现、报告、会诊、修复各种缺陷,在软件部署之前保证质量达到预期要求。
- 部署:部署(Deployment)工作流的目的是生成最终版本并将软件分发给最终用户。
- 配置和变更管理:配置和变更管理工作流(Configuration and Change Management )负责管理RUP各个阶段产生的各种工作结果(例如源代码控制系统管理和备份各种源文件),要记录修改人员、修改原因、修改时间等属性,有些团队还可以考虑并行开发、分布式开发等。
- 项目管理:软件项目管理工作流(Project Management)负责平衡各种可能产生冲突的目标,管理风险,克服各种约束并成功地在各个阶段交付达到要求的产品。
- 环境:环境(Environment)工作流的目的是向软件开发组织提供软件开发环境,包括过程和工具。
(4)RUP四个阶段的介绍
- 初始阶段——此阶段的目标是分析软件系统大概的构成,系统与外部系统的边界在哪里,大致的成本和预算是多少,系统的风险主要来自哪里。成功度过初始阶段的项目会达到生命周期目标里程碑。
- 细化阶段——它的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,按优先级处理项目中的风险。团队要确定项目的具体范围、主要功能、性能、安全性、可扩展性等非功。
- 构造阶段——在这一阶段,团队开发出所有的功能集,并有秩序地把功能集成为经过各种测试验证过的产品。构造阶段结束时是第三个重要的里程碑:初始功能( Initial Operational )里程碑。此时的产品版本也常被称为“beta”版。
- 交付阶段——团队工作的重点是确保软件能满足最终用户的实际需求。交付阶段可以有迭代,基于用户的反馈,团队利用这些迭代对系统进行修改、调整。除了对功能的调整,团队还要注意处理用户设置、安装和可用性等问题。在交付阶段的终点是第四个里程碑:产品发布里程碑。
-
4.MSF的9点基本原则
- 1.推动信息共享与沟通( Foster open communications )
- 2.为共同的远景而工作(Work toward a shared vision)
- 3.充分授权和信任 ( Empower team members )
- 4.各司其职,对项目共同负责(Establish clear accountability and shared responsibility )
- 5.交付增量的价值(Deliver incremental value )
- 6.保持敏捷,预期和适应变化( Stay agile, expect and adapt change )
- 7.投资质量( Invest in quality )
- 8.学习所有的经验( Learn from all experiences )
- 9.与顾客合作( Partner with internal and external customers)
-
5.团队企业微信
-
6.成员风采
(1)梁春云:有一定的组织能力,擅长C/Java,编程兴趣:Python、前端开发,承担角色PM
(2)李治江:代码风格简单粗暴,擅长C/C++,编程兴趣主要喜欢后端
(3)李健康:编程风格简单直接,擅长C/C++和Java技术,对Java兴趣浓厚,希望在团队中担任测试的角色 -
7.团队特色
(1)团队特点:团队氛围欢愉融洽,对优秀的事物具有很强的接受学习能力
(2)核心竞争力:对代码的编写、测试、运行能力以及算法设计能力 -
8.任务3的完成情况如下
项目 | 花费时间(min) |
---|---|
组建团队 | 12 |
项目熟悉 | 5 |
团队名称 | 1 |
第五章内容总结 | 20 |
MSF的学习和总结 | 50 |
团队微信群的建立 | 3 |
- 9.总结
作为第一次的小组合作任务,算是对小组成员性格的初步认识,虽然过程简单,但是也收获颇丰,希望在接下来的小组合作项目中能够进一步彼此了解对方。