软件过程管理 (10)

合集下载

软件过程管理岗位职责

软件过程管理岗位职责

软件过程管理岗位职责软件过程管理(Software Process Management,SPM)岗位是软件开发过程中至关重要的一个管理岗位。

SPM负责对软件开发过程的计划、执行、监督、控制等各个方面进行有效的管理,以确保软件开发过程的顺利进行,并可按时、按质地交付高质量的软件产品。

具体职责如下:一、软件开发流程规划SPM需要负责根据项目的实际情况,进行软件开发流程规划,确定开发相应的工作阶段、活动、任务和交付物等。

通过流程规划,SPM可以更好地控制项目的开发进度以及绩效,简化开发人员的工作任务,降低开发成本和风险。

二、软件开发流程实施与管理SPM需要负责实施和管理软件开发过程,包括过程的质量保证、监控、控制和改进等方面。

具体包括对软件开发人员的日常工作进行督导,跟踪项目进度和交付物,对过程中的问题及时解决,确保软件开发过程可持续稳定地进行。

三、软件质量管理软件的开发过程中,SPM需要负责制定相关的质量管理体系,确保开发团队能够严格按照要求进行各项开发工作,并对开发结果进行质量检查,保障软件产品质量。

四、开发人员培训与指导为提高开发团队的技能水平和业务能力,SPM需要制定并执行培训、指导和技能提升计划,并对培训活动的效果和影响进行考核,提高开发人员的能力和绩效。

五、与客户沟通和协调SPM需要与客户保持沟通和协调,及时了解客户需求并将其传递给开发团队,制定相应的开发计划和过程,确保软件产品能够满足客户要求。

六、风险管理在软件开发过程中,SPM需要时刻关注各个方面的风险,及时发现、分析并作出相应的应对措施,从而降低开发过程的风险,确保软件开发过程成功、按质量、按时完成。

总之,软件过程管理岗位是软件开发过程中至关重要的一个管理岗位,需要负责实施和管理软件开发过程的各个方面,帮助开发团队制定高效、高质量的开发过程,提升开发过程的可持续性和可靠性,确保软件开发过程最终成功、按质量、按时完成。

软件过程管理

软件过程管理

chapter__4
3
镀金(gold plating)的定义
给予用户的东西要多于他们所要求的。
事实上,额外的特性、扩展的功能、 更好的组件以及其他等等,通常都不会 为项目增加什么价值。实际上,镀金常 常会增加项目的开支,因为这需要更多 的资源、更长的开发周期,还会增加重 新设计的风险、耽误项目的交付使用。
例如:银行ATM系统
非功
需求管理的重要性
chapter__4
16
项目失败的原因分析
No.
Top 10 Factors
1
Inadequate requirements specification
不充分的需求规范
2
Changes in requirements 需求的改变
例如:银行ATM系统 功能性需求:取、存、查、密码检验
chapter__4
14
非功能需求
许多非功能需求关心的是系统整体特性,而 不是个别的系统特性。因此非功能需求比功 能需求对系统更关键。一个功能需求没有满 足可能降低系统的能力,而一个非功能系统 需求没有满足则可能使整个系统无法使用。
例如:一个飞机系统不符合可靠性需求,它 将不会被批准飞行。若一个实时控制系统无 法满足其性能需求,控制功能可能根本无法 使用。
3.8 3.6 3.6
17
本章要点
一、软件需求定义 二、软件需求管理过程 三、需求建模的基本方法 四、案例分析
chapter__4
软件过程管理
RoadMap
合同管理 生存期 需求管理 任务分解 规模估算 项目进度
质量计划 配置计划 风险计划 团队管理 项目度量
集成项目 跟踪控制 项目结束
chapter__4

软件过程管理

软件过程管理

