Ch06-标准化和一致性管理_第1页
Ch06-标准化和一致性管理_第2页
Ch06-标准化和一致性管理_第3页
Ch06-标准化和一致性管理_第4页
Ch06-标准化和一致性管理_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件过程改进方法与实践案例王安生Chapter 6.标准化和一致性管理 “君子和而不同,小人同而不和 。”软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生关键过程域 分类等级管 理 类组 织 类工 程 类优化级(等级5)Optimizing技术更改管理(TCM)过程更改管理(PCM)缺陷预防(DP)定量管理级(等级4)Manged定量过程管理(QSM)软件质量管理(SQM)已定义级已定义级(等级等级3)Defined集成软件管理集成软件管理(

2、ISM)组间协调组间协调(IC)组织过程焦点组织过程焦点(OPF)组织过程定义组织过程定义(OPD)培训大纲培训大纲(TP)软件产品工程软件产品工程(SPE)同行评审同行评审(PR)可重复级(等级2)Repeatable需求管理(RM)软件项目策划(SPP)软件项目跟踪和监督(SPTO)软件子合同管理(SSM)软件质量保证(SQA)软件配置管理(SCM)初始级(等级1)Initial无序的过程软件过程改进方法与实践案例王安生建立标准软件过程的必要性 摆在企业高层管理者面前的问题是: 1) 事业部经理和员工不断抱怨自己的事业部技术难度大、工作量大,待遇低。 2) 应用程序员会要求按代码行数与系统

3、级的程序员比待遇。 3) 项目经理们不能使用其他部门获得经验,对自己项目进度、费用、人员进行预算。常常认为其他部门的业务难度不如自己部门难。 4) 一系列项目层面或事业部层面的不平衡问题摆在管理者面前。 如何确认生产能力? 越来越多的问题是部门或项目层面上无法解决的,(企业)组织的关键矛盾是“必须在组织层面上”解决存在的问题。 因此,必须在组织层面上,建立一个统一的、标准化的软件开发或生产过程。软件过程改进方法与实践案例王安生组织对过程的关注“组织过程焦点”的目标1)在整个组织中,软件过程的制定和改进活动是协调的。2) 对照过程标准,标识所用的软件过程的强项和弱项。3) 组织层上的过程制定和改

4、进活动是有计划的。“组织过程定义 ”的目标“培训大纲 ”的目标1) 制定并维护组织的标准软件过程.2) 软件项目使用组织的标准软件过程的信息已采集、评审,并使之可用。1) 培训活动是有计划的。2) 已提供为履行软件管理和技术角色所需的技能和知识的培训。3) 软件工程组和软件相关组的成员已受到履行其角色所需的培训。软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生软件过程标准制定的考虑标 准 类 型标准的例子管理和计划性的标准配置管理估计与费用的

5、计算软件质量保证状态报告软件开发过程和方法需求分析设计方法指南文档的编写模板和指南编码标准集成和测试评审、走查以及审查等工具和方法产品的命名和编号(标识)规模和费用的测量缺陷的计算和记录代码编辑和编译工具文档编写系统或体系编程语言与规范软件库的建立与维护标准的建立过程 1) 在组织层面上,建立一个制定标准的战略和体系框架,说明标准的优先顺序 2) 分发出去征求意见,对其进行评审,并确定战略和体系框架 3) 针对具体标准,组成起草小组,优先编写最需要的标准草案 关注: a) 草案与战略的关系 b) 外部和内部环境的变化 c) 兼顾先进性和实用性 4) 尽可能广泛地分发草案,并进行评审 5) 获得

6、反馈意见,并进行归纳和修改、评审 6) 在一定的范围内进行实验 7) 依据实验的经验,对标准进行修订 8) 批准与发布 9) 宣传与培训 10) 运用标准,采集标准使用中的经验和问题,为修订积累资料 软件过程改进方法与实践案例王安生项目管理流程的剪裁 软件开发,例如,瀑布模型、增量模型 等只是一个模型。 实际上,没有一个项目会完全遵循教科书上的模型,因为: 每个企业的组织结构不同,项目的流程就不同 每个项目的组织结构不同,项目的管理、评审、具体工作分工就不同 每个项目需求不同, 每个项目规模不同,所需资源不同 等等 在一个大项目中,每个子项目可能采用不同的管理模式。因此,只能说项目的流程接近于

