搜档网
当前位置:搜档网 › 软件CMMI

软件CMMI

软件CMMI
软件CMMI

Capability Maturity Model Integration,能力成熟度模式整合)

CMMI(Capability Maturity Model Integration)的本质是软件管理工程的一个部分。软件过程改善是当前软件管理工程的核心问题,50多年来计算的发展使人们认识到要高效率、高质量和低成本地开发软件,必须改善软件生产过程。基於模型的过程改进是指用采用能力模型来指导组织的过程改进,使之过程能力稳定的进行改善,该组织也能变得更加成熟。

然而,软件组织形成一套完整而成熟的软件过程不是一蹴而就的事情,需要经历一系列的成熟度。软件组织首先要进行差异分析,评定自己比较接近哪一个成熟度,然后再根据自身的情况来决定要采取哪些改进活动,来更有效地改进自己的软件过程。这就对软件过程的评定提出了一个客观的标准。美国卡内基梅隆大学软件工程学院於1987年研究成功的SW-CMM (Capability Maturity Model for Software)就是这样的一个理论模型,其目的在於帮助软件组织改善软件生产流程,以探索一个保证软件产品质量、缩短开发周期、提高工作效率的软件工程模式与标准规范。

CMMI

CMM的成功促使其他学科也相继开发类似的过程改进模型,例如系统工程、需求工程、人力资源、集成产品开发、软件采购等等,从CMM衍生出了一些改善模型,比如:SW-CMM,SE-CMM,IPD-CMM等。不过,在同一个组织中多个过程改进模型的存在可能会引起冲突和混淆。CMMI就是为了解决怎麼保持这些模式之间的协调。

由业界、美国政府和卡内基·梅隆大学软件工程研究所率先倡导的能力成熟度模型集成(CMMI)项目致力於帮助企业缓解这种困境。CMMI为改进一个组织的各种过程提供了一个单一的集成化框架,新的集成模型框架消除了各个模型的不一致性,减少了模型间的重复,增加透明度和理解,建立了一个自动的、可扩展的框架。因而能够从总体上改进组织的质量和效率。CMMI主要关注点就是成本效益、明确重点、过程集中和灵活性四个方面。

与原有的能力成熟度模型类似,CMMI也包括了在不同领域建立有效过程的必要元素,反映了业界普遍认可的"最佳"实践;专业领域覆盖软件工程、系统工程、集成产品开发和系统采购。在此前提下,CMMI为企业的过程构建和改进提供了指导和框架作用;同时为企业评审自己的过程提供了可参照的行业基准。

CMMI的源模型:软件能力成熟度模型2.0版,C稿;电子行业协会临时标准(EIA/IS)731;集成产品开发能力成熟度模型(IPD- CMM)。

CMMI的原则:

1.强调高层管理者的支持。过程改进往往也是由高层管理者认识和提出的,大力度的、一致的支持是过程改进的关键。

2.仔细确定改进目标,首先应该对给定时间内的所能完成的改进目标进行正确的估计和定

义并制定计划。选择能够达到的目标和能够看到对组织的效益。

3.选择最佳实践,应该基於组织现有的软件活动和过程财富,参考其他标准模型,取其精华去其糟粕,得到新的实践活动模型。

4.过程改进要与组织的商务目标一致,与发展战略紧密结合。

CMMI目标:

1. 为提高组织过程和管理产品开发、发布和维护能力的提供保障。

2. 帮助组织客观评价自身能力成熟度和过程域能力,为过程改进建立优先级以及执行过程改进。

CMMI的方法:

1 决定哪个CMMI模型等级最适合组织过程改进需要。

2 选择模型的表示法是连续式还是阶段式。

3 决定组织需要用到的模型中的知识领域。

4 类似CMM提出的过程改进6步,集成化过程改进分成:开始集成过程改进,建造集成改善平台,集成传统过程,启动新过程,进行改进评估。

CMMI内容

CMMI内容分为"要求"、"期望"和"提供信息"三个级别,来衡量模型包括的质量重要性和作用。最重要的是"要求"级别,是模型和过程改进的基础。第二级别"期望"在过程改进中起到主要作用,但是某些情况不是必须的可能不会出现在成功的组织模型中。"提供的信息"构成了模型的主要部分,为过程改进提供了有用的指导,在许多情况下他们对需要和期望的构件做了进一步说明。

"要求"的模型构件是目标,代表了过程改进想要达到的最终状态,它的实现表示了项目和过程控制已经达到了某种水平。当一个目标对应一个关键过程域,就称为"特定目标";对应整个关键过程域就称为"公用目标"。整个CMMI模型包括了54个特定目标,每个关键过程域都对应了一到四个特定目标。每个目标的描述都是非常简捷的,为了充分理解要求的目标就是扩展"期望"的构件。

"期望"的构件是方法,代表了达到目标的实践手段和补充认识。每个方法都能映射到一个目标上,当一个方法对一个目标是唯一就是"特定方法";而能适用於所有目标时就是"公用方法"。CMMI模型包括了186个特定方法,每个目标有两到七个方法对应。

CMMI包括了10种"提供的信息":目的,概括和总结了关键过程域的特定目标;介绍说明,