等级3:已 定义级
产品集成 验证 确认 组织过程核心 组织过程定义 组织培训 集成项目管理 风险管理 决策分析与解决
缩写词 PI VER VAl
OPF OPD OD IPM RSKM DAR
CMMI的关键过程域(续)
成熟度等级 关键过程域 等级3:已定 集成供应商管理 义级 组织集成环境 集成团队 等级4:量化 组织过程性能 管理级 量化项目管理 等级5:优化 组织革新与部署 管理级 原因分析与解决 缩写词 ISM OEI IT OPP QPM OID CAR
CMMI的能力等级
• 能力等级(Capability Level, CL)是指在一个 单独的过程域中执行的良好程度。 • CMMI包括6个能力等级:
CL0,不完整级:过程域的一个或多个目标没有被满足。 CL1,已执行级:过程通过转换可识别的输入工作产品,产生 可识别的输出工作产品。能实现过程域的特定目标。
特征: • 管理工作主要跟踪软件经费支出、进度和功能, 识别在承诺方面出现的问题。 • 采用基线(baseline)来标志进展,控制完整 性。 • 定义了软件项目的过程标准,并遵循它。 • 通过子合同建立有效的供求关系。
CMMI已管理级
• 过程
软件开发和维护过程是相对稳定的,但过程建立在项目级别, 而非企业级别。 软件工程过程受控于有效的工程管理过程,先前的成功经验 可以被重复使用。 问题出现时,有能力识别并纠正,承诺可以兑现。
CMMI的能力等级
CL2,已管理级:过程作为已管理的过程制度 化。 CL3,已定义级:过程作为已定义的过程制度 化。 CL4,量化管理级:过程作为量化管理的过程 制度化。 CL5,优化级:过程作为优化的过程制度化。
CMMI是什么?

软件过程管理

软件过程管理

2.软件过程的基本知识(1)软件过程模型<1>瀑布模型以文档为驱动,适用于需求明确的项目.但缺乏灵活性<2>演化模型通过开发原型,然后根据客户的反馈和意见改进原型.适用于需求模糊的情况.<3>螺旋模型结合了瀑布模型和演化模型,并加入了风险分析.过程: 1.制定计划. 2.风险分析. 3.实施工程. 4.用户评估.<4>喷泉模型以用户需求为动力,以对象为驱动的模型.适合于面向对象开发方法.使得开发过程具有跌代谢和无间隙性(使得各个过程没有明确的界线).<5>统一过程(UP)以用例驱动,以架构为中心,迭代并且增量<6>敏捷方法(2)统一过程(UP)<1>用例驱动<2>以架构为中心.<3>迭代和增量<4>统一过程的生命周期分为: 初始阶段, 精化阶段, 构建阶段, 移交阶段, 产生阶段.<5>RUP(3)敏捷方法目标: 尽可能早的,持续的对有价值的软件的交付使客户满意.4条宣言与12条原则.<1>极限编程(XP)四大价值观: 沟通,简单,反馈和勇气<2>水晶法她认为每个不同的项目都需要一套不同的策略,约定和方法论,适用于规模在100-500个功能点的软件.<3>并列争球法她使用迭代的方法,把每30天一次的迭代称为一个冲刺并按需求的优先级来实现产品.<4>自适应软件开发.<5>特征驱动软件开发(4)软件过程改进<1>软件过程评估的意义*1.软件过程改进的需要*2.降低软件风险的需要*3.集成各种过程改进工作的需要.<2>软件能力成熟度摸得简介(CMM)他是对软件进化阶段的描述理解关键过程域软件过程成熟度分为:初始化级,可重复级,已定义级,已管理级,优化级<3>能力成熟度集成模型(CMMI)能力等级0-5.3.软件开发计划与管理(1)软件项目管理<1>成本预算*1.自顶向下估算法.优点: 重视系统级工作,工作量小,速度快.缺点: 忽视低级别上的技术困难,使得成本上升.*2.自顶向上估算法.将软件细分并由负责该部分子任务的人员来负责估算优点: 估算精准缺点: 估算缺乏各个子项目之间*3.差别估算法.与已经完成的项目进行比较,找出不同之处并估算其对成本的影响.优点: 提高估算准确度/缺点: 不容易明确差别的界线.*4.其他: 专家估算法,类推估算法算式估算法.*5.常见的估算模型: Putnam模型和COCOMO模型<2>风险分析*1.风险识别.建立风险条目检查表*2.风险预测.*3.风险评估.*4.风险控制.<3>进度管理*1.甘特图(Gantt)优点: 能清晰地描述任务的开始,结束以及进展缺点: 无法反映各个任务之间的依赖关系,难以确定其关键所在. *2. 项目计划评审技术(PERT图)能准确的反映出各个任务之间的关系与找出关键路径.<4>人员管理.人员能力成熟度模型(P-CMM)(2)软件配置管理(SCM)<1>基线<2>软件配置项<SCI><3>软件版本控制<4>变更控制(3)软件质量管理<1>软件质量的特性*1.功能性: 适应性,准确性,互用性,依从性,安全性*2.可靠性: 成熟性,容错性,易恢复性*3.易使用性: 易理解性,易学性,易操作性*4.效率: 时间特性,资源特性*5.可维护性: 易改变性,易分析性,稳定性,易测试性*6.可移植性: 适应性,易安装性,一致性,易替换性<2>Mc Call软件质量模型<3>软件质量保证<4>软件复杂度*1.代码行度量法*2.McCabe度量法公式: V(G)=m-n+2p 其中: m 弧数, n 节点数, p=1<5>软件评审<6>软件容错技术4.系统运行和维护知识(1)系统维护概述<1>系统可维护性概念维护人员理解,改正,改动和改进软件的难易程度.*1.系统可维护性的评价指标可理解性,可测试性,可修改性*2.维护与软件文档*3.软件文档的修改<2>系统维护的内容及类型*1.硬件维护*2.软件维护*3.数据维护<3>系统维护的管理和步骤(2)系统评价(3)系统评价的指标。