7、某个开发模型。软件过程改进方法与实践案例王安生项目流程的剪裁过程 组织的标准 过程文本 裁缝指南 裁缝过程: 1) 选择过程模型 2) 删除不需要的条款 3) 修改不合适的条款 4) 添加需要的条款 项目的: 需求、进 度、质量、费用等因素 甲乙方 确认? 项目过程文本 项目文档 规范或模板 用户/甲 方对项 目 的 政 策性要求 企业经营策略 类似项目的经验 甲乙双方 的合同 软件过程改进方法与实践案例王安生文档编制模板样例4. 软件配置项设计.4.X 软件部件设计4.X.1 软件部件的前置条件4.X.2 软件部件的结构4.X.3软件部件的后置条件4.X.4软件部件的技术风险.软件过程改进方

8、法与实践案例王安生文档格式完整性的自动检查 标准 文档模板 1. 提取章节标题、编号 被检查的文档 Words 2. 与标准文档模板比对 3. 将不一致的章节标题、编号与剪裁比对 剪裁后的文档模板 与标准模板的差异 与剪裁后模板的差异 软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生洛克希德马丁的标准建立与剪裁 LM 企业政策 ANS/EIA-632 ISO 9001:2000 CMMI 1.1 ISO/IEC-12207 LM-硬件过程 标

9、准 ISO/IEC-15288 LM-IEP 标准 EPI 过程与方法 行业标准 政府标准 领域特的标准 政府标准 组织层面的标准 过程 项目定义 的过程 公共标准源 参考 EPI:工程过程改进 信息 IEEE 1220 行业标准 项目特定标准 项目指定标准 领域特定标准 标准过程 集成方法 集成工作 产品 对组织层面 过程的剪裁 公司或商业单位 软件过程改进方法与实践案例王安生剪裁? 剪裁是为了: 依据项目的特征给出适合项目管理需要的流程 给出中间产品(文档)的要求 降低软件开发的工作量 降低评审和审核的工作量 剪裁的 字面上好像就是简化 实际上也要包括添加一些要求、环节等 “剪裁”要理解为

10、“裁缝”,具体的操作为: D删除一些要求条款 U 修改一些要求条款 A 添加一些要求条款 剪裁的批准 剪裁后的输出要经过审核和批准 对标准的随意剪裁,比没有标准更糟糕!软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生PDB与文档库的建立 过程数据库(PDB,Process DataBase),简称为过程库,是一个长期保存软件过程数据。PDB保存从关键工程过程和所产生的产品的过程数据,以及过程中的文档。 1.建立过程库2.评审进入过程库的数据3

11、.过程数据库要受到管理和控制4. 控制用户访问过程库的内容过程库过程库软件过程改进方法与实践案例王安生PDB与文档库的建立1.建立过程库采集有关软件过程及其软件工作产品的数据,并使用这些数据。采集的过程和工作产品的数据主要包括:软件规模、工作量和成本的估计,有关软件规模、工作量和成本的实际测量数据,生产率数据,质量测量数据,同行评审的覆盖率和效率,测试的覆盖率和效率,软件可靠性测量数据,等2.评审进入过程库的数据以确保过程库内容的完整性。除此之外,过程库还包含或引用那些为了解和解释实际测量数据以及评价其合理性和适用性所需要的实际测量数据及有关信息和数据。3.过程数据库要受到管理和控制4. 控制

12、用户访问过程库的内容以确保数据的完备性、完整性和精度。对于那些需要输入、更改、查看、分析或提取数据的人,访问过程库是受到限制的。保护敏感数据,并恰当地控制对这些数据的访问。软件过程改进方法与实践案例王安生PDB中的数据 反映项目过程整体性能的数据反映项目过程整体性能的数据: 例如,规模、费用、进度数据等。这些数据可以用来对类似项目估计确认,生成估计的因素。 产品度量元产品度量元: 表示产品的自然特性、结构和质量的基本信息。这些信息可以用来评估产生的结果以及过程活动与结果之间的关联性。 过程度量元过程度量元: 具体的过程任务的生产效率和质量特性,可以用来评估任务的效率,标识过程改进中最需要处理的