介绍关键过程域的范围、性质和实际方法和影响等特徵;引用,关键过程域之间的指向是通过引用;名字,表示了关键过程域的构件;方法和目标关系,关键过程域中方法映射到目标的关系表;注释,注释关键过程域的其他模型构件的信息来源;典型工作产品集,定义关键过程域中执行方法时候产生的工作产品;子方法,通过方法活动的分解和详细描述;学科扩充,CMMI对应学科是独立的,这里提供了对应特定学科的扩展;公用方法的详细描述,关键过程域中公用方法应用实践的详细描述。

CMMI提供了阶段式和连续式两种表示方法,但是这两种表示法在逻辑上是等价的。我们熟悉的SW-CMM软件能力成熟模型就是阶段式的模型,SE-CMM系统工程模型是连续式模型,而IPD-CMM集成产品开发模型结合了阶段式和连续式两者的特点。

阶段式方法将模型表示为一系列"成熟度等级"阶段,每个阶段都有一组KPA指出一个组织应集中於何处以改善其组织过程,每个KPA用满足其目标的方法来描述,过程改进通过在一个特定的成熟度等级中满足所有KPA的目标而实现的。

连续式模型没有像阶段式那样的分散阶段,模型的KPA中的方法是当KPA的外部形式,并可应用於所有的KAP中,通过实现公用方法来改进过程。它不专门指出目标,而是强调方法。组织可以根据自身情况适当裁剪连续模型并以确定的KPA为改进目标。

两种表示法的差异反应了为每个能力和成熟度等级描述过程而使用的方法,他们虽然描述的机制可能不同,但是两种表示方法通过采用公用的目标和方法作为需要的和期望的模型元素,而达到了相同的改善目的。

CMMI 模型的前身是SW-CMM 和SE-CMM,前者就是我们指的CMM。CMMI与SW-CMM 的主要区别就是覆盖了许多领域;到目前为止包括四个下面领域:

1.软件工程(SW-CMM)

软件工程的对象是软件系统的开发活动,要求实现软件开发、运行、维护活动系统化、制度化、量化。

2.系统工程(SE-CMM)

系统工程的对象是全套系统的开发活动,可能包括也可能不包括软件。系统工程的核心是将客户的需求、期望和约束条件转化为产品解决方案,并对解决方案的实现提供全程的支持。

3.集成的产品和过程开发(IPPD-CMM)

集成的产品和过程开发是指在产品生命周期中,通过所有相关人员的通力合作,采用系统化的进程来更好地满足客户的需求、期望和要求。如果项目或企业选择IPPD进程,则需要选用模型中所有与IPPD相关的实践。

4.采购(SS-CMM)

采购的内容适用於那些供应商的行为对项目的成功与否起到关键作用的项目。主要内容包括:识别并评价产品的潜在来源、确定需要采购的产品的目标供应商、监控并分析供应商的实施过程、评价供应商提供的工作产品以及对供应协议和供应关系进行适当的调整。

在以上模块中,企业可以选择软件工程,或系统工程,也可以都选择。集成的产品和过程开发和采购主要是配合软件工程和系统工程的内容使用。例如,纯软件企业可以选择CMMI 中的软件工程的内容;设备制造企业可以选择系统工程和采购;集成的企业可以选择软件工程、系统工程和集成的产品和过程开发。CMMI中的大部分内容是适用各不同领域的,但是实施中会有显著的差别,因此模型中提供了"不同领域应用详解"。

CMM的基於活动的度量方法和瀑布过程的有次序的、基於活动的管理规范有非常密切的联系,更适合瀑布型的开发过程。而CMMI相对CMM更一步支持迭代开发过程和经济动机推动组织采用基於结果的方法:开发业务案例、构想和原型方案;细化后纳入基线结构、可用发布,最后定为现场版本的发布。虽然CMMI保留了基於活动的方法,它的确集成了软件产业内很多现代的最好的实践,因此它很大程度上淡化了和瀑布思想的联系。

在CMMI 模型中在保留了CMM阶段式模式的基础上,出现了连续式模型,这样可以帮助一个组织以及这个组织的客户更加客观和全面的了解它的过程成熟度。同时,连续模型的采用可以给一个组织在进行过程改进的时候带来更大的自主性,不用再像CMM 中一样,受到等级的严格限制。这种改进的好处是灵活性和客观性强,弱点在於由於缺乏指导,一个组织可能缺乏对关键过程域之间依赖关系的正确理解而片面的实施过程,造成一些过程成为空中楼阁,缺少其他过程的支撑。两种表现方式(连续的和阶段的)从他们所涵盖的过程区域上来说并没有不同,不同的是过程区域的组织方式以及对成熟度(能力)级别的判断方式。

CMMI 模型中比CMM 进一步强化了对需求的重视。在CMM 中,关於需求只有需求管理这一个关键过程域,也就是说,强调对有质量的需求进行管理,而如何获取需求则没有提出明确的要求。在CMMI的阶段模型中,3 级有一个独立的关键过程域叫做需求开发,提出了对如何获取优秀的需求的要求和方法。CMMI 模型对工程活动进行了一定的强化。在CMM 中,只有3级中的软件产品工程和同行评审两个关键过程域是与工程过程密切相关的,而在CMMI中,则将需求开发,验证,确认,技术解决方案,产品集成这些工程过程活动都作为单独的关键过程域进行了要求,从而在实践上提出了对工程的更高要求和更具体的指导。CMMI中还强调了风险管理。不像在CMM 中把风险的管理分散在项目计划和项目跟踪与监控中进行要求,CMMI3级里单独提出了一个独立的关键过程域叫做风险管理。