软件实施流程管理的步骤

软件实施流程管理的步骤

软件实施流程管理的步骤概述软件实施是指将软件产品应用于实际环境,确保其能够正常运行并满足用户需求的过程。

软件实施流程管理是指在软件实施过程中,对实施流程进行有效管理,以确保项目顺利进行。

下面将介绍软件实施流程管理的步骤。

步骤一:需求收集和分析1.确定项目目标和范围:明确软件实施的目标和范围,包括功能需求、性能需求、安全需求等。

2.收集用户需求:与用户进行沟通和交流,了解用户期望和需求。

3.分析需求:对收集到的需求进行分析,确保对用户需求的理解准确。

步骤二:计划和安排1.制定实施计划:基于需求分析的结果,制定软件实施的计划和时间表。

2.确定资源需求:确定实施所需要的人力、物力和财力资源。

3.制定沟通计划:明确团队成员之间的沟通方式和频率,确保信息流通畅。

步骤三:团队组建和培训1.组建实施团队:根据项目需求,确定实施团队的人员和组织结构。

2.分配任务和责任:根据团队成员的专业能力和经验,合理分配任务和责任。

3.进行培训:针对团队成员的培训需求,进行相关培训,提升团队成员的专业能力。

步骤四:软件开发和集成1.进行软件开发:根据需求和设计文档,进行软件的开发和编码工作。

2.进行软件测试:对开发的软件进行功能测试、性能测试和安全测试等,确保软件的质量和稳定性。

3.进行软件集成:将开发完成的模块进行整合,并进行集成测试,确保各个模块之间的互操作性和协同工作。

步骤五:软件部署和上线1.进行软件部署:将开发和测试完成的软件部署到实际运行环境中,包括服务器、数据库等。

2.进行用户培训:对软件的最终用户进行培训,使其能够熟练使用软件。

3.上线软件:在经过全面测试和培训后,将软件正式上线使用。