13、领域。软件过程改进方法与实践案例王安生数 据 类 型度 量 元计划的实际的软件规模Software sizeLine of Code(LOC代码行)Normalized Line of Code (规范化代码行)工作量按各阶段统计的工作量成本按各阶段统计的成本同行评审的覆盖率例如,评审的需求文档数/总的需求文档数 * 100 %同行评审的效率例如,文档的汉字数/评审组的工作量 *100%测试的覆盖率被测试的功能点数/总的功能点数 *100%测试的效率测试的功能点/工作量 * 100%需求评审的缺陷数和严重性缺陷个数/需求文档的千字数 * 100%按严重程度进行分类,例如,GJB 2786分为:

14、15级,1最严重代码评审的缺陷数和严重性缺陷个数/代码千行数 * 100%按严重程度进行分类,例如,GJB 2786分为:15级,1最严重过程库中收集的常用数据 软件过程改进方法与实践案例王安生NASA对软件错误的分类 CO= Computational Error(计算类错误)OP = Operational Error(操作错误)LO = Logic Error(逻辑错误)RI = Requirements Incorrect(需求不准确)DH = Data Handling Error(数据处理错误)DE = Design Error(设计错误)IN = Interface Error(

15、接口错误)CL = Clerical Error(书写错误)DB = Data Base error(数据库错误)OT = Other软件过程改进方法与实践案例王安生文档库 软件项目文档包括了: 项目定义软件过程的说明、项目的标准、项目的规程、项目的软件开发计划、项目的测量计划以及项目的过程培训材料。 在项目的执行过程中: 1) 定期地评审候选的文档,并把将来可能有用的那些文档放入文档库中。 2) 对软件文档分类编目,以便于今后的查询和检索。 3) 评审对当前库内文档所做的修改,在合适的时候更新该库的内容。 4) 建立文档的检索、标注、查询体系,以便于软件项目组和其他软件有关组(如软件质量保证

16、组、软件配置管理组、软件测试组和文档编制支持组)能够方便、灵活地使用这些文档。 5) 定期评审每个文档的使用情况,将结果用于维护库内容。 6) 文档库的内容要受到管理和控制。软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生SEPG组的作用 SPEG必须有组织的高层经理担当组长,同时吸收具有广泛代表性的成员参加。 SEPG组的基本任务是: 启动和鼓舞过程更改,支持正常的运行。 SEPG组广泛地支持其他组的工作, 例如,技术支持、培训、费用估计、

17、标准制定以及SQA的工作。 在大型的企业,可以为每个领域建立专业的队伍; 对于中小企业,SEPG组可以承担和指导工作,直到所有的功能区都建立起来。软件过程改进方法与实践案例王安生SEPG组的作用 在标准的建立上,SEPG组需要承担如下的主要工作: 1) 提出和制订符合组织战略利益的标准体系和框架; 2) 给出最为优先考虑的标准; 3) 确保优先使用的标准,先评审、先使用; 4) 在标准的开发过程中,尽可能地吸收专家、一线人员和用户的意见; 5) 协调和解决标准制定过程中的矛盾、冲突意见。站在战略角度解析和寻找可行的、折中方案。软件过程改进方法与实践案例王安生主题 建立标准软件过程的必要性 软件

18、标准的建立和剪裁 洛克希德马丁的标准建立 PDB与文档库的建立 SEPG组的作用 全面管理与工程实施 软件过程改进方法与实践案例王安生全面管理与工程实施 “集成软件管理”“组间协调”“软件产品工程”“同行评审”项目全面管理项目全面管理和实施和实施全面管理全面管理工程实施工程实施软件过程改进方法与实践案例王安生全面管理“集成软件管理”的目标1) 项目定义的软件过程是组织的标准软件过程的剪裁版本。2) 按照项目定义的软件过程对项目进行策划和管理。“组间协调”的目标1) 所有受影响的组都同意顾客需求。2) 受影响的组同意工程组间的承诺。3) 工程组标识、跟踪和解决组间问题。软件过程改进方法与实践案例

