(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf_第1页
(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf_第2页
(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf_第3页
(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf_第4页
(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机应用技术专业论文)基于cmm的软件开发平台的研究.pdf.pdf 免费下载

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

文档简介

基于c m m 的软件开发平台的研究 摘要 随着不断增长的信息化建设需求,提高软件开发的生产力并保证软件产 品适应多变的客户需求成为信息化建设领域的两个核心问题。基于c m m 的 软件开发平台符合信息系统平台化建设目标,并从软件过程的管理方面着 手,有效地控制软件的开发和维护过程。 对于软件开发平台的设计而言,最重要的是为将来的开发者提供一个高 效可靠的开发环境,最大限度提高开发者的开发效率和质量。本论文将 c m m 规范与软件开发平台相结合,在平台的设计过程中考虑c m m 规范的要 求,将其作为开发平台的一个模块,以便在将来的开发过程中应用其对开发 者和开发团队进行有效的控制和指导。通过c m m 规范与软件开发平台的结 合,使之成为软件质量保证的一个必要手段,为进一步落实软件质量保证计 划提供有效途径,指导软件机构控制开发和维护软件过程,并发展出优秀的 软件工程和管理的机构文化。 本文首先对基于c m m 体系的软件开发平台的相关技术进行了理论准 备;其次,根据研究结果提出了一种适应于信息系统的基于c m m 的软件开 发平台,并对平台的系统进行了设计,其中包括功能需求分析,平台的总体 结构和数据结构,并重点介绍了配置管理和产品质量保证两个关键过程域在 平台应用过程中所起到的作用;再次,对开发平台进行了实现,分别针对分 析设计平台,u l 设计平台和运行支撑平台三个子系统进行了实现;最后用 一个具体开发案例对平台进行了实例分析与验证,从应用的角度证明了通过 使用本软件开发平台,可以有效地提高软件的开发速度与质量,并可提高软 件的可维护性,增加了软件的使用寿命。通过本平台的研究与推广,实现良 好的软件过程保障功能,保证了软件的质量,轻松实现系统的远程部署和调 用。本平台继承了以前版本的信息系统业务需求分析的科学方法论,确保了 软件知识的积累和业务复用,极大的方便了后期的维护,为中小型软件开发 企业实现软件工业化提供了良好的借鉴。 关键词c m m :开发平台;关键过程域;配置管理 s t u d yo ns o f t w a r ed e v e l o p m e n t p l a t f o r m b a s e do nc 删 a b s t r a c t w i t ht h eg r o w i n gd e m a n df o ri n f o r m a t i o nc o n s t r u c t i o n ,t h ei m p r o v e m e n to f t h ep r o d u c t i v i t yo fs o f t w a r ed e v e l o p m e n ta n dt oe n s u r et h a ts o f t w a r ep r o d u c t st o a d a p tt oc h a n g i n gc u s t o m e rn e e d sb e c o m et w oo ft h ec o r ei s s u e so f t h ef i e l do f i n f o r m a t i o nt e c h n o l o g y t h es o f t w a r ed e v e l o p m e n tp l a t f o r mb a s e do nc m m c a n m e e tt h eg o a lo fb u i l d i n gp l a t f o r mf o ri n f o r m a t i o ns y s t e m s a n df r o mt h e s o f t w a r e p r o c e s sm a n a g e m e n ta s p e c t s ,i te f f e c t i v e l y c o n t r o l st h es o f t w a r e d e v e l o p m e n ta n dm a i n t e n a n c ep r o c e s s i nt e r m so ft h ed e s i g no fs o f t w a r ed e v e l o p m e n tp l a t f o r m ,i no r d e rt o m a x i m i z et h ei m p r o v e m e n to f t h ee f f i c i e n c ya n dq u a l i t yf o rd e v e l o p e r s d e v e l o p m e n t ,t h em o s ti m p o r t a n tt h i n gi s t op r o v i d eah i g h l ye f f i c i e n ta n d r e l i a b l ed e v e l o p m e n te n v i r o n m e n tf o rt h ef u t u r ed e v e l o p e r t h ed i s s e r t a t i o n c o m b i n e ss o f t w a r ed e v e l o p m e n tp l a t f o r mw i t hc m mn o r m sa n dc o n s i d e r st h e r e q u e s to fc m m n o r m si nt h ep l a t f o r md e s i g np r o c e s s c m mn o r m sa c t sa sa m o d u l ei np l a t f o r mt oc a r r yo u te f f e c t i v ec o n t r o la n dg u i d a n c et ot h ea p p l i c a t i o n d e v e l o p e r sa n dd e v e l o p m e n tt e a mi nt h ef u t u r ed e v e l o p m e n to ft h ep r o c e s s t h r o u g ht h ec o m b i n a t i o no fc m m n o r m sa n ds o f t w a r ed e v e l o p m e n tp l a t f o r mt o f o r man e c e s s a r ym e a n so fs o f t w a r eq u a l i t ya s s u r a n c e ,p r o v i d ea ne f f e c t i v ew a y t oi m p l e m e n ts o f t w a r eq u a l i t ya s s u r a n c ep o l i c y ,g u i d a n c et h ec o n t r o ls o f t w a r e d e v e l o p m e n ta n dm a i n t e n a n c eo fs o f t w a r ep r o c e s so fs o f t w a r ei n s t i t u t i o n s ,a n d d e v e l o pa ne x c e l l e n ts o f t w a r ee n g i n e e r i n ga n dm a n a g e m e n t c u l t u r e t h i sd i s s e r t a t i o nf i r s tm a k e sat h e o r e t i c a lp r e p a r a t i o n o ns o f t w a r e d e v e l o p m e n tp l a t f o r mb a s e do nc m m s e c o n d l yb a s e do nt h es t u d i e si ta d v a n c e s as o f t w a r e d e v e l o p m e n tp l a t f o r m b a s e do nc m mw h i c hc a na d a p t e dt o i n f o r m a t i o ns y s t e m s ,d e s i g n sp l a t f o r ms y s t e mi n c l u d i n gf u n c t i o n a ln e e d sa n a l y s i s , n t h eo v e r a l ls t r u c t u r ea n dd a t as t r u c t u r e ,h i g h l i g h t sc o n f i g u r a t i o nm a n a g e m e n ta n d p r o c e s sa n dp r o d u c tq u a l i t ya s s u r a n c ek p aa n dt h e i re f f e c ti na p p l i c a t i o no f p l a t f o r m t h i r d l y , t h ed i s s e r t a t i o ni m p l e m e n t st h i sp l a t f o r m ,m a k e st h ed e t a i l d e s i g nf o rt h es u bs y s t e mo fa n a l y s i sa n dd e s i g np l a t f o r m ,u id e s i g np l a t f o r m a n dr u n t i m es u p p o r tp l a t f o r m f i n a l l y , t h ed i s s e r t a t i o na n a l y s e sa n dv e r i f i e st h e p l a t f o r mb yas p e c i f i cd e v e l o p m e n te a s e ,t op r o v et h a tt h r o u g ht h ea p p l i c a t i o no f t h i sp l a t f o r mi tc a ni m p r o v et h es p e e da n d q u a l i t yo fd e v e l o p m e n t ,a l s oa c h i e v e r e m o t ed e p l o y m e n ta n dc a l l e a s i l y a tt h es a l n et i m e ,t h i sp l a t f o r mi n h e r i t s c i e n t i f i cm e t h o d o l o g yo fi n f o r m a t i o ns y s t e m sb u s i n e s sn e e d sa n a l y s i sf r o mt h e p r c v l o u sv e r s i o n , t oe n s u r et h ea c c u m u l a t i o no fs o f t w a r ek n o w l e d g e a n dr e u s e o fb u s i n e s s ,w h i c hg r e a t l yf a c i l i t a t e st h em a i n t e n a n c eo f t h el a t e rp e r i o dg r e a t l v a n dp r o v i d e sag o o dr e f e r e n c ef o ra c h i e v e i n d u s t r i a l i z a t i o nf o rs m a l la n d m e d i u m - s i z e ds o f t w a r ed e v e l o p m e n tc o m p a n i e s k e y w o r d sc a p a b i l i t ym a t u r i t ym o d e l , c o n f i g u r a t i o nm a n a g e m e n t d e v e l o p m e n tp l a t f o r m ,k e yp r o c e s sa r e a , 1 1 1 哈尔滨理工大学硕士学位论文原创性声明 本人郑重声明:此处所提交的硕士学位论文基于c m m 的软件开发平台 的研究,是本人在导师指导下,在哈尔滨理工大学攻读硕士学位期间独立进 行研究工作所取得的成果。据本人所知,论文中除已注明部分外不包含他人已 发表或撰写过的研究成果。对本文研究工作做出贡献的个人和集体,均已在文 中以明确方式注明。本声明的法律结果将完全由本人承担。 作者签名:际i ) 毛傍日期:0 5 年3 月2 0 日 哈尔滨理工大学硕士学位论文使用授权书 基于c m m 的软件开发平台的研究系本人在哈尔滨理工大学攻读硕士 学位期间在导师指导下完成的硕士学位论文。本论文的研究成果归哈尔滨理工 大学所有,本论文的研究内容不得以其它单位的名义发表。本人完全了解哈尔 滨理工大学关于保存、使用学位论文的规定,同意学校保留并向有关部门提交 论文和电子版本,允许论文被查阅和借阅。本人授权哈尔滨理工大学可以采用 影印、缩印或其他复制手段保存论文,可以公布论文的全部或部分内容。 本学位论文属于 保密口,在年解密后适用授权书。 不保密囹。 ( 请在以上相应方框内打、,) 作者签名:际曦莺 导师签冬:慨 日期: 年弓月2 , 0 日 日期: - 尸年乡月日 哈尔滨理工大学工学硕一l j 学位论文 1 1 课题来源及研究意义 第1 章绪论 本课题来源于黑龙江省交通厅计划项目黑龙江省道路运输管理系统。 上个世纪七十年代以来,为了解决软件危机问题,学术界、企业界在软件 工程、技术和工具方面投入了大量的人力、物力和财力,希望能找到一种提高 软件质量的有效方法。他们致力于探索开发软件的新技术、新方法,试图提高 软件的生产率和质量。而这些新技术、新方法确实也为解决软件危机提供了一 些帮助。例如,面向对象方法,它很好地解决了软件开发完备性和代码重用性 等问题。但这些方法都没有从根本上解决软件危机n 1 。软件产品的开发、维护 杂乱无章、软件企业的不成熟状况依然困扰着软件产业的发展,于是专家们开 始从软件过程的管理方面着手解决软件危机问题。软件企业开始希望能有效地 控制软件的开发和维护过程,使企业内部形成优秀的软件工程和软件管理文 化。而c m m 能对软件开发过程管理进行有效的监控和管理。 软件能力成熟度模型( s o f t w a r ec a p a b i l i t ym a t u r i t ym o d e l ,c m m ) ,是在1 9 8 7 年由美国国防部资助,美国卡内基梅隆大学的软件工程研究所最先提出的心1 。 给下的定义是:对于软件组织在定义、实现、度量、控制和改善其软件过程的 进程中各个发展阶段的描述,这个模型便于确定软件组织的现有过程能力和查 找出软件质量及过程改进方面的关键的问题,从而为选择过程改进战略提供指 南。因此把c m m 作为本课题研究方向的一部分,可以在软件开发中对开发过 程进行控制,这对提高软件产品质量有着重大的意义。 从目前的情况来看,软件开发的速度缓慢、代价高昂而又极易出错,常常 会生产出存在大量缺陷的产品,在可用性、可靠性、性能、安全以及其他服务 质量方面造成严重的问题。为了改善这些问题人们进行着不断的努力,概括起 来大致有两个方向:一是软件工程、软件项目管理的方向;另一个是软件技术 革新的方向。在所有的技术革新中软件平台化是最有意义也是最有生命力的。 使用软件平台,可以极大降低软件开发难度,提高软件开发效率,也提高软件 开发质量。每一个平台的诞生,都是向软件生产力提高迈出新的一步。软件开 发平台具有提高软件开发效率和质量、降低软件开发成本、软件开发便利等特 点,能够对于用户的需求做出迅速的反应,减少了维护的工作量。软件开发平 哈尔滨理工大学工学硕士学位论文 台的研究对一个企业乃至整个软件行业都是必要的。而c m m 与软件开发平台 的结合,则在突出了软件开发平台快速简单的优点的同时,能够对软件开发过 程和软件产品的质量提供了有效的监控,这些优点也就是本课题研究的意义与 目的。由此可见,引入c m m 的软件开发平台的研究有着极高的研究价值广泛 的应用前景。 1 2 国内外现状 1 2 1c m m 研究现状 c m m 是由美国卡内基一梅隆大学软件工程研究所制定,随后又在全世界 推广实施的一种软件评估标准,是软件危机直接引发的思考成果;c m m 提出 了一个以有纪律的、协调的方式提高软件产品的管理开发和软件质量的概念结 构随们。c m m 主要用于软件过程评估( s o f t w a r ep r o c e s sa s s e s s m e n t s p a ) ,软 件过程改进( s o f t w a r ep r o c e s si m p r o v e m e n t ,s p i ) ,软件能力评价( s o f t w a r e c a p a b i l i t ye v a l u a t i o n , s c e ) 1 6 1 e 该标准基于众多软件专家的实践经验,侧重于 软件开发过程的管理及工程能力的提高与评估,是国际上流行的软件生产过程 标准和软件企业成熟度等级认证标准。c m m 的基本框架结构包括:成熟级 别、关键过程域、公共属性以及关键实践。软件能力成熟度模型包括5 个等 级,共1 8 个关键域、5 2 个目标和3 0 0 多个关键实践活动m 1 。 c m m 模型是基于多年产品质量研究成果所建立的。c m m 为软件机构描 述了从混乱的、不成熟的软件过程向成熟的、有纪律的软件过程改进的一条途 径。c m m 涵盖了有关计划、设计和管理软件开发和维护的实践,软件机构只 要遵守这些实践,就能够提高该机构的能力,满足成本、进度计划、功能及产 品质量等目标。随着企业c m m 成熟等级的提高,项目开发中的风险可以得到 逐步减低,开发时间也大大缩短,开发成本得以减少并大大降低了软件产品中 的错误发生率。c m m 不仅可以提高企业在国际市场上的软件出口竞争力,也 可以提高企业自身的软件管理与开发水平阳一1 。 c m m 用5 个成熟度等级定义了一个有序的框架尺度,来测量一个组织的 软件过程成熟度和评价其软件过程能力。其中l 级为初始级;2 级为可重复 级;3 级为已定义级;4 级为已管理级;5 级为优化级“们。这5 个成熟度等级定 义了一个有序的尺度,用以测量组织软件过程成熟度和评价其软件过程能力。 成熟度等级是一个朝着获得成熟软件组织前进过程中的一个已定义好的进化的 哈尔滨理工大学工学硕士学位论文 平台。每一个成熟等级为持续过程改进提供了一个台阶。每一个等级包括了一 组过程目标,当目标满足时,能使软件过程的一个重要成分稳定。每达到成熟 度框架的一个等级,就建立起软件过程的一个不同的成分,导致组织过程能力 的增长。每个成熟度等级都有若干关键过程域组成。c m m 中共有1 8 个关键过 程区域n - 1 扣,分布在除初始级之外的其余4 个等级中。 c m m 在世界各国都引起了相当多的关注。截止2 0 0 2 年1 0 月底,全世界 共有1 3 9 个组织通过了c m m 4 和c m m s 的评估,其中7 3 家组织通过了 c m m 4 级,6 6 家组织通过了c m 级。这1 3 9 家组织中,其中美国占5 9 家,印度占7 2 家,其他国家占8 家n 引钔。c m m 在我国获得了各界越来越多关 注,业界有过多次关于c m m 的讨论,发表了多篇的研究成果和学术论文,在 软件质量保障平台支撑环境上也取得了一定的成果。2 0 0 0 年6 月国务院颁发的 鼓励软件产业和集成电路产业发展的若干政策对中国软件企业申请c m m 认证给予了积极的支持和推动作用,第1 7 条规定“对软件出口型企业c m m 认证费用予以适当支持一。国内各大型企业或集团都在研究、实验或实施预评 估。 c m m 体系只提要求,只告诉我们做什么,而没有告诉应该怎么做。目前 c m m 在国内具体的实施和应用大都是由顾问公司协同企业来做。当前,顾问 公司所提供的服务是浅层次咨询,只是把标准的知识引进来,怎么使用基本是 企业来琢磨,最后顾问公司再验证要素的覆盖程度。顾问公司不对体系的效率 负责,只管要素覆盖,是因为要素覆盖是与拿证书相关的。强调在原模式的基 础上建立c m m 体系,而不能进行流程重组。这其实反映了顾问公司的非专业 化,只对质量管理熟悉,对其它管理不了解,对细分的行业特征不了解。所以 在这些顾问公司指导下通过c m m 认证,其真正价值到底怎样,很值得怀疑。 c m m 在中国1 0 0 的达标率,也使得c m m 的含金量遭到更多置疑。经常不断 看到已通过c m m 认证的企业在谈c m m 带来的各种收益,但实际上对c m m 价值的认可度到底有多少,只有每个人自己心里知道。可以肯定的是,对 c m m 价值的认同需要一个相当长的时间,决不是几个月就能达到的结果。一 个好的顾问公司应该协同顾客研究其流程,提出重组的建议,流程的建立不仅 要考虑要素覆盖还要兼顾流程效率。实施参与深度不够是一方面,参与时间也 偏短。软件过程成熟度的提高是一个渐进的过程,需要一个长远的、可持续发 展的过程作为保证。为建立一个面向过程持续提高的基础和文化,有些软件企 业可能要花费很大的精力和时间。但是这种努力对任何一个软件企业来说都是 非常必要的。我们必须明确实施c m m 的目的不是为了通过认证,而是为了从 哈尔滨理工大学工学硕t 学位论文 根本上改变我们的软件开发过程,提升企业的竞争力。 另外很长时间以来,行业内对c m m 有一种误解:做软件出口,才需要实 施c m m 。言外之意,不做软件出口,没必要实施c m m 。全球软件产业其实 处于一个非常开放的价值链中,而软件产业的游戏规则就是技术及其标准,因 此如果你落后了这些技术和标准,就可能被抛出游戏之外。另外,软件企业是 一个技术密集型企业,获取竞争力的关键就在于提高开发应用效率,降低成 本,同时提高产品的质量,这方面是c m m 的强项。因此实施c m m 是软件企 业加强自身管理,提高素质,摆脱困境的必经之路,是软件业与国际接轨的重 要举措,是我国软件企业走向世界迅速发展的必由之路。 根据2 0 0 4 年4 月的s e i c m m 评估统计结果,中国有1 6 2 家通过c m m 认 证,而在2 0 0 3 年只有7 3 家,2 0 0 2 年为3 7 家n 射。特别是摩托罗拉、东软、大 连华信、大连海辉、上海惠普、新宇科技等六家公司已经通过了c m m 5 级认 证。而到2 0 0 7 年3 月通过c m m c m m l 5 级认证的则有1 9 家n u n 。但是由于我 国软件产业底子薄、基础差,所以我国在软件组织在实施基于c m m 的质量管 理成功的背后也存在许多问题:软件工程极不规范、急功近利全面铺开、理论 和实际不能有效结合、质量意识淡薄“射。 面对如此的产业环境,我们只能做出如下判断:中国软件产业管理能力的 根本提升,取决于广大中小软件企业管理能力的有效改进。对中国而言,在很 长一个时期内c m m 的最大价值是促进软件产业管理竞争力的整体提升,为软 件产业的规模化发展积蓄力量、提供准备,而不是直接推动软件出口。 1 2 2 软件开发平台现状 软件平台是指用来构建与支撑应用软件的独立软件系统,它是开发、运 行、部署和管理软件的基础,任一个应用软件得以实现和应用的必要条件扭们。 一个软件系统,往往是一个复杂系统,对于这样的复杂系统的分析与实 现,降低其复杂性与提高效率的最好办法是将系统分层实现。软件平台化的思 路正源于此,它将软件平台分为许多层次,如操作系统、软件基础构架、应用 框架平台等,在每一个层次,都为其上个层次屏蔽了自身及以下层次的技术 细节乜。龆1 。软件平台化开发就是把软件开发由过去手工作坊模式变为工业化生 产模式。从目前的情况来看,软件开发的速度缓慢、代价高昂而又极易出错, 常常会生产出存在大量缺陷的产品,在可用性、可靠性、性能、安全以及其它 服务质量方面造成严重的问题。而软件开发平台化,可以把软件开发按照流水 哈尔滨理工大学工学硕上学位论文 线的工作方式、遵循一定的生产质量规范,批量、高效地生产标准化的软件产 品组件,并对其进行组装从而批量完成产品旺榭1 。 软件开发技术的演化体现出软件复用是解决软件危机的现实途径,软件构 件技术是实现软件复用的核心技术嘲。新的软件技术体系的特点是以软件构件 技术为基础,结合信息安全技术、网络服务技术、人机交互技术使之成为各类 应用软件的支撑技术吼2 订。网络构件技术对软件开发思想提出了新的挑战:传 统软件形态基于实体驱动,而新的网络环境下的软件形态基于协同驱动。 软件技术的总体发展趋势是方法对象化、系统构件化、产品家族化、开发 工程化、过程规范化、生产规模化、竞争国际化隗列。方法对象化、系统构件 化是网络构件技术的核心所在,构件间的协同体现了各构件接口的相互集成关 系3 1 1 。当前的主流软件技术中,网络构件开发技术将由分布对象技术进行支 撑。分布对象技术是分布式计算技术与面向对象技术的结合,为构件的实现和 构件的组装提供了基础设施层的支持,且能够解决对象之间互操作问题3 2 邝1 。 目前很多企业都开发了自己的软件开发平台,但是在该方面做得比较突出的有 m m ,思维加速,东方通等公司“1 。 1 2 3c m m 规范与软件开发平台的结合 对于软件开发平台的设计而言,其最重要的是为将来的开发者提供一个高 效可靠的开发环境,以最大限度的提高开发者的开发效率软件开发质量。本课 题将c m m 规范与软件开发平台相结合,在平台的设计过程中考虑c m m 规范 的要求,将其作为开发平台的一个模块,以便在将来的开发过程中应用其对开 发者和开发团队进行有效的控制和指导,使之成为软件质量保证的一个必要手 段,为进一步落实软件质量保证政策提供有效途径,指导软件机构控制开发和 维护软件过程,并发展出具有优秀的软件工程和管理的机构文化。因此结合 c m m 规范的软件开发平台的设计,可能成为软件开发平台设计的一个重要研究 方向。 1 3 论文主要工作 本课题在理论学习国内外研究文献的基础上,分析了c m m 能力成熟度模 型的主要内容和特点,总结了目前国内外的发展现状、主要应用情况和存在的 问题。在此基础上,提出了一种基于c m m 的软件开发平台,将c m m 规范引入 平台设计中,利用其框架对开发过程加以指导,以提高软件开发平台的开发效 哈尔滨理工大学工学硕士学位论文 率与开发质量,开发平台将实现支持面向服务架构,通过x m l 数据总线将业务 层中的各项服务有效集成。主要研究内容有以下几点: 1 掌握c m m 规范的主要内容与特点。分析c m m 规范在现有开发过程中所 起到的作用,抽取c m m 的过程域并在本平台中进行体现。 2 平台的总体结构设计。平台采用基于n 】t 架构的开发模式。f i e t 框架 包括多种语言、多个类库和一个公用的执行平台,包括各种让程序员可以在和 企业服务器上进行软件集成的协议。 开发平台要从数据集成、工作流程管理自动化、用户界面的快速开发等方 面来进行系统的开发。在系统应用时再结合c m m 对软件开发过程进行监控和 管理。 3 c m m 规范在平台中的体现。c m m 的主要用途是指导软件过程改进。为 了评价软件组织的软件过程能力,c m m 建立一组公用、有效的描述成熟软件 组织特征的准则。本项目将这一组准则引入平台之中,使之成为平台的一个功 能模块,以便在平台应用过程中使用c m m 规范对软件的开发过程进行有效的 指导。这个功能模块的设计与实现,也是本课题主要研究的内容。 4 系统的可扩展性设计与插件。为了确保平台开发的持续性与其功能的不 断完善,需要将平台的可扩展性与插件技术纳入到平台的设计过程之中,这一 功能是通过系统不同模块之间的接口来实现的,通过定义模块之间接口的x m l 文件,使得平台的升级与第三方插件的引入可以很方便的实现,确保了软件开 发平台的功能完善与扩展性。 5 x m l 作为数据总线在平台中的应用。本课题所设计的开发平台采用 x m l 文件作为数据传输载体恤,用以在不同模块之间进行数据的传输与交换, 降低系统耦合度:同时将x m l 与x s l t ( e x t e n s i b l es t y l e s h e e tl a n g u a g e t r a n s f o r m a t i o n s ) 模版绑定生成系统的表现层。 哈尔滨理工大学工学硕: 学位论文 2 1c m m 概述 2 1 1c m m 简介 第2 章c m m 与平台理论 c m m 是c a p a b i l i t ym a t u r i t ym o d e l f o rs o f t w a r e 的简称,中文叫“软件能力 成熟度模型,是对组织软件过程能力的描述。1 9 8 4 年美国国防部为降低采购 风险,委托卡耐基一梅隆大学软件工程研究院( s e i ) 制定了软件过程改进、评 估模型,也称为s e is w - c m m 。该模型于1 9 9 1 年正式推出,得到广大软件企 业及其顾客的认可。从1 9 8 7 年s e i 推出s w - c m m 框架开始,1 9 9 1 年推出 c m m l 0 版,1 9 9 3 年推出c m m l 1 版,2 0 0 0 年推出c m m i s e s w l 0 版口 。 c m m 组件包括成熟度级别( m a t u r i t yl e v e l s ) 、过程能力( p r o c e s s c a p a b i l i t y ) 、关键过程域( k e yp r o c e s sa r e a s ) 、目标( g o a l s ) 、共同特点 ( c o m m o nf e a t u r e s ) 和关键实践( k e yp r a c t i c e s ) m 1 ,c m m 的结构如图2 1 所示。 2 1 2c m m 体系结构 c m m 依照企业软件过程能力的大小,将软件企业从低到高分为5 个成熟 度等级。能力成熟度模型的结构由图2 2 所示。除了初始化级外的其它级别都 由关键过程域组成的,而关键过程域的类别由共同特点来细分。 下面从第一到第五级能力成熟度模型进行详细的介绍啪1 : 1 第一级初始级( t h ei n i t i a ll e v e l ) 在初始级,软件开发组织通常不能提 供一个稳定的环境来开发和维护软件。当一个组织缺乏健全的管理实践,良好 的软件工程实践受到无效规划时,如果遇到危机,通常会放弃项目预定的步骤 而回复到编码和测试阶段。项目的成功完全取决于一个杰出的管理者和一个有 经验、战斗力强的软件团队。处于初始级的软件开发组织的过程能力是不可预 测的,因为随着工作进展软件过程经常被改变或修订( 即过程是无序的) 。进 度、预算、产品的功能性和质量都不可预测,实施的结果依赖于个人的能力, 且随个人固有的技能、知识和动机的不同而变化。 哈尔滨理工大学工学硕:上学位论文 处于第一级的软件开发组织几乎没有明显的稳定的软件过程,只能依靠个 人的能力而不是组织的能力去预测软件开发活动的结果。 规范 图2 - 1 能力成熟度模型结构 f i g 2 - 1s t r u c t u r eo ft h ec a p a b i l i t ym a t u r i t ym o d e l 图2 - 2 能力成熟度模型结构 f i g 2 - 2f i v el e v e l so fs o f t w a r ep r o c e s sm a t u r i t y 哈尔滨理工大学工学硕士学位论文 2 第二级可重复级( t h er e p e a t a b l el e v e l ) 在可重复级上,软件开发组织 已建立起管理软件项目的方针和实施这些方针的规程,基于在类似项目上的经 验对新项目进行策划和管理。可重复级要达到的目标是要使软件项目的有效管 理过程制度化,使组织能重复在以前类似项目上的成功实践。在可重复级的软 件开发组织中,对项目设置了基本的软件管理和控制过程。项目的约定都是根 据对以前项目的观察结果和当前项目的需求而制定的,因而切实可行。项目的 软件管理者跟踪软件成本、进度和功能性,并能及时识别出现的问题。他们对 软件需求和为实现需求所开发的工作产品建立基线,并控制其完整性。软件项 目的标准均已定义,并且组织能保证准确地执行这些标准。如果有转包商,软 件项目管理者便与他们一起努力建立一种强有力的转包关系,以确保约定和标 准得以遵从。 处于第二级的组织的过程能力可概括为“有纪律的”。因为软件项目的策 划和跟踪是稳定的,能重复以前的成功。由于遵循切实可行的计划,项目过程 处于项目管理体制的有效控制之下。 3 第三级已定义级( t h ed e f i n e dl e v e l ) 在已定义级上,项目组织的软件开 发和维护的标准过程均已文档化,包括软件工程过程和软件管理过程,这些过 程己被集成为一个有机的整体,称为组织的标准软件过程。可用这个标准软件 过程来帮助软件管理者和技术人员使其工作得更有效。软件开发组织在进行软 件过程标准化时,将总结以前成功的软件工程实践经验和失败教训。组织中应 有一个专门负责项目组织软件过程活动的组,如软件工程过程组。软件开发组 织制定并实旌项目组织的培训计划,以保证其职工和管理者均具有履行其职责 所必须的知识和技能。项目可根据其特征剪裁组织的标准软件过程,从而建立 起他们自定义的软件过程,称为项目定义软件过程。一个已定义的软件过程包 含一组协调的、集成的、妥善定义的软件工程过程和管理过程。妥善定义的过 程具有如下特征:具有关于准备就绪的判据、输入、标准、进行工作的规程、 验证机制( 例如同行专家评审) 、输出、以及关于完成的判据。因为软件过程已 妥善定义,管理者就能洞察项目所有的各种技术进展情况。 处于第三级的组织的软件过程能力可概括为“标准的和一致的。因为无 论软件工程活动还是管理活动,过程都是稳定的且可重复的。在所建立的产品 生产线内,成本、进度和功能性均受控制,对软件质量也进行了跟踪。这种过 程能力建立在整个组织范围内对已定义的软件过程中的活动、角色和职责的共 同理解的基础之上。 4 第四级已管理级( ,i h em a n a g e dl e v e l ) 在已管理级上,组织对软件产品 哈尔滨理工大学t 学硕士学位论文 和过程都设置了定量的质量目标。对所有项目都测量其重要软件过程活动的生 产率和质量。利用项目组织的软件过程数据库收集和分析从项目定义的软件过 程中得到的数据。在等级4 上的软件过程都包含妥善定义的一致的测量活动。 这些测量数据是定量地评价项目的软件过程和产品的基础。项目通过将其过程 的实际变化限制在定量的可接受范围之内,从而实现对其产品和过程的控制。 处于等级4 的组织的软件过程能力可概括为“可预测的一。因为过程是已测量 的并能控制在可接受的变化范围内运行。等级4 的过程能力使软件开发组织能 在定量限制的范围内预测过程和产品质量方面的趋势。当超过限制范围时,能 采取措施予以纠正,使软件产品具有定量可预测的高质量。 5 第五级优化级( t h eo p t i m i z i n gl e v e l ) 在优化级上,整个组织集中精力 进行不断的过程改进。为了预防缺陷出现,组织有办法识别出过程的弱点并预 先予以加强。在对新技术和推荐的软件过程变更进行费用和效益分析时,利用 已测量的有关软件过程有效性的数据,将识别出最佳软件工程实践的技术创 新,并推广到整个组织。等级5 的组织的所有软件项目组都要分析缺陷,确定 其原因,并且认真评价其软件过程,以防止已知类型的缺陷再次出现,同时将 经验教训告知其它项目,在项目组织范围内共享。 处于第五级的组织的软件过程能力的基本特征可概括为“不断改进的”。 因为这些组织为改进其过程能力进行不懈的努力,使其项目的软件过程性能得 到不断改善纠u 。为了不断改进其过程能力,既可采用在现有过程中进行增量 式改进的办法,也可采用借助新技术、新方法对过程进行革新的办法h 钉。 为具体指导软件组织实施基于c m m 的软件过程改进,s e i 提出了i d e a l 模型m 1 ,如图2 - 3 所示,该模型概括了一个成功的过程改进项目的5 个必要阶 段: i :开始阶段( i n i t i a t i n g ) ,也是有人译成启动,是i d e a l 模型的开始步 骤,表示开发机构应为c m m 的引入准备好前期基础设施和程序。 d :诊断阶段( d i a g n o s i n g ) ,明确机构目前所处的能力水平及目标等级所 在。 e :建立阶段( e s t a b l i s h i n g ) ,制定如何实现目标等级的计划和策略。 a :行动阶段( a c t i n g ) ,执行计划和推荐的改进。 l :调节阶段( l e v e r a g i n g ) ,积累以往经验并将其用于持续的改进过程之 中,同时对新技术和工具加以引入以协助过程实施,分析得到的教训,改进工 作的商业结果,并进行修正。 哈尔滨理工大学工学硕士学位论文 图2 - 3i d e a i 模型 f i g 2 - 3i d e a lm o d e l i d e a l 模型是一个整体的框架,描述了实现软件过程改进( s o f t w a r e p r o c e s si m p r o v e m e n t ,s p i ) 所必须经历的阶段、活动和成功的软件过程改进工 作所需的资源。i d e a l 模型解决了这个问题:。在被评估之后,应该做些什么 来开始改进计划。计划中应该包括哪些活动”( p e t e r s o n ,1 9 9 5 ) 。i d e a l 模型 是对过程改进计划中的活动的详细描述,提供了在将c m m 过渡到企业实践的 过程中应该包括的一系列观点和意见,。 2 1 3c m m 的关键过程域 关键过程域是c m m 的重要特征,c m m 将2 到5 级分成1 8 个关键过程 域,每个关键过程域都包括一组相关的活动,而关键过程域的执行情况直接决 定组织所处的成熟度等级。c m m 的1 8 个关键过程域如表2 1 所示h 引。其中等 级2 的k p a 集中关注软件项目所关心的、与建立基本项目管理控制有关的实 哈尔滨理工大学工学硕士学位论文 践m 1 。 表2 - 1c l v l m 的关键过程域 c m m 级别对应关键过程域 c m m l ( 初始级i n i t i a l ) c m m 2 ( 可重复级r e p e a t a b l e )需求管理r m ( r e q u i r e m e n t sm a n a g e m e n o 软件项目策划s p p ( s o f t w a r cp r o j e c tp l a n n i n g ) 软件项目跟踪和监控s z r o ( s o f t w a r ep r o j e c tt r a c k i n g a n do v e r s i g h t ) 软件子合同管理s s m ( s o f t w a r e s u b c o n t r a c t m a n a g e m e n t ) 软件质量保证s o a ( s o f t w a r eq u a l i t ya s s u r a n c e ) 软件配置管理s c m ( s o f t w a r ec o n f i g u r a t i o n m a n a g e m e n t ) c m m 3 ( 可定义级d e f i n e d ) 组织过程焦点o p f ( o r g a n i z a t i o np r o c e s sf o c u s ) 组织过程定义o p d ( o r g a n i z a t i o np r o c e s sd e f i n i t i o n ) 培训大纲t p ( t r a i n i n gp r o g r a m ) 集成软件管理i s m ( i n t e g r a t e ds o f t w a r em a n a g e m e n t ) 软件产品工程s p e ( s o f t w a mp r o d u c te n g i n e e r i n g ) 组间协同i c ( i n t e r g r o u pc o o r d i n a t i o n ) 同行评审p r ( p e e rr e v i e w s ) c m m 4 ( 已管理级m a n a g e d )过程定量管理q p m ( q u a n t i t a t i v ep r o c e s sm a n a g e m e n t ) 软件质量定量管理s o m ( s o f l w a r eq u a l i t y m a n a g e m e n t ) c m m 5 ( 优化级o p t i m i z i n g ) 缺陷预防d p ( d e f e c tp r e v e n t i o n ) 技术革新管理t c m ( t e c h n o l o g yc h a n g em a n a g e m e n t ) 过程更

温馨提示

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

评论

0/150

提交评论