步骤六:监控和优化1.进行系统监控:对已上线的软件进行实时监控,确保系统的正常运行。

2.收集用户反馈:定期收集用户对软件的反馈意见和建议,不断改进软件功能和性能。

3.进行优化和更新:根据用户反馈和项目需求,对软件进行优化和更新,提升用户体验和系统性能。

软件过程管理

软件过程管理
IT教育成就人生
索迪教育
Level 1:初始级
不用做什么计划,提前一点订好座位 当天下班大家一哄而去 现场点菜,然后大吃一顿
IT教育成就人生
索迪教育
这样做会有什么结果?
定不到位? 菜不合大家口味? 经费超出? 大家心情变得很沮丧?
有没有可能取得比较好效果呢?
IT教育成就人生
索迪教育
Level2:受管理级-1
组织过程性能 根据历史数据,算出了性能基线、性能模型。
定量项目管理 聚餐活动进行时,利用性能基线、性能模型 进行定量管理。
IT教育成就人生
索迪教育
这样做会有什么结果?
聚餐活动进展情况了如指掌 比较准确的估计到最后的结果 成功的几率极大提高
IT教育成就人生
索迪教育Biblioteka Level 4的遐想就这样够了 吗?
Level2:受管理级-2
配置管理(CM) 菜式统计、买酒的 协议、计划等文档 要统一管理起来。
老板对我不放心, 还派个人来监督 我工作!哼!
质量保证(PPQA)
IT教育成就人生
索迪教育
这样做会有什么结果?
大家吃得满意? 预算控制得好? 老板高兴?
真的能这样吗?
IT教育成就人生
索迪教育 2级做法遗留的一些问题
IT教育成就人生
索迪教育
CMMI的5个级别
第1级:初始级 第2级:受管理级 第3级:已定义级 第4级:定量管理级 第5级:持续优化级
?通过一个“吃饭”的例子,让大家感 受CMMI 1级到5级。
IT教育成就人生
索迪教育你会如何组织这个的活动?
某个时间,公司进行聚餐活动。 请你组织这次活动,目的是用合理的经费让 大家高高兴兴地吃一顿!

软件过程管理

1.软件过程规范的概念过程规范就是对输入/输出和活动所构成的过程进行文明规定或约定俗称的标准。

软件过程规范是软件开发组织行动的准则与指南,可以依据上述各类过程的特点而建立相应的规范,如软件基本过程规范、软件支持过程规范和软件组织过程规范。

2.软件过程规范的建立组织过程规范的建立,除了国家制定的软件过程规范之外,可以借鉴的过程模型、框架或模式主要有以下几种:(1)软件能力成熟度模型(CMM)(2)个体软件过程(PSP)(3)团体软件过程(TSP)(4)能力成熟度模型集成(CMMI)(5)IBM-Raional的统一过程(RUP)(6)极限编程(XP)方法(7)微软解决方案框架(MSF)3.项目实施过程规范可定义如下:参与人员入口准则出口准则输入输出在项目实施期间的主要活动包括如下:(1)经理、开发组长和测试组长提交每日每周报告(存在问题、缺陷状态、任务进度和资源)(2)经理、开发组长和测试组长定期审查项目计划的执行情况,若发现进度延误,应及时采取措施加快进度或及时调整项目计划。

(3)经理、开发组长和测试组长审查各类问题并及时解决这些问题,清理软件缺陷,决定哪些缺陷要优先修正,哪些缺陷可以留到下一个版本。

相关模板4.CMM的基本内容和结构(1)成熟度等级。

是朝着实现成熟度软件过程改进的、适当定义的和特定的平台。

5个成熟度等级提供了CMM的顶层结构。

(2)关键过程域(KPA)。

每个成熟度等级由若干KPA组成,每个KPA标识出一串相关的活动。

当KPA作为群体完成时,就达到一组目标,此组目标对建立相应的过程成熟度等级是至关重要的。