cmmi软件生产过程标准

何谓CMM? CMM是由美国卡内基-梅隆大学的软件工程研究所(SEI)推出的评估软件能力与成熟度的一套模型。它侧重于软件过程开发的管理及软件工程能力的改进与评估,是目前国际上最流行、比较实用的一种软件生产过程标准,成为当今企业从事规模软件生产不可缺少的一项内容。CMM模型共分为五个级别:初始级、可重复级、定义级、管理级和优化级。 软件工程:什么是CMMI? CMMI全称是Capability Maturity Model Integration, 即软件能力成熟度模型集成模型,是由美国国防部与卡内基-梅隆大学和美国国防工业协会共同开发和研制的。CMMI是一套融合多学科的、可扩充的产品集合,其研制的初步动机是为了利用两个或多个单一学科的模型实现一个组织的集成化过程改进 CMMI分为五个等级,二十五个过程区域(PA)(如图所示)。 1.初始级软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。 2.已管理级建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。 3.已定义级已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。 4.量化管理级分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。5.优化管理级过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。 每个等级都被分解为过程域,特殊目标和特殊实践,通用目标、通用实践和共同特性: 每个等级都有几个过程区域组成,这几个过程域共同形成一种软件过程能力。每个过程域,都有一些特殊目标和通用目标,通过相应的特殊实践和通用实践来实现这些目标。当一个过程域的所有特殊实践和通用实践都按要求得到实施,就能实现该过程域的目标。 CMMI的原则、目标和方法 一、CMMI的原则: 1.强调高层管理者的支持。过程改进往往也是由高层管理者认识和提出的,大力度的、一致的支持是过程改进的关键。 2.仔细确定改进目标,首先应该对给定时间内的所能完成的改进目标进行正确的估计和定义并制定计划。选择能够达到的目标和能够看到对组织的效益。 3.选择最佳实践,应该基于组织现有的软件活动和过程财富,参考其他标准模型,取其精华去其糟粕,得到新的实践活动模型。 4.过程改进要与组织的商务目标一致,与发展战略紧密结合。 二、CMMI目标:

cmmi软件开发流程

软件开发流程软件项目生命周期模型

需求分析 需求分析流程图 过程描述 1、由部门经理组建临时项目组,并指定PM、开发人员、测试人员、QA,人数根据项目规模确定。

2、PM制定需求阶段日程表,该表须通过研发经理审核。 3、PM指示配置管理员建立配置库。 4、由PM与测试负责人提出裁剪申请,QA指导临时项目组人员对项目进行裁剪,形成项目裁剪表。 5、EPG和部门经理对裁剪结果进行审批,审批通过项目裁剪表正式生效。 6、PM与测试负责人确定项目管理机制,内容包括组织结构、沟通、跟踪、报告、风险管理、问题管理、QA、CM等。 7、项目组人员与客户进行沟通,编写需求清单列表。 8、PM组织临时项目组成员确定系统架构,编写架构设计书和需求规格书。架构设计过程中的重要的技术方案选择、开发/采购/复用分析等内容要明确体现在架构设计书中。 对技术方案选择(例如,系统结构、开发平台、数据库等的选择),要事先建立评价准则(例如,满足系统需求的能力(例如,功能、性能、可靠性等)、技术的发展前景、 供应商资质与实力等)及相对优先级,采用讨论表决的方法选择并确定最终的技术方 案。 关于自行开发和采购复用的分析, 如果公司有基本满足系统需要的可复用组件(包括其分析、设计、代码、测试用例等),一般应进行复用; 本公司没有能力开发或没有必要开发的非核心技术部分,如果采购成本在项目可接 受范围内,可考虑采购; 否则,由项目组自行开发。 架构设计的总体候选方案选择和供应商选择要使用正式的方法做决策。 9、PM召集临时项目组、测试负责人等技术骨干评审架构设计书和需求规格书。 10、PM组织临时项目组与客户沟通、说明需求,必要时编制系统原型向客户展示,直到临时项目组、客户就需求的真实含义达成共识、客户书面确认需求规格书为止。 11、临时项目组确定项目目标的范围,明确系统边界,建立系统的模块分解结构。 12、PM与测试负责人遵循《项目估算流程》组织人员进行项目估算。 13、PM、测试负责人与临时项目组确定项目关键参数。 工作量、工期、日程、人数 成本/预算(由于本公司的项目的绝大部分成本是人力成本,对估计成本的管理等同于估计工作量的管理,对实际成本的管理等同于实际工作量的管理,对预 算的管理等同于计划工作量的管理。) 质量目标 14、PM、测试负责人与部门经理协调人员及资源、计划知识技能、协调相关干系人的参与。 15、项目组基于公司环境标准,结合项目实际情况建立适合的工作环境。 16、PM、测试负责人编制项目计划书。 17、PM、测试负责人编制项目日程表。 18、临时项目组、研发部、QA评审项目计划书,评审通过后正式生效。 19、PM指示配置管理员建立配置基线。 20、PM编制阶段总结报告(项目总结报告中的度量分析页面),召开阶段会议。

cmmi软件开发流程

c m m i软件开发流程 Prepare d on 24 November 2020

软件开发流程软件项目生命周期模型

需求分析 需求分析流程图 过程描述 1、由部门经理组建临时项目组,并指定PM、开发人员、测试人员、QA,人数根据项目规模确定。