19、王安生工程实施 “软件产品工程”的目标1) 为生产软件,软件工程任务已定义、集成,并得到一致实施。2) 软件工作产品保持相互一致。“同行评审”的目标1) 同行评审活动是有计划的。2) 标识并消除软件工作产品中的缺陷。“集成软件管理”的主要活动 主 要 活 动描 述与其他过程域的关系“裁缝”出项目的过程通过按照文档化的规程剪裁组织的标准软件过程,制定项目定义的软件过程组织过程定义修订项目的过程按照文档化的规程修订项目定义的软件过程考虑引起项目定义的软件过程更改的原因,通常包括:从监督组织各项目的软件活动中得到的经验教训、软件项目建议的更改以及过程和工作产品的测量数据对因上述原因引起的更改,进行系

20、统地评审在采纳对项目定义的软件过程的更改之前,应经过评审和批准。参加评审的人员包括,负责组织的软件过程活动的组(SEPG)的成员、软件经理和项目软件经理组织过程定义软件过程改进方法与实践案例王安生“集成软件管理”的主要活动 主 要 活 动描 述与其他过程域的关系制定和修订软件开发计划按照文档化的规程,制定和修订项目的软件开发计划,该计划描述项目定义的软件过程的使用软件项目策划项目管理按照项目定义的软件过程,管理软件项目软件项目跟踪和监督使用PDB利用组织的软件过程,数据库进行软件策划和估计组织过程定义软件项目策划产品规模管理按照文档化的规程,管理软件工作产品的规模(或软件工作产品更改的规模)软

21、件项目策划软件项目跟踪和监督工作量和成本管理按照文档化的规程,管理项目的软件工作量和成本关键计算机资源的管理按照文档化的规程管理项目的关键计算机资源软件过程改进方法与实践案例王安生“集成软件管理”的主要活动 主 要 活 动描 述与其他过程域的关系进度管理按照文档化的规程,管理项目软件进度的关键依赖关系和关键路径软件项目策划软件项目跟踪和监督组间协调风险管理按照文档化的规程,对项目的软件风险进行标识、评估、文档化和管理管理的软件风险包括:软件项目在进度、成本、功能性、吞吐量或实时性、 可靠性或可用性及关键计算机资源的使用等领域不能满足目标的显著可能性风险管理活动包括:高风险项目的早期标识,可能引

22、起或增加风险的事件的标识,高风险模块原型化或早期实现,及关键项目风险指标的密切监控软件项目策划软件项目跟踪和监督需求与业务变更管理定期进行软件项目评审,以便确定采取必要措施,使软件项目的性能和结果与业务、顾客和最终用户的当前需求和预测需求相一致采取的措施包括:加快进度,更改系统需求以适应市场机遇的变化或顾客和最终用户需求的变化,以及及时终止项目需求管理软件过程改进方法与实践案例王安生“组间协调”的主要活动 主 要 活 动描 述与其他过程域的关系协同建立需求软件工程组和其他工程组与顾客和最终用户合作建立系统需求监督和协调解决问题项目的软件工程组代表和其他工程组代表一起监督和协调技术活动,并解决技

23、术问题1) 协调规格说明,并提供对系统需求和系统设计的技术评审和批准2) 各组的代表一起处理技术问题,解决项目层矛盾,并澄清系统需求和设计问题; 提出解决问题的联合建议;处理项目内跨工程组的过程问题集成软件管理计划的跟踪和协调按照文档化的计划,交流组间承诺以及协调并跟踪所做的工作1) 以计划为依据,作为进度、合同条款和下列工程组的职责的基线2) 用于协调不同工程组间的活动3) 达成组间承诺和协调对这些承诺的更改4) 反映项目层的进展和计划更改,特别是在项目的主要里程碑完成时和计划有重大更改时集成软件管理软件项目跟踪和监督依赖关系的协调软件过程改进方法与实践案例王安生“组间协调”的主要活动 主

