当前位置:文档之家› 第2章 软件过程(4)-软件工程与项目管理-常晋义-清华大学出版社

第2章 软件过程(4)-软件工程与项目管理-常晋义-清华大学出版社

完成阶段性工作的标志称为里程碑(Milestone),某些重要的里程 碑又称为基线(Baseline)。
6
软件工程与项目管理
2.1 软件过程概述
软件过程的概念
软件过程也称为软件生存周期过程或软件过程组,是指软件 生存周期中的一系列相关过程与活动,其中“活动”是构成 软件过程的最基本的成分之一。
软件过程是一个为建造高质量软件所需完成的任务的框架, 即形成软件产品的一系列步骤。
7
软件工程与项目管理
2.1 软件过程概述
软件生存周期的过程分类
基本生存周期过程,供各当事方在软件生存周期期间使用。 支持生存周期过程,支持其他过程,有助于软件项目的成功
和质量提高。 组织生存周期过程,被软件组织用于建立和实现构成相关生
10
软件工程与项目管理
2.1 软件过程概述
组织生存周期过程(4个过程):
管理过程 建立过程 改进过程 培训过程
11
软件工程与项目管理
2.2 软件过程模型
软件过程模型
软件过程模型是软件开发全部过程、活动和任务的结构框架。 它能直观表达软件开发全过程,明确规定要完成的主要活动、 任务和开发策略。
存周期的基础结构和人事制度。
8
软件工程与项目管理
2.1 软件过程概述
基本生存周期过程(5个过程):
获取过程 供应过程 开发过程 运作过程 维护过程
序号 过程 1 获取过程
基本生存周期过程表
当事方 接受方
活动
需求方 供应方 获取系统、软件或软件服务
2 供应过程 供应方 需求方 系统、软件或软件服务
14
软件工程与项目管理
2.2 软件过程模型
瀑布模型
特点:
阶段间具有顺序性和依赖性 推迟实现的观点 质量保证的观点
瀑布模型缺陷是将充满回溯且相互重叠的软件开发过程硬性地分为 多个阶段,随着开发软件规模的增加,造成的危害大增。
15
软件工程与项目管理
2.2 软件过程模型
演化过程模型
演化过程模型是一种全局的软件生存周期模型,属于迭代开发的模 型。
3 开发过程 开发者 4 运作过程 操作者 5 维护过程 维护者
定义并开发软件
在规定的环境中为用户提供运行 软件系统服务
提供维护软件服务
9
软件工程与项目管理
2.1 软件过程概述
ห้องสมุดไป่ตู้
支持生存周期过程(8个过程):
文档编制过程 配置管理过程 质量保证过程 验证过程
确认过程 联合评审过程 审核过程 问题解决过程
18
软件工程与项目管理
2.2 软件过程模型
螺旋模型:将瀑布模型和快速原型模型结合,强调其他模型所忽视 的风险分析,吸收了“演化”的概念,可使开发人员和客户对每个 演化层的风险有所了解,继而做出应有反应。
将开发过程划分为制定计划、 风险分析、实施工程和客户评 估四类活动。将沿着螺旋线继 续进行,自内向外逐步延伸, 最终得到满意的软件产品。
软件过程
2
主要问题
什么是软件生存周期? 软件生存周期各个时期包含哪些阶段? 什么是软件过程? 什么是软件过程模型?主要有哪些模型? 软件项目管理过程组有哪些? 什么是软件过程评估?
2
软件工程与项目管理
第2章 软件过程
2.1 软件过程概述 2.2 软件过程模型 2.3 软件项目的过程管理 2.4 软件过程评估
根据用户的基本需求,通过快速分析构造出该软件的原型,然后根 据用户在使用原型过程中提出的意见和建议对原型进行改进,获得 原型的新版本。重复这一过程,最终可以得到令用户满意的软件产 品。
演化过程模型主要有原型模型﹑螺旋模型与协同开发模型。
16
软件工程与项目管理
2.2 软件过程模型
原型模型
开发者在初步了解用户需 求的基础上设计和开发一 个实在的软件初始模型 (原型),利用原型模型 进行软件开发。
4
软件工程与项目管理
2.1 软件过程概述
软件生存周期由计划、开发和运行三个时期组成,每个时期 又划分为若干个阶段。
5
软件工程与项目管理
2.1 软件过程概述
软件工程中的过程对应软件生存周期中的阶段(Phase) ,也是实现软 件生产工程化的重要步骤,并赋予各阶段相对独立的任务。
可以将一个软件的生存周期划分为市场调研、立项、需求分析、规 划、概要设计、详细设计、编程、单元测试、集成测试、运行、维 护这几个过程,前一过程的终点就是后一过程的起点。
17
软件工程与项目管理
2.2 软件过程模型
原型模型优点: 减少设计中的错误和开发中的风险,减少对用户培训的时间; 逐步求精完善原型,使得原型能够快速开发,避免了像瀑布模 型一样难以对用户的反馈作出快速响应; 原型模型通过“样品”不断改进,降低了成本; 原型模型的应用使人们对需求有了渐进的认识,使软件开发更 有针对性。 原型模型的应用充分利用了最新的软件工具,使软件开发效率 大为提高。
对任何软件的开发项目,都需要选择合适的软件过程模型, 这种选择基于软件项目和应用的性质、采用的方法、需要的 控制,以及要交付的产品的特点。
12
软件工程与项目管理
2.2 软件过程模型
软件过程模型
瀑布模型 演化过程模型 增量过程模型 专用过程模型 Rational统一过程
敏捷过程与极限编程 微软软件过程
19
软件工程与项目管理
2.2 软件过程模型
协同模型:协同就是通过将一组 主动的片断黏合起来的方式来构 建程序的过程。
程序=协同+计算,倡导在分布式 程序设计中将分布的协同与局部 的计算分离的思想。
20
软件工程与项目管理
13
软件工程与项目管理
2.2 软件过程模型
瀑布模型
瀑布模型(Waterfall Model)也称软件生存周期模型或线性顺序 过程模型。瀑布模型是一种线性模型。
瀑布模型提出了系统开发 系统化的顺序方法。将软件 生存周期各活动规定为线性 顺序连接的若干阶段,规定 了它们自上而下、相互衔接 的固定次序。
3
软件工程与项目管理
2.1 软件过程概述
软件生存周期
软件生存周期(Software life cycle)是从开始研发软件到 软件停止使用的整个过程。
指软件产品从提出开发需求开始,经过开发、使用和维护, 直到最后淘汰的整个周期,因此,也称为软件生命周期或软 件生存期,是软件工程的一个重要概念。
相关主题