(3)关键实践(KP)。

每个KPA用若干关键实践加以描述,当实施这些关键实践时,能帮助实现该KPA的目标。

(4)共同特点(CF)。

将关键实践分别归入5个共同特点,执行规定、执行能力、执行活动、测量和分析及验证实施。

5.成熟度各个级别的软件过程特征可重复级受管理级:级别2,软件过程特征:(1)建立软件项目管理的策略和实施这些策略的规范,但过程管理的策略主要是针对项目建立的,而不是针对整个组织来建立的。

软件过程管理

软件过程管理引言:随着科技的不断发展,软件在各行各业中的应用越来越广泛,因此软件过程管理也变得越来越重要。

软件过程管理是指对软件生命周期中的各个阶段、活动、流程进行规划、组织、控制和评估的过程。

本文将讨论软件过程管理的重要性、过程管理的基本原则和主要方法,并探讨软件过程管理在提高软件开发效率和质量方面的作用。

一、软件过程管理的重要性1. 提高软件开发效率软件过程管理可以帮助团队建立科学、规范的开发流程,合理分配资源,提高工作效率。

通过合理的过程管理,可以确保软件开发过程中的任务分配、协作、沟通等方面的顺利进行,避免重复工作,减少资源的浪费,提高软件开发速度。

2. 提高软件开发质量通过软件过程管理,可以确保软件开发过程中的每一个环节都得到合理的控制和管理,从而提高软件开发质量。

合理的过程管理可以确保测试、评估、修复等流程的顺利进行,避免潜在的bug和错误,提高软件的稳定性、性能和可靠性。

3. 降低软件开发风险软件过程管理可以帮助团队在软件开发过程中及时发现和解决问题,降低项目风险。

通过项目管理、风险评估和控制等方法,可以及时解决软件开发过程中的各种问题,减少项目的失败风险,保证软件开发进度和成果的可控性。

二、软件过程管理的基本原则1. 适应性原则软件过程管理应根据不同的项目、团队和环境,采用不同的管理方法和工具。

过程管理应能够适应不同的需求和情况,灵活地调整和优化管理流程。

2. 参与性原则软件过程管理需要全员参与,尤其是开发团队成员。

只有通过团队协作和全员的参与,才能确保软件开发过程的顺利进行和优化。

3. 持续改进原则软件过程管理应持续改进和优化。

通过收集和分析软件开发过程的数据和指标,及时发现问题和改进的空间,并采取相应的措施进行改善,以提高软件开发效率和质量。

三、软件过程管理的主要方法1. 项目管理项目管理是软件过程管理的核心方法之一。

通过项目管理,可以规划、组织、控制和评估软件开发项目的全过程。

软件开发过程管理

软件开发过程管理软件开发是一个复杂而繁琐的过程,为了提高开发效率和质量,软件开发团队需要进行全面而有效的管理。

软件开发过程管理是指通过合理的规划、组织和控制,以及有效的沟通和协作,对软件开发过程进行管理和监控,确保项目按照预期的目标和时间节点顺利完成。

本文将从需求管理、项目计划、资源调配、沟通协作和质量控制等角度,探讨软件开发过程管理的重要性和方法。

需求管理是软件开发过程中的第一步,也是最为关键的一步。

项目负责人需要与客户充分沟通、了解客户需求,并将其转化为清晰、可量化的软件需求。

这一阶段需要建立良好的需求文档,准确描述软件功能、性能、安全等方面的要求,同时注重需求变更的管理,确保需求的稳定性。

通过需求管理,可以有效地避免需求的不明确和频繁变更,减少后期开发修补的工作量。

项目计划是软件开发过程管理的关键环节。

在项目启动之前,需要制定详细的项目计划,包括时间计划、资源计划、进度控制等方面的内容。

项目计划需要综合考虑人力、物力、财力等资源的分配和利用,合理确定开发阶段和里程碑,为后续工作提供清晰的目标和时间节点。