2、PM制定需求阶段日程表,该表须通过研发经理审核。 3、PM指示配置管理员建立配置库。 4、由PM与测试负责人提出裁剪申请,QA指导临时项目组人员对项目进行裁剪,形成项目裁剪表。 5、EPG和部门经理对裁剪结果进行审批,审批通过项目裁剪表正式生效。 6、PM与测试负责人确定项目管理机制,内容包括组织结构、沟通、跟踪、报告、风险管理、问题管理、QA、CM等。 7、项目组人员与客户进行沟通,编写需求清单列表。 8、PM组织临时项目组成员确定系统架构,编写架构设计书和需求规格书。架构设计过程中的重要的技术方案选择、开发/采购/复用分析等内容要明确体现在架构设计书中。 ?对技术方案选择(例如,系统结构、开发平台、数据库等的选择),要事先建立评价准则(例如,满足系统需求的能力(例如,功能、性能、可靠性等)、技术的发展前景、供应商资质与实力等)及相对优先级,采用讨论表决的方法选择并确定最终的技术方案。 ?关于自行开发和采购复用的分析, ?如果公司有基本满足系统需要的可复用组件(包括其分析、设计、代码、测试用例等),一般应进行复用; ?本公司没有能力开发或没有必要开发的非核心技术部分,如果采购成本在项目可接受范围内,可考虑采购; ?否则,由项目组自行开发。 架构设计的总体候选方案选择和供应商选择要使用正式的方法做决策。 9、PM召集临时项目组、测试负责人等技术骨干评审架构设计书和需求规格书。 10、PM组织临时项目组与客户沟通、说明需求,必要时编制系统原型向客户展示,直到临时项目组、客户就需求的真实含义达成共识、客户书面确认需求规格书为止。 11、临时项目组确定项目目标的范围,明确系统边界,建立系统的模块分解结构。 12、PM与测试负责人遵循《项目估算流程》组织人员进行项目估算。 13、PM、测试负责人与临时项目组确定项目关键参数。 ?工作量、工期、日程、人数 ?成本/预算(由于本公司的项目的绝大部分成本是人力成本,对估计成本的管理等同于估计工作量的管理,对实际成本的管理等同于实际工作量的管理,对预算的管理等同于计划工作量的 管理。) ?质量目标 14、PM、测试负责人与部门经理协调人员及资源、计划知识技能、协调相关干系人的参与。 15、项目组基于公司环境标准,结合项目实际情况建立适合的工作环境。 16、PM、测试负责人编制项目计划书。 17、PM、测试负责人编制项目日程表。 18、临时项目组、研发部、QA评审项目计划书,评审通过后正式生效。 19、PM指示配置管理员建立配置基线。 20、PM编制阶段总结报告(项目总结报告中的度量分析页面),召开阶段会议。

cmmi软件开发流程

c m m i软件开发流程 公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-

软件开发流程软件项目生命周期模型

需求分析需求分析流程图

过程描述

1、由部门经理组建临时项目组,并指定PM、开发人员、测试人员、QA,人数根据项目规模确定。 2、PM制定需求阶段日程表,该表须通过研发经理审核。 3、PM指示配置管理员建立配置库。 4、由PM与测试负责人提出裁剪申请,QA指导临时项目组人员对项目进行裁剪,形成项目裁剪表。 5、EPG和部门经理对裁剪结果进行审批,审批通过项目裁剪表正式生效。 6、PM与测试负责人确定项目管理机制,内容包括组织结构、沟通、跟踪、报告、风险管理、问题管理、QA、CM等。 7、项目组人员与客户进行沟通,编写需求清单列表。 8、PM组织临时项目组成员确定系统架构,编写架构设计书和需求规格书。架构设计过程中的重要的技术方案选择、开发/采购/复用分析等内容要明确体现在架构设计书中。 对技术方案选择(例如,系统结构、开发平台、数据库等的选择),要事 先建立评价准则(例如,满足系统需求的能力(例如,功能、性能、可靠 性等)、技术的发展前景、供应商资质与实力等)及相对优先级,采用讨 论表决的方法选择并确定最终的技术方案。 关于自行开发和采购复用的分析, 如果公司有基本满足系统需要的可复用组件(包括其分析、设计、代码、 测试用例等),一般应进行复用; 本公司没有能力开发或没有必要开发的非核心技术部分,如果采购成本 在项目可接受范围内,可考虑采购; 否则,由项目组自行开发。 架构设计的总体候选方案选择和供应商选择要使用正式的方法做决策。

CMMI体系简介及软件工作流程

CMMI体系简介及软件工作流程 质量管理部 2009年03 月 华丽娜主题 第一部分:CMMI基础知识 CMMI是什么 CMMI发展和厉史 CMMI模型组件概述 第二部分:公司质量体系文件综述 公司软件过程概述 公司过程文件概述 公司体系文件导读 CMMI是什么? ◆Capability Maturity Model Integration(能力成熟度模型综合) 它综合了以下几方面: System engineering Software engineering Integrated Product and Process Development Supplier Sourcing ◆该模型提供一套可供公众使用的准则;这些准则描述那些成功地 实施了过程改进的组织的特性。