24、要 活 动描 述与其他过程域的关系产品检验所产生的作为其他工程组输入的工作产品,要由接收组的代表评审,以确保产品满足其需要冲突的处理按照文档化的规程,处理项目工程组的代表无法解决的组间问题。定期评审项目工程组的代表定期进行技术评审和交流。软件项目跟踪和监督集成软件管理软件过程改进方法与实践案例王安生 “软件产品工程 ”的主要活动生命周期阶段活动工 作 要 点与其他关键过程域的关系工具、方法纳入过程中将合适的软件工程方法和工具集成到项目定义的软件过程集成软件管理需求阶段按照项目定义的软件过程系统地分析和分配需求,以便制定、维护、文档化并验证软件需求需求管理开发框架按照项目定义的软件过程,开发、维

25、护、文档化和验证软件设计,以适应软件需求并形成编码的框架软件配置管理同行评审代码开发与验证按照项目定义的软件过程,开发、维护、文档化和验证软件代码,以实现软件需求和软件设计软件配置管理同行评审测试按照项目定义的软件过程进行软件测试软件配置管理同行评审软件过程改进方法与实践案例王安生 “软件产品工程 ”的主要活动生命周期阶段活动工 作 要 点与其他关键过程域的关系集成测试按照项目定义的软件过程,策划并实施软件集成测试。具体要求包括:基于软件开发计划制定集成测试计划,并文档化;负责软件需求、软件设计、系统测试和验收测试的人员,评审集成测试用例和测试过程;对照指定版本的软件需求文档和软件设计文档,执

26、行软件集成测试软件配置管理同行评审系统测试和验收测试策划并实施软件的系统测试和验收测试,以证实软件是否满足其需求执行系统测试,以确保软件满足软件需求执行验收测试,以向顾客和最终用户证实软件满足分配需求软件配置管理同行评审运行与维护文档的编写按照项目定义的软件过程,编写和维护用于操作和维护软件的文档软件配置管理同行评审“同行评审”的主要活动 主 要 活 动工 作 要 点与其他关键过程域的关系活动的计划性策划同行评审,并将其计划文档化a) 标识需经同行评审的软件工作产品b) 规定同行评审的进度组织过程定义软件产品工程执行同行评审a) 由受过培训的同行评审组组长策划并领导同行评审b) 提前将评审材料

27、分发给评审员,以便其能为同行评审作好充分准备c) 对每个评审员赋予在同行评审中的角色d) 规定并强制实施同行评审的就绪准则和完成准则e) 使用检查单,以便以一致的方式标识软件工作产品评审的准则f) 跟踪同行评审中所标识的措施,直至其解决g) 将同行评审(包括对同行评审中所标识问题的返工)的成功完成,作为相关任务的完成准则之一集成软件管理软件产品工程数据记录记录有关同行评审的实施情况和结果的数据,例如:被评审的软件工作产品的标识软件工作产品的规模评审组的规模和构成每个评审者的准备时间评审会议的长度所发现和修复的缺陷类型和数量返工工作量软件产品工程评 审 准 则评 审 准 则定义或解释内部一致性a

28、. 在文档中没有互相矛盾的两条语句b. 在文档中一个给定术语、简称或缩略语始终指相同的事情c. 文档中对一个给定项目或概念始终采用相同的名称或叙述可理解性a. 文档与有关样本手册大写、标点、符号和注解的规定b. 所有未包含在军用标准和国家标准中的术语均已定义c. 所有简称和缩略语在第一次使用时, 其前面均使用全称,除非第一次使用是出现在表、图示、插图或公式中, 但在正文或脚注中已给予解释d. 所有的表、图示、插图在其出现之前, 均已在正文中按它们出现的顺序引用过对指定文档的可追踪性a. 该文档包含或执行了原有文档中的合适规定b. 这些文档中同一术语、简称或缩略语指相同的事情c. 这些文档中对同一项目或概念采用相同的名称或叙述d. 后续文档里的所有材料,在原有文档里均有根据,不得引入不可追踪的材料e. 两个文档不互相矛盾与指定文档的一致性文档之间的一致性指两个或多个非层次相关的文档不互相矛盾。一致性的要素是: a. 没有互相矛盾的两个语句b. 这些文档中同一术语、简称或缩略语指相同的事情c. 这些文档中对同一项目或概念采用相同的名称或叙述 软件过程改进方法与实践案例王安生评 审 准 则(续)评 审 准 则定义或解释使用适当的分析、设计或编码技术在合同中,应包括需求分析、设计和准备采用的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论