同时,项目计划还需要灵活性,能够适应需求变更和技术进展的调整。

资源调配是软件开发过程管理中的关键环节之一。

根据项目计划和需求,合理配置开发人员、测试人员、项目经理等开发团队成员的角色和职责。

对于大型项目,可能需要跨部门协调和资源共享。

资源调配需要综合考虑团队成员的技能和经验,合理安排工作任务和工作量,确保项目能够按计划进行。

沟通协作是软件开发过程管理中不可忽视的一环。

开发团队成员之间的有效沟通和协作是保证项目顺利进行的重要保障。

包括团队会议、项目进度报告、工作日志等多种形式的沟通和协作方式。

此外,项目负责人还需要与客户保持密切的沟通,及时了解客户需求变更和意见反馈,确保项目的持续满足客户的期望。

质量控制是软件开发过程管理中的重要环节之一。

软件质量是软件开发过程中必须关注的核心指标。

通过制定严格的软件开发流程,建立有效的代码审查、单元测试、集成测试和系统测试等质量控制措施,确保软件开发过程中的质量标准得以落实。

软件开发过程管理

软件开发过程管理一、前言现代软件越来越复杂,软件开发的成本也随之上涨,因此,软件开发过程管理变得至关重要。

软件开发过程管理是一门研究如何规划,组织,控制软件开发过程的学科。

良好的软件开发过程管理可以提高软件开发的效率和质量,减少重大软件错误产生的风险。

二、需求分析在软件开发之初,就需要对需求进行充分的分析和清晰的描述,这是软件开发过程管理中极为重要的一步。

假设你想要打造一款轿车。

在实现之前,你可能会思考如下问题:- 轿车的最高时速是多少?- 它需要多大的油箱?- 车辆使用期望寿命有多少年?- 客户需要什么外观和内饰设计?- 生产这款车需要多少时间?在软件开发中,需要对所开发的软件进行类似的分析和描述。

软件的开发目标必须要清晰明确,开发人员必须知道客户的需求是什么,客户的需求对软件开发过程中其他决策的影响也必须要考虑到。

三、规划与分配在需求分析之后,开发团队需要对整个软件开发过程进行详细规划和分配。

这一过程需要根据客户的需求、开发时间表、资源限制等来进行。

开发团队需要分别确定以下内容:- 项目的优先级及此优先级的原因。

- 软件开发的时间表。

- 每个开发人员要完成的任务及工作量。

- 每个人员的能力和职责情况,以分配合理而又能够有效的任务。

规划软件开发是软件开发过程管理中一项至关重要且困难的任务,需要对软件开发过程中大量细节进行深入的考虑,同时还需要考虑到团队协作中的问题。

四、实现与测试软件开发过程的实现阶段是软件开发过程管理的核心部分。

在这个阶段,软件开发人员需要转化需求文档或规划文档为可实现的软件功能,以此创造出一个开发版本。

在该阶段完成的软件应当经过严格的测试和审核,以确保其符合客户要求,并且没有违反程序安装及使用规定或违反版权。

软件测试一方面是为了保证软件的质量或稳定性,另一方面还是适当修复由于开发过程问题而可能引入的问题。

五、维护和修复软件开发远远不止是实现和测试,它还需要进行维护和修复,以确保软件之后长期可以满足客户的需求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

chapter_9
பைடு நூலகம்
57
小结

配置管理的基本概念
配置项 基线 sccb

配置管理过程, 配置管理计划的基本内容

chapter_9
58
3.
制定规则和(配置管理)工具:实现配置管 理1. 2.
3.
大企业,大项目 异地开发模式 配备专门的配置管理人员
chapter_9 55
本章要点
一、软件项目配置管理基本概念 二、软件项目配置管理过程 三、软件项目配置管理计划 四、案例分析
chapter_9
56
案例分析
School项目案例说明:
配置管理计划