◆该模型用“软件能力成熟度”来衡量这种软件综合能力 CMMI是什么? ?美国卡内塞一梅隆大学软件工程研究所(SEI)研制。 ?CMMI的前身是SW-CMM和SE-CMM ?CMMI有专门认证评估方法一SCAMPI 发展简史 草案于1997年制定(未广泛应用)。 到2000年,CMM演化成为 Software Engineering)于2002年1月正式推出。 CMMI的诞生(1) 版,经历了十多年,在这期间,IT产业有了长足的发展,相应的工 业标准或规范必然要不断地改进。 不再局限于纯粹软件的范崎。虽然人们了解和应用CMMI需要一定的 时间,但走CMMI将取代CMM这走必然的趋势。 CMMI的诞生(2) ◆CMMI为工业界和政府部门提供了一个集成的产品集,其主要目的 是消除不同模型之间的不一致和重复,降低基于模型改善的成本。 CMMI将以更加系统和一致的框架来指导组织改善软件过程,提高产品和服务的开发、获取和维护能力。 CMMI模型组件概述 CMMI分级(阶段)模型 CMMI阶段式模型的结构

汽车电子CMMI软件开发流程

汽车电子软件开发流程 ——CMMI篇 作者:朱忠安 版本: 1.0 状态:草版

1历史记录

2索引 1历史记录 (2) 2索引 (3) 3概要 (4) 4一般嵌入式系统开发简介 (5) 4.1嵌入式系统定义 (5) 4.2嵌入式系统的开发组织架构 (5) 4.3嵌入式系统软件开发流程图 (6) 4.4流程图简介 (7) 5CMMI软件团队解析 (8) 5.1CMMI软件开发流程标准 (8) 5.2软件研发组织架构解析 (9) 5.3软件项目开发过程 (9) 5.4系统测试组织结构 (9) 6CMMI软件项目变更管理 (10) 6.1软件变更控制工具介绍 (10) 6.2软件变更控制流程 (10) 7软件开发知识简介 (11) 7.1软件开发的特点 (11) 7.2如何做好软件开发 (11) 7.2.1客户角度 (11) 7.2.2供应商角度 (11)

3概要 本着为客户服务的宗旨,让更多的想进入汽车研发团队的工程师们了解和熟悉的软件开发流程,减少项目开发过程中不必要的误解,故做此介绍抛砖引玉。

4一般嵌入式系统开发简介 4.1嵌入式系统定义 对于嵌入式系统,一般教科书上面有这样定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,系统对功能、可靠性、成本、体积、耗电量和应用环境,有特殊要求的专用计算机系统,是将应用程序、操作系统和计算机硬件集成在一起的系统。 其实这句话不难理解,概括起来只有两点: <1>计算机系统 任何一个嵌入式系统必定是一个计算机系统,而最基本的计算机系统无外乎CPU,内存,输入设备,输出设备;嵌入式系统也是如此. 谈到这里,就必须要说到两个概念:微处理器和微控制器. 所谓微处理器很容易理解,就是中央处理器CPU,比如所ARM9,它的为处理器就是ARM920T.换句话说就是嵌入式系统的核心控制单元. 所谓微控制器,其实也不难理解;我们现在大部分的电子产品所使用的都是集成芯片,也就是一块芯片中不仅仅包含的是CPU,还把许多的外围设配都集成在一块芯片中,比如把PWM控制器,把flash,把音频处理器,把内存,把输入输出设备等都集成在一块芯片中,这样的一块集成多功能的芯片就是微控制器。基本上一块IC就是一个小型的嵌入式系统。这样的做的好处也是显而易见的:<1>可以减少嵌入式系统设计的复杂度;<2>节省成本,因为一块集成多功能的IC,比你去用一块CPU搭建外围设备的成本要少的多。 <2>特定应用 对于嵌入式产品的开发,一般都是具有特定的应用;根据特定的需求去定制的。比如仪表,一套完整的仪表系统,都是只适合与特定款型的车。因为电子产品的性质各有不同,嵌入式系统的开发也很难有一套统一的标准,没有一个国际标准组织或学术单位,规定嵌入式系统一定要用什么CPU,用什么开发语言,一定要用什么操作系统,一定要用哪一套开发工具。只会根据特定的需求去定制。 4.2嵌入式系统的开发组织架构 一般的研发团队都有很严谨漂亮的组织架构,嵌入式系统的研发团队也是如是;至少应该有以下小组。 <1>项目管理组 <2>硬件组 <3>产品外观和结构设计组 <4>软件组 1)软件项目管理组 2)固件组 3)系统组

CMMI需求开发

成熟度3级的工程过程域 目的 需求开发(Requirements Development, RD)的目的,在于产出并分 析客户、产品及产品组件的需求。 业界注释 本过程域描述客户、产品及产品组件等三种需求,这些需求说明相 关关键人员的需要,包括与产品生命周期各阶段 (如,验收测试准 则)及产品属性 (如,安全性、可靠性、与维护能力等) 有关的需 要。需求也包括选择某设计解决方案而产生的限制条件。例如:与 现成品整合的需求。 所有开发项目都有需求,从项目于维护活动的项目案例来看,产品 或产品组件的变更,是基于现有需求、设计、或实作的变更。需求 变更可能来自顾客或用户所记载的变更请求单,或来自于需求开发 过程的新需求形式。不论需求来源或型式,变更所驱动的维护活动 也要加以管理。 需求是设计的基础,需求的开发包括下列活动: 引导、分析、验证,以及沟通客户的需要、期望及限制,以获 得客户需求,并达成关键人员的共识 搜集和协调关键人员的需要 开发产品的生命周期需求 建立客户需求 建立与客户需求一致的原始产品及产品组件需 因为客户也可能提出特定的设计需求,本过程域讨论所有客户的需 求,而非局限于产品层次的需求。 客户需求可进一步细化为产品及产品组件需求。除客户需求外,选 定的解决方案也可能衍生产品及产品组件需求。整个过程域中,产 品及产品组件的意涵也包括服务及其组件。 在整个产品生命周期中识别并修订需求。对设计决策、后续的纠正 措施,以及产品生命周期各阶段所产生的回馈进行分析,以了解它 们对衍生及已配置需求的影响。 需求开发过程域包括三项特定目标。”开发客户需求」特定目标说 明如何定义完整的客户需求,以使用于产品需求开发。”开发产品 需求」特定目标说明如何定义完整的产品和产品组件需求,以使用 于产品和产品组件设计。”分析并确认需求」特定目标说明客户、 产品及产品组件需求须执行的必要分析,以定义、衍生及了解需求。 第三项特定目标的特定执行方法,用以辅助前两项特定目标的特定

cmmi软件开发流程

cmmi软件开发流程

软件开发流程软件项目生命周期模型

需求分析 需求分析流程图 需求分析 客户 部门经理 临时项目组 输入/输出 EPG QA 测试负责人 PM 开始6、确定项目管理机制 14、协调人员及资源 项目日程表 15、建立工作环境 项目计划书 17、编制项目日程表 5、审批裁剪 16、编制项目计划书 4、申请裁剪 1、组建临时项目组 11、确定项目目 标范围 13、确定项目关键参数 结束 项目裁剪表 2、制定需求阶段日程表 12、项目估算 规模估算表/项目 估算表 3、建立配置库 18、评审项目计划书 19、建立阶段 基线 20、阶段总结 需求分析阶段总 结报告 需求分析阶基线 7、编写需求清单 列表 需求清单列表 10、确认需求规格书 8、确定系统架构/编写需求规格书 架构设计书/需求规格书 9、评审架构设计书/需求规格书 过程描述

1、由部门经理组建临时项目组,并指定PM、开发人员、测试人员、QA,人数根据项目规模确定。 2、PM制定需求阶段日程表,该表须通过研发经理审核。 3、PM指示配置管理员建立配置库。 4、由PM与测试负责人提出裁剪申请,QA指导临时项目组人员对项目进行裁剪,形成项目裁剪表。 5、EPG和部门经理对裁剪结果进行审批,审批通过项目裁剪表正式生效。 6、PM与测试负责人确定项目管理机制,内容包括组织结构、沟通、跟踪、报告、风险管理、问题管理、QA、CM等。 7、项目组人员与客户进行沟通,编写需求清单列表。 8、PM组织临时项目组成员确定系统架构,编写架构设计书和需求规格书。架构设计过程中的重要的技术方案选择、开发/采购/复用分析等内容要明确体现在架构设计书中。 ?对技术方案选择(例如,系统结构、开发平台、数据库等的选择),要事先建立评价准则(例如,满足系统需求的能力(例如,功能、性能、可靠性等)、技术的发展前景、供应商资质与实力等)及相对优 先级,采用讨论表决的方法选择并确定最终的技术方案。 ?关于自行开发和采购复用的分析, 如果公司有基本满足系统需要的可复用组件(包括其分析、设计、代码、测试用例等),一般应进行复 用; 本公司没有能力开发或没有必要开发的非核心技术部分,如果采购成本在项目可接受范围内,可考虑 采购; 否则,由项目组自行开发。 架构设计的总体候选方案选择和供应商选择要使用正式的方法做决策。 9、PM召集临时项目组、测试负责人等技术骨干评审架构设计书和需求规格书。 10、PM组织临时项目组与客户沟通、说明需求,必要时编制系统原型向客户展示,直到临时项目组、客户就需求的真实含义达成共识、客户书面确认需求规格书为止。 11、临时项目组确定项目目标的范围,明确系统边界,建立系统的模块分解结构。 12、PM与测试负责人遵循《项目估算流程》组织人员进行项目估算。 13、PM、测试负责人与临时项目组确定项目关键参数。 ?工作量、工期、日程、人数 ?成本/预算(由于本公司的项目的绝大部分成本是人力成本,对估计成本的管理等同于估计工作量的管理,对实际成本的管理等同于实际工作量的管理,对预算的管理等同于计划工作量的管 理。)

cmmi软件开发流程

软件开发流程软件项目生命周期模型 需求分析 需求分析流程图

过程描述 1、由部门经理组建临时项目组,并指定PM、开发人员、测试人员、QA,人数根据项目规模确定。 2、PM制定需求阶段日程表,该表须通过研发经理审核。 3、PM指示配置管理员建立配置库。 4、由PM与测试负责人提出裁剪申请,QA指导临时项目组人员对项目进行裁剪,形成