chapter_9 53
常用配置管理的工具
1. 2. 3. 4. 5.
ClearCase&ClearQuest PVCS Harvest CVS VSS
chapter_9
54
配置管理建议
1.
制定规则:实现版本管理
1.
小企业,小项目
2.
制定规则和(版本管理)工具:实现部分配 置管理
1.
中小企业,中小项目
决策
(若批准)
(若批准)
(若批准)
(若批准)
实施变更
验证变更
发布、 安装变 更
版本更新
chapter_9
39
SCCB对变更做出决策
直接实现变更 挂起或者延迟变更 拒绝变更(应通知变更请求人,并且保存所有 的相关记录)
n n n
chapter_9
40
变更接受时,实现进度形式
尽可能快地实现变更:期望的变更是修改开发 基线中的一个配置项,只有解决这个变更,其 他工作才能展开。 按照一个特定的日期实现变更:确定合适的日 期实现变更。 在另外的版本中实现,出于技术或者运行等原 因,期望与另外的变更一起发布。

chapter_9
44
5、配置状态统计
检查配置管理系统以及内容, 检测配置项变更历史

chapter_9
45
IEEE标准828-1998规定用于计算 配置状态的最小数据集包括
被批准的配置项 配置项的所有请求的变化状态 配置项所有被批准的变更实现状态

chapter_9
46
评估一个配置系统状态
chapter_9
49
配置管理计划大纲
基线定义 版本控制 定义变更控制过程 变更委员会的管理 变更控制纪录

chapter_9
50
配置管理计划模板
1. 2.
引言 软件配置管理
1.
2.
3.
软件配置管理组织 软件配置管理责任 与软件过程生命周期的关系
3.
软件配置管理活动
1.
2. 3.
变更请求的数量 变更请求的历史报告 存储量的增长 配置管理系统以及SCCB在运作中发生异常的次 数等等

配置统计报告例
chapter_9 47
本章要点
一、软件项目配置管理基本概念 二、软件项目配置管理过程 三、软件项目配置管理计划 四、案例分析
chapter_9
48
配置管理计划过程
参加项目 规划 规划配置 管理任务 形成配置 管理计划 评审配置 计划
3
7
RELEASE 2.0
chapter_9
33
3、基线变更管理过程

基线修改应受到控制,这种变化要经 SCCB授权,按程序进行控制并记录基 线修改的过程。
chapter_9
34
3、基线变更系统
配置控制
变更请求
变更评估
变更批准 chapter_9 /拒绝
变更实现
35
变更请求
项目名称
变更申请人 变更题目 提交时间 紧急程度 变更具体内容
30
受控操作
Check in 评审/验证
受控库
Check out 变更控制 流程
新版本
chapter_9
31
配置项的跟踪过程举例
chapter_9
32
配置库
1 2 RELEASE 1.0 1 1 4 5 6 2 3 4 RELEASE 1.1 4 PATCH #2 2 3 1 2 1 PATCH #1
变更影响分析
变更确认 处理结果 签字
chapter_9 36
变更评估
变更评估
软 件 变 更 分 类
技 术 影 响 分 析
接 口 影 响 分 析
进 度 影 响 分 析
预 算 影 响 分 析
图9-11: 变更请求的评估
chapter_9 37
项目变更评估表
chapter_9
38
变更批准/拒绝
批准/拒绝变更

chapter_9
24
配置项的拆分例子
(某医疗网站)需求规格SCI 1. 辅助功能.doc 2. 性能.doc 3. 产品目录.doc 4. 医务管理.doc 5. 医疗专业区.doc 6. 首页.doc
chapter_9 25
配置项的标识

配置项被唯一的标识
chapter_9
26
配置项的标识约定举例

chapter_9
11
版本管理
是软件配置管理的基本要求,是指对软件开发 过程中 的各种程序代码、配置文件及说明文档 等文件变化的管理。 最主要的功能是追踪文件的变更(when who what) 另一重要功能并行开发
n
n
n
chapter_9
12
软件配置项: SCI software configration item