项目裁剪表。 5、EPG和部门经理对裁剪结果进行审批,审批通过项目裁剪表正式生效。 6、PM与测试负责人确定项目管理机制,内容包括组织结构、沟通、跟踪、报告、风险管理、问题管理、QA、CM等。 7、项目组人员与客户进行沟通,编写需求清单列表。 8、PM组织临时项目组成员确定系统架构,编写架构设计书和需求规格书。架构设计过程中的重要的技术方案选择、开发/采购/复用分析等内容要明确体现在架构设计书中。 ?对技术方案选择(例如,系统结构、开发平台、数据库等的选择),要事先建立评价准则(例如,满足系统需求的能力(例如,功能、性能、可靠性等)、技术的发展前景、供应商资质与实力等)及相对优先级,采用讨论表决的方法选择并确定最终的技术方案。 ?关于自行开发和采购复用的分析,如果公司有基本满足系统需要的可复用组件(包括其分析、设计、代码、测试用例等),一般应进行复用; 本公司没有能力开发或没有必要开发的非核心技术部分,如果采购成本在项目可接受范围内,可考虑采购; 否则,由项目组自行开发。 架构设计的总体候选方案选择和供应商选择要使用正式的方法做决策。 9、PM召集临时项目组、测试负责人等技术骨干评审架构设计书和需求规格书。 10、PM组织临时项目组与客户沟通、说明需求,必要时编制系统原型向客户展示,直到临时项目组、客户就需求的真实含义达成共识、客户书面确认需求规格书为止。 11、临时项目组确定项目目标的范围,明确系统边界,建立系统的模块分解结构。 12、PM与测试负责人遵循《项目估算流程》组织人员进行项目估算。 13、PM、测试负责人与临时项目组确定项目关键参数。 ?工作量、工期、日程、人数 ?成本/预算(由于本公司的项目的绝大部分成本是人力成本,对估计成本的管理等同于估计工作量的管理,对实际成本的管理等同于实际工作量的管理,对预 算的管理等同于计划工作量的管理。) ?质量目标 14、PM、测试负责人与部门经理协调人员及资源、计划知识技能、协调相关干系人的参与。 15、项目组基于公司环境标准,结合项目实际情况建立适合的工作环境。 16、PM、测试负责人编制项目计划书。 17、PM、测试负责人编制项目日程表。 18、临时项目组、研发部、QA评审项目计划书,评审通过后正式生效。 19、PM指示配置管理员建立配置基线。 20、PM编制阶段总结报告(项目总结报告中的度量分析页面),召开阶段会议。 设计 设计流程图

CMMI流程之总结

从CMM软件开发流程的理念、流程这两个方面概括介绍一下CMM。 CMM软件开发流程试图将几十年来风险比较不可控的软件开发用一个规范的流程控制起来,变成一个类似传统工业化生产流程的工业。 CMM理念 CMM主要理念之一就是加强过程控制,认为只要开发的过程按照规定动作执行,就可以很大程度上降低软件开发的质量、进度风险。而过程质量控制的主要手段就是检视。 CMM的理念之二是根据经验数据指导新的软件开发项目。CMM定义了监控软件开发过程 是否规范的一系列指标,如软件生产率、检视缺陷密度、遗留缺陷密度等,并总结了同业的一些经验数据。当执行实际项目时,以这些经验数据指引开发过程,尽量使开发的关键质量指标落入经验数据区间。同时进行进一步分析总结,对质量目标进行修正,用以指导后续的新项目。通过在一个个的项目逐渐总结修正,最终得到一套适合自己的质量目标。 CMM的理念之三,也可以说是本质,是基于传统的瀑布软件开发模型的。 CMM全流程 CMM软件开发规范的流程。CMM规范基于瀑布软件开发模型,没有体现基于原型逐步求 精的思想,这也是近年来在实施中为人所诟病的一个方面。下面结合IPD流程阐述一下CMM 流程在公司实际的应用。 CDP-Charter CDP即Charter开发项目,主要的责任主体是Marketing团队和SE,目标是定义一个产品版本所要解决的主要目标和时间点,交付件是Charter。Charter要通过BMT,即业务管理团队的批准。Charter需要回答这些问题:版本的Top N需求和主要竞争需求,主要目标客户,完整的包需求,版本的里程碑时间点,应用的时间窗口以及在版本火车中所处的位置。 Charter-TR1 TR1即产品概念完成里程碑,主要的责任主体是SE团队,同时Marketing配合完成需求的细化、澄清和修订。这个阶段的目标是输出设计需求。相比包需求,设计需求粒度更细,能够清晰的描述每一个需求,包括每个需求的输入、输出参数,并输出低保真界面原型。 CDCP CDCP即Concept Decision Check Point,近年来大部分项目都裁剪,具体作用不明。 TR1-TR2 TR2即产品设计完成里程碑,主要的责任主体是SE团队。这个阶段的输出是设计规格。相

CMMI3访谈问题列表 for

EPG访谈 1.想问一下你们有专门的过程改进组吗由哪些人员组成 2.关于组织过程改进方面,是否有相关的方针方针是谁写的组织过程定义和组织过程焦点方针分别什么 有相关的方针,这个方针是我们的高层蔡总制订初稿的,我进行了修改,然后提交给蔡总再次审核。审核通过后,这个方针就做为公司进行CMMI三级过程改进的指导思想。 在这个方针里,对于组织过程定义和组织过程焦点的要求是:过程改进工作是有计划,并被跟踪的,且过程改进工作是一个持续进行的。 成立专让的过程改进小组(EPG)负责此项工作,EPG组的主要职责建立并维护组织级标准软件过程,并在全公司推广这套体系。收集项目中应用比较好的过程,做为最佳实践,为组织建立并维护财富库,供以后项目参考。 3.你了解公司目前公司的商业目标吗你是如何将公司商业目标体现在你的过程改进计划或活动中呢 我们能够有效识别客户的业务需求,并提供高质量的客户解决方案,同时秉承服务于客户需求,与客户共同发展的商业理念。 我们在公司进行CMMI过程改进的目的也就是征对公司的这一商业目标,改善软件开发过程,为公司的软件开发提供丰富的模板,并要求项目组按照已定义的过程来执行软件开发过程,提高阶段产品的质量,将问题发现在平时,解决在平时,从而提高产品的质量,提高客户的满意度。 4.你了解公司在过程改进方面投入情况吗具体提供了哪些资源 了解,公司提供的强有力的人力资源,成立了过程改进组。提供了有关CMMI的培训,并准备了很多CMMI的资料供大家学习。(可以扩充)

5.过程改进计划是如何制定的(由谁来审批) 过程改进计划是由我来制定的,我是根据差距分析报告中公司现状与CMMI三级的差距而制定的CMMI过程改进计划,计划主要内容由WBS任务分解,过程改进的成员,组间协调计划,配置管理计划,质量保证计划等等,我组织了一次对《过程改进计划》的评审,这次评审邀请了老总和所有的EPG组成员。评审中我们将发现的问题记录在问题跟踪表中,会后由我来进行修改,然后提交给周总,进行再次审核。 6.过程改进计划是否发生过变更,你是如何来处理的 过程改进计划发生过变更,我们EPG小组对变更的内容修改的增加,并重新对《过程改进计划》进行评审,评审通过后,由配置管理人员提交基线库,发布《基线发布报告》通知所有人员。 7.过程改进计划一般包括哪些方面的内容 过程改进计划里包括培训计划,质量保证计划,配置管理计划,组间协调计划,试点推广计划,过程改进进度表,风险计划,项目的组织架构图等等。 8.你是否清楚项目如何来对组织的标准过程进行裁剪的你们公司有这方面的裁剪规定吗你们裁剪后的结果,是否需要经你们小组来评审 清楚, 项目经理根据项目具体情况,按照组织级裁剪规,邀请项目组,高层,PPQA召开裁剪会议,项目经理将裁剪结果记录《裁剪表》里,并提交给我进行审核。 智多星学习软件项目是中型产品的项目,根据《裁剪规程》的要求,项目计划,项目估计不可以裁剪,角色指定、项目规划、立项会议、规划确定可以合并简化。学生自动化测试平台项目是中型产品的项目,根据《裁剪规程》的要求,项目计划,项目估计不可以裁剪,角色指定、项目规划、立项会议、规划确定可以合并简化。 兆和客户关系管理系统是中型产品的项目,根据《裁剪规程》的要求,项目计划,项目估计不可以裁剪,角色指定、项目规划、立项会议、规划确定可以合并简化。 9.你是否清楚公司未来几年对于过程改进方面的一些目标是什么 是的,公司计划用3年的时间来执行CMMI L3,解决目前存在的软件开发过程中存在的软件开发过程难以控制,产品质量难以保证的问题。 在这三年里,EPG组要根据公司的发现,除了及时的解决过程改进中发生的问题,还要定期的组织体系执行的评审活动,发现弱项与强项,并对弱项进行改进。 10.你作为EPG的代表,你受过哪些方面的培训 我接受过CMMI 17个过程域的培训 11.其他角色或成员是否接受过你们EPG组织的培训 接受过,EPG组在OSSP体系发布后,立即组织了一个连续一个星期对公司所有员工进行了OSSP体系的培训,主要内容是讲解OSSP体系中的所有过程,规程,模板,检查表的使用方法。

CMMI体系文件-OPD-标准软件过程裁剪指南

****信息系统有限公司 标准软件过程裁剪指南 文件编号:版本号: 编制:日期: 审核:日期: 批准:日期:

****信息系统有限公司 标准软件过程裁剪指南 文件编号:版本号: 编制:日期: 审核:日期: 批准:日期:

文件修订记录

目录 1目的........................................... 错误!未定义书签。2适用范围....................................... 错误!未定义书签。3资源和工具..................................... 错误!未定义书签。4定义和缩写..................................... 错误!未定义书签。5职责........................................... 错误!未定义书签。6指南........................................... 错误!未定义书签。 启动条件.................................... 错误!未定义书签。 输入........................................ 错误!未定义书签。 活动........................................ 错误!未定义书签。 确定项目特点............................ 错误!未定义书签。 裁剪要求................................ 错误!未定义书签。 裁剪对象.............................. 错误!未定义书签。 裁剪原则.............................. 错误!未定义书签。 裁剪产物.............................. 错误!未定义书签。 软件生命周期的裁剪指导.................. 错误!未定义书签。 过程裁剪指导............................ 错误!未定义书签。 概要裁剪.............................. 错误!未定义书签。 详细裁剪.............................. 错误!未定义书签。 需求开发与需求管理................ 错误!未定义书签。 技术解决过程...................... 错误!未定义书签。 验证.............................. 错误!未定义书签。 测试........................... 错误!未定义书签。 评审........................... 错误!未定义书签。 项目计划.......................... 错误!未定义书签。 项目监控.......................... 错误!未定义书签。 配置管理.......................... 错误!未定义书签。

相关主题