除此之外,软件工具和中间产生的文件也列入配置管理的 范畴,即把软件开发中选用的编辑器、编译器和其他一 些CASE工具固定地作为软件配置的一部分,当配置项发 生变化时,应考虑这些工具是否与之适应和匹配。
chapter_9 14
chapter_9
15
配置项的版本
配置项类
需求规格:
配置项 实例
需 求 规 格 V1.1
软件配置项是项目需定义其受控于软件配置管 理的款项。每个项目的配置项也许会不同。 一个软件配置项是一个特定的、可视化的工作 产品集,这些工作产品是生存期中产生或者使 用的。 所有的源代码,包括构成文件及其他所有制作 软件产品所需的文件。

chapter_9
13
软件配置项举例
系统规格说明书 软件需求规格说明书 设计规格说明书 源代码 测试规格说明书
配置控制委员会(SCCB) 可是一个人或一个小组,基本是由项目经理及其 相关人员组成
评估变更 批准变更申请 在生存期内规范变更申请流程 对变更进行反馈 与项目管理层沟通 一个项目可能存在多个SCCB,他们可能存在不同的

权利责任。
chapter_9
20
本章要点
一、软件项目配置管理基本概念 二、软件项目配置管理过程 三、软件项目配置管理计划 四、案例分析
chapter_9
18
软件开发各个阶段基线图示
系统工程 系统规格说明 软件需求规格说明 软件设计说明 源代码 测试计划、过程、数据 可运行系统 需求分析 软件设计 程序编写 测试 系统提交
chapter_9
19
SCCB (Software Configuration Control Board)
利用配置项记录验证软件达到的预期结果,确认产 chapter_9 品的完整性并维护构件间的一致性 22
配置管理的基本过程
1. 2. 3. 4. 5.
6.
配置项标识、跟踪 配置管理环境建立 基线变更管理 基线审核 配置状态统计 配置管理计划
chapter_9
23
1、配置项标识、跟踪
将软件项目中需要进行控制的部分拆分成SCI 建立唯一的标识 建立相互间的对应关系,进行系统的跟踪和版 本控制,以确保项目过程中的产品与需求和规 格的要求相一致,
chapter_9
21
基本活动
识别产品的结构、产品的构件及其类型,为其分配唯 一的标识符,并以某种形式提供对它们的存取、同时 找出需要跟踪管理的项目中间产品
记录变 化的有 关信息, 控制软 件产品 的发布 和在整 个软件 生存期 对软件
配置标识
变更控制
状态统计
配置审计
记录并 报告配 置项和 修改请 求的状 态
承启上课

辅助计划
质量计划 ??

chapter_9
0
RoadMap
合同管理 需求管理 生存期 任务分解 项目估算 项目进度
质量计划
配置计划
风险计划
团队管理
项目度量
集成项目
跟踪控制 项目结束
chapter_9 1
前言
软件项目中是否遇到如下的问题
找不到某个文件的历史版本; 开发人员使用错误的版本修改程序 开发人员未经授权修改代码或文档; 人员流动,交接工作不彻底; 已修复的Bug在新版本中出现; 无法重新编译某个历史版本; 因协同开发中,或者异地开发,版本变更混乱 导致整个项目失败; … …
n
n
n
chapter_9
41
变更实现
变更实现
受 控 基 线 出 库
变 更 实 现
实 现 的 测 试 和 验 证 chapter_9
实 现 被 承 认
受 控 基 线 入 库
42
变更控制系统-举例
chapter_9
43
4、基线审核
配置管理活动审核 用于确保所有的管理活动遵循已批准的软件配置 管理方针和流程,如检入/检出的频度、产品版 本升级原则等。 基线审核 保证基线的配置项正确地构造并正确地实现,并 且满足其功能要求。
相关文档
最新文档