(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf_第1页
(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf_第2页
(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf_第3页
(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf_第4页
(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(工商管理专业论文)我国中小型软件企业开发过程管理研究与应用.pdf.pdf 免费下载

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

文档简介

0 4 2 0 2 5 3 7 7 陈元会我州中小型软件企业开发过程管理研究与应用 摘要 照着中国加入世界贸易组织,中国的软件企业越来越重视软件开发和管理的规范化。 但是比较国外先进的企业,在实践方面还缺少经验,尤其是中小型企业。c m m 是软件企业 改善软件过程,提高软件企业竞争力的一个重要模型。 本文从理论出发,研究c 删在我国中小型软件企业中的应用,对于我国中 小型软件企业的长远发展具有实际意义。首先,文章对c m m 以及相关的理论进行了研究, 由此指出c 姗对软件企业发展的重要意义:并对c 删在我国理论和实践两方面的发展也予 以了介绍。 然后,由c 删及其相关理论引出对我国中小型软件企业现状进行分析,并进一步研究 c m m 在我国中小型软件企业中应用的适用性。然后通过调查研究澳大利亚s o l u t o n 6 公司实 施c m m 的案例,对比国内某公司的实施c m m 的过程,总结分析经验,为国内的中小型企业 提供一些有益的借鉴和参考。 最后,本文作者结合自己在国内外不同软件企业实习工作的经验,提出一些国内中 小型软件企业实施c m m 的参考建议和注意事项,以供商讨。 中图分类号:f 8 3 2 3 3 关键词:能力成熟度模型中小型软件企业战略 2 0 4 2 0 2 5 3 7 7 陈元会 我国中小型软件企业开发d 程管理研究与戍用 a b s t r a c t s i n c ec h l n aj o i n e dt h ew o r l dt r a d eo r g a n i z a t i o ni n2 0 0 1 。t h ei ti n d u s t r yo fc h i n a p a y sm o r ea t t e n t i o no ni n c r e a s i n gt h e i rs o f t w a r ed e v e l o p m e n te f f i c i e n c y b u t c o m p a r e dw l t ho t h e rp o w e r f u ls o f t w a r ec o u n t r i e s ,t h es o f t w a r ei n d u s t r yo fc h m a s t a r t e dl a t e ra n dh a sl e s se x p e r i e n c e ,e s p e c i a l l yi ns m a l la n dm e d i u ms i z e d s o f t w a r ee n t e r p r i s e c wi sa ni m p o r t a n tm o d e lt h a tc a ni m p r o v es o f t w a r ep r o c e s s a n dh e i g h t e nc o m p e t e n c eo fs o f t w a r ee n t e r p r i s e b a s e do nt h e o r y ,t h i sd i s s e r t a t i o nm a k e sar e s e a r c ho nt h ea p p l i c a t i o no fc m m i n t os m a l la n dm e d i u ms i z e ds o f t w a r ee n t e r p r i s ei nc h i n a ,s oi th a st h ep r a c t i c a l s e n s eo ft h ed e v e l o p m e n to ft h e s ee n t e r p r i s e s s e c o n d l y ,t h ea p p l i c a t i o ni n t os m a l la n dm e d i u ms i z e ds o f t w a r ee n t e r p r i s ei nc h i n a i sd i s c u s s e d t h i st h e s i sf o c u s e so nh o wa na u s t r a l i as c i e n c ea d p l i c a t i o n i n t e r n a t i o n a lc o r p o r a t i o n ,i m p l e m e n t st h es e ic 删a n da n a l y z e si t sp r a c t i c eo f s e ic m m 。c o m p a r i n gt h ep r a c t i c ep r o c e s so fs e ic 删i no u rc o m p a n y a tl a s t ,g i v i n gar e f e r e n c eo ns o f t w a r ep r o c e s s ,o r g a n i z e m a n a g e m e n ta n dc o r p o r a t e c u l t u r ef o rc h i n e s ec o m p a n i e sw h oh a v ea ni n t e r e s ti ni m p l e m e n t i n gt h es e ic m m k e y w o r d s :c 啪s m a l la n dm e d i u ms i z e ds o f t w a r ee n t e r p r i s e :s t r a t e g y 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 第一章绪论 1 1 论文研究的背景、意义 计算机和通信技术的迅速发展,特别是i n t e r n e t 技术的发展与普及,为企业内部、 企业与外部提供了快速、准确、可靠的信息交流渠道。软件作为信息技术的核心,起着 至关重要的作用。信息化企业运作管理系统已成为企事业单位参与全球市场竞争的必备 支持系统。正是由于这样的市场需求与技术发展现状,为我国的i t 行业带来了空前发展 的机遇,特别是软件行业。入们日益关注软件开发过程中管理的规范化及标准化问题, 软件质量的提高对任何一个企业或集团的生存和发展都有举足轻重的意义。 随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式 开发方式己经越来越不适应发展的需要。从7 0 年代开始,人们逐渐认识到,为了保证软 件项目开发成功,必须采用工程化的系统开发方法,并研究出软件工程。这些方法旨在 指导开发者进行工程化的系统开发从而加快软件项目开发的速度、保证质量、以及降低 开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果,但是采用了工 程化的系统开发方法并不一定能保证软件项目开发的成功 1 。同时,随着软件开发规模 及开发队伍的逐渐增大,软件开发不再是像过去那样一二个开发人员即可解决的事情。 迫切需要一种开发规范来规范每个开发人员、测试人员与支持人员的工作,每个项目组 成员按约定的规则准时完成自己的工作。同时采用规范化管理,专业分工也可以降低对 开发人员的要求,从而降低产品研发成本。各软件企业都在积极将软件项目管理引入开 发活动中,对开发实行有效的管理。从概念上讲,软件项目管理是为了使软件项目能够 按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分 析和管理的活动 2 。 软件项目管理是为了使软件项目按照预定的成本、进度和质量要求,从而对人员、 成本、进度、质量和风险等进行有效分析和管理的活动。软件项目管理关心的三个方面 是时间进度、成本和质量。实施软件项目管理有利于软件企业整体开发能力和开发水平 的提高,与其它项目管理相比有其特殊性,首先,软件是知识产品,软件开发整个过程 都是设计过程,软件开发的产品是代码和技术文档,进度和质量都很难度量,生产效率 也难以保证。其次,软件系统的复杂程度也是超乎想象的 3 。正因为软件开发复杂性和 难以度量,使得软件项目管理显得尤为重要。 目前,我国的软件企业正处于高速发展、急需规范管理并以项目为主导的环境中。 企业每天所面对的不仅仅是几个越来越大的项目,而将是成千上万不断发生和进行的项 4 0 4 2 0 2 5 3 7 7 陈元会我i 问中小型软件伞业开发过程管理研究与应用 目。产生这种变化的因素是多方面的,这包括客户需求的不断提高导致产品生命周期缩 短;产品开发项目数量大增;新技术导致了对研究和开发项目需求的增加;为了提高业 务盈利能力,改进业务模式的项目需求大增等。在这种多项目开发、技术含量高、变化 速度快、资源有限的环境下,如何对企业、项目、资源实施科学的管理,加快团队能力, 实现软件企业的生产规模化、规范化、国际化,是当前我国软件企业面临的最大挑战。 在我国成为w t o 成员的今天,如何科学地管理企业,激励开发人员,提高软件开发的生产 率,按时、按预算提供满足客户需求、具有国际市场竞争力的软件产品,一直困扰着软 件企业的管理者,同时也成为阻碍我国软件业向国际化发展的绊脚石。我国目前软件业 的落后情况,实际已经不是技术本身的问题,而是科学管理的问题,我国软件业各个层 次上的管理问题,目前可以说已经制约了中国软件业走向国际化的进程。软件行业对项 目管理的迫切需求己十分明显。通过项目管理提高生产力、增加效益、提高项目质量的 作用己得到了业界公认,但目前软件企业对项目管理水平参差不齐。专家也在呼吁:中国 i t 业,特别是中国的软件业迫切需要应用项目管理,应当充分利用信息技术提高对企业 资源的整合和利用率。 1 2 软件项目管理的现状及存在的问题 在软件开发过程中,项目管理日益受到人们的关注。人们已经认识到软件 开发的成功不仅取决于系统设计者、开发者水平的高低,而且很大程度上取决 于开发过程中的管理 4 。 1 2 1 国外软件项目管理现状分析 美国学者d a v i dc l e l a n d 称:在应付全球化的市场变动中,战略管理和项目管理将起 到关键性的作用。在西方发达国家,项目管理己经形成了一门比较成熟的学科和行业, 学术研究活跃。1 9 6 5 年,以欧洲国家为主成立了一个组织一“国际项目管理协会” ( i n t e r n a t i o n a lp r o j e c tm a n a g e m e n ta s s o c i a t i o n 。i p m a ) 。4 年以后,美国也成立了“项 目管理协会”( p r o j e c tm a n a g e m e n ti n s t i t u t e ,p m i ) 。这两个国际性项目管理组织 的出现,大大推动了项目管理的发展。p m i 于1 9 8 7 年推出了项目管理知识体系指南 ( p r o j e c tm a n a g e m e n tb o d yo fk n o w l e d g e ,p m b o k ) ,这个知识体系把项目管理归纳为范 围管理、时间管理、费用管理、质量管理、人力资源管理、风险管理、采购管理、沟通 管理和整合管理九大知识领域。1 9 9 7 年国际标准化组织( i s o ) 以p m b o k 为框架提出了“项 目管理质量指南”( i s o1 0 0 0 6 ) 5 。发达国家的项目管理己初步形成了学科和行业,美 0 4 2 0 2 5 3 7 7 陈儿会我国中小型软件企业开发过程管理研究与应用 国项目锋理学会p m 【有几十个分会,三万多名会员,包括国外分会和会员。国际项目管理 协会i p m a 贝j j 是以欧洲国家为主体组成的。这些组织每年都进行很多行业眭和学术性的活 动,发行通讯和刊物、协助项目管理专业人员的招聘和就业。由于项目管理的普遍规律 和许多项目的跨国性质,各国专家都在探讨项目管理学科的国际通用体系,包括通用术 语。国际性学术会议也十分频繁,几乎年年都有。除了学者外,许多企业家也与会以期 交流和获取信息 6 软件开发项目管理最早源自于7 0 年代中期。当时美国国防部曾立题专门研究软件项 目做不好的原因,发现7 0 的项目是因为管理不善引起的,而并不是因为技术实力不够, 进而得出一个结论,即管理是影响软件研发项目全局的因素,而技术只影响局部。这个 结论非常重要。至u t 9 0 年代中期,软件研发项目管理不善的问题仍然存在。据美国软件 工程实施现状的调查,软件研发的情况仍然很难预测,大约只有1 0 的项目能够在预定的 费用和进度下交付。在商用软件产业中,这一现象尤为严重。1 9 9 5 年,美国共取消了8 1 0 亿美元的软件项目,其中3 1 的项目未做完就取消了,5 3 的软件项目进度通常要延长一 半的时间,通常只有9 的软件项目能够及时交付并且费用也不超支 7 。软件项目失败的 主要原因有:需求定义不明确;缺乏个好的软件研发过程:没有一个统一领导的产品研 发小组;子合同管理不严格;没有经常注意改善软件过程;对软件构架很不重视;软件 界面定义不善且缺乏合适的控制;软件升级暴露了硬件的缺点;关心创新而不关心费用 和风险;军用标准太少且不够完善等等。在关系到软件项目成功与否的众多因素中,软 件度量、工作量估计、项目规划、进展控制、需求变化和风险管理等都是与项目管理直 接相关的因素。 软件项目管理的研究先是在西方大型软件企业得到了广泛应用,很多企业还针对自 身业务特点制定了专门的项目管理手册,使得企业的研发工作更加制度化、科学化和规 范化。 作为目前项目管理应用最广泛的软件行业,其项目的易于失败也不容忽视。软件项 目的失败,大多数是费用和时间上的偏差,即不能在规定的时间和预算内完成项目,往 往造成人力物力的极大浪费。然而由于软件项目的高效益性,这种浪费在很多时候没有 引起足够的重视。因为即使有浪费,很多项目最终还是会盈利,这就使软件业难以提高 警惕。 在1 9 9 5 年,斯坦笛什咨询公司公布一份名为“混沌”的调查报告引起了广泛关注, 这份报告指出每年美国的公司要花费2 5 0 0 多亿美元在1 7 5 0 0 0 个信息技术项目上,但是在 规定时间和预算内完成项目的目标的只有1 6 3 8 。 最近的一项调查表明,平均3 5 至1 j 4 0 公司的运作是基于项目的;在特定行业( 比如i t ) 6 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 中,甚至1 0 0 的业务都是皋于项目的。而其中,只有1 7 的项目是按时、按预算、以可接 受的性能级别完成的,8 3 的软件项目都遇到了麻烦。i t 行业对项目管理的迫切需求已十 分明显 9 。 软件项目管理一般包括需求管理、软件项目计划管理、软件项目的跟踪与监督、软 件项目质量管理、软件配置管理和软件转包合同管理等 1 0 。软件项目管理方面的研究 是当前研究的一个热点。目前比较先进的软件项目管理的相关理论有美国卡内基梅隆大 学软件工程研究所推出的软件能力成熟度模型( s w c m m ,以下简称c m m ) 、小组软件过程 ( t s p ) 以及个人软件过程( p s p ) 等理论。软件工程中使用的软件项目管理工具有 p r o j e c t 2 0 0 0 和r u p t 具等。 1 2 2 国内软件项耳管理现状及存在问题 曾经有专家说,中国在8 0 年代推行的c i m s 项目几乎全部失败,而现在 软件项目能达到项目目标的不到1 0 9 6 。如此令人震惊的数字后面意味着巨大 的人力和财力浪费、巨额的利润损失。 对比中外的软件开发可以看到:无论是开发过程所基于的平台、开发工具 还是开发人员的个人水平方面,我国都与国外处于同一层次上。但是国外的软 件之所以优于国内,一个重要的原因是国外的软件组织对于整个开发过程进行 了有效的管理。 我国对项目管理的系统研究和行业实践起步较晚。尽管一些高校7 0 年代 末就开始这方面的工作,至i 1 9 9 1 年才成立全国性的项目管理研究会,开过三 次学术年会,一次国际研讨会,做了许多有效的工作。在1 9 9 1 年于上海召开 了“新时期大型工程项目管理理论与实践”的大型会议,并在1 9 9 3 年,开展 “重大学科工程项目管理理论与方法研究”,立为国家重点项目 1 1 1 。 目前许多软件开发公司实行了i s 0 质量管理体系,也有越来越多的公司通过了c m m 软件成熟度相应级别认证。各软件在制定i s 0 质量管理体系时结合了部分项目管理的思想 和技术,因此这些经过认证的公司的项目管理工作在i s 0 质量管理体系或c m m 的帮助或 约束下己有一定的规范,项目可以按照规定的过程一步一步做下去。但i s 0 体系注重的是 质量管理( 即用过程保证质量) ,早期更多的是针对制造业,而c m m 主要是针对软件开 发过程的关键过程域,都没有针对项目管理的全部范畴,如对于整体、范围、进度、人 力资源、成本、沟通、风险、采购等的管理,即使有涉及到也是在专业范围内通过对过 程的把握来保证各种质量要求,而在过程规定之外还需要依靠项目相关各方运用项目管 理知识、工具、集体与个人的智慧来使项目管理做得更好,以保证项目在使用最少的时 7 0 4 2 0 2 5 3 7 7 陈元会 我闰中小型软倒企业开发过程管理研究与应用 间、资源情况下按时保质地完成 1 2 。我国软件企业实施软件项目管理水平参差不齐, 除了少数大型软件企业,己经比较规范的实施软件项目管理,其余大部分中小型软件企 业,没有进行规范的和有约束力的软件项目管理,更谈不上达到c m m 2 级及以上等级能 力水平。 目前国内软件开发项目管理的问题和差距何在? 更多的可能是实践问题而非理论问 题,主要存在的问题有: 1 缺乏项目管理意识 不能真正区分项目实施和项目管理的工作任务,是目前存在的普遍问题。可概括为 “没事做”和“没人做”并存的现象,这往往由开发骨干兼任项目经理所致。一方面, 如果设立专职的项目经理,专做项目管理而不做任何分析、设计、编码、测试等具体的 技术实施工作,就会感觉“没事做”,或是在打杂。另一方面,由于主要或全部精力均 忙于具体技术工作,各种项目管理任务( 如:项目分析评估、项目计划的制定检查调整、 上下左右的沟通、专业资源调配、项目组织调整,项目财务控制、风险分析对策等) 不 可避免地疏于顾及,项目管理的事情“没人做”,导致项目控制的问题“积劳成疾”, 后悔莫及。在中、小型项目中,管理任务可能不饱和,有条件的项目经理可以兼任项目 技术主管或业务咨询,关键在于要有将项目管理工作区分出来的意识和责任感。 2 没有适合软件开发项目的项目管理模式 目前我国大部分软件公司,无论是产品型公司还是项目型公司,都没有形成适合自 己公司特点的软件开发管理模式,虽然有些公司根据软件工程理论建立了一些软件开发 管理规范,但并没有从根本上解决软件开发的质量控制问题。这样导致软件产品质量不 稳定、开发周期过长、成本控制不力、软件后期的维护,升级出现麻烦,同时最终也会 损害用户的利益,影响到了软件生产和开发企业的发展后劲并且影响到了企业的综合竞 争能力,扩大了与国外以及一些大规模软件公司的差距。没有适合我国软件企业的软件 项目管理模式,必然导致存在成本控制不当、项目计划不合理等问题。 3 项目成本控制不当 项目管理的精髓是必须在规格( s p e c i f i c a t i o n ) 、成本( c o s t r e s o u r c e ) 和进度 ( s c h e d u l e ) 之间取得平衡。而目前国内的软件企业,尤其是系统集成企业,普遍没有建 立专业工程师的成本结构及运用控制体制。因而无法确立和实现项目成本的指标、考核 和控制,导致公司与项目经理之间的责任不清。直白地说,项目经理可以不计成本地申 请资源, “韩信点兵,多多益善”,而公司处于两难,答应则可能投入太大,拒绝则必 须承担项目失败的责任。上级经理成了项目经理。 不建立专业资源成本结构,就无从实现项目的成本管理,就不会有真正的项目管理。 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 4 项目计划不合理 项目计划是项目经理实施项目管理控制的基础。目前的差距主要有:一是项目计划的 制定不够严谨,随意性大,可操作性差,因而实施中无法遵循,如项目计划过于粗略, 落实b r e a k d o w n ( “粒度”) 不足 1 3 ;没有做到任务、进度、资源三落实。二是缺乏贯穿 项目全程的详细项目计划,甚至采取每周制定下周工作计划的逐周项目计划方式,其实 质是“项目失控合法化”三是项目进度的检查( 与进度计划比对) 和控制不足,不能维 护项目计划的严肃性。 5 软件项目管理不能持续改进 即使有了较成熟的项目管理,当企业在项目管理上走向成熟,并达到了一定程度的 成功,获得了可持续性竞争优势的时候,企业的竞争者不会坐视这些,他们必然也在不 断进步。这样,也许企业会丧失大部分的可持续性竞争优势。所以,要想保持企业的持 续竞争力,就必须要认识到持续改进的必要性。持续改进可以使企业保持住它的竞争优 势,不断应对新的挑战。 6 项目风险意识 项目风险意识就是失败意识。每当启动一个项目的时候,项目开发组织往往憧憬项 目投产之日的成功,但是否想过精疲力竭后失败的沮丧? 风险意识,就是对这种结局的可 能性的警惕。如此,开发组织就会小心谨慎地处理许多项目业务需求、技术方案和组织 管理的问题。 1 3 国内外c 埘理论研究及实践 c 埘不仅是一个模型,一个工具,它更代表了一种管理哲学在软件工业中的应用。 e m m 的管理思想来源于已有6 0 多年历史的产品质量管理。1 9 3 0 年w a l t e rs h e w a r d 率先提出 了一整套基于统计学原理的质量控制方法,这些方法后来经过w e w a r d sd e m i n g 和j o s e p h j u r a n 的发展和实践得到了广泛的应用。p h i l i pc r o s b y 在质量是免费的一书中率先 提出将质量管理形成成熟度框架的概念,“质量管理成熟度坐标图表”描述了进行质管 实践的5 个阶段,表达了质量管理的全部运作。d e m i n g ,j u r a n 以及c r o s b y 等人的做法后 来被称为全面质量管理( t q m ) 理论。 在i b m 公司,w a t t sh u m p h r e y 和r o nr a d i c e 将这种全面质量管理的思想应用于软件工 程过程,收到了很大的成效。s e i 的软件能力成熟度框架就是在以h u m p h r e y 为主的软件专 家实践经验的基础上发展而来的。软件能力成熟度框架中融合了全面质量管理的思想, 以5 个不断进化的层次反映了软件过程定量控制中项目管理和项目工程的基本原则。 9 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 c 姗的工作最早开始于1 9 8 6 年l1 月, 当时为了满足美国联邦政府评估软件供应商能 力的要求,美国卡内基梅隆大学的软件工程研究院( s e i ) 牵头,在m i t r e 公司的协助下, 亨弗雷等人于1 9 8 7 年9 月发布了一份能力成熟度框架( c a p a b i l i t ym a t u r i t yf r a m e w o r k ) , 提出了软件过程、软件能力成熟度和成熟度等级等概念,以及一套成熟度问卷( m a t u r z t y q u e s t i o n n a i r e ) ,用来评估软件供应商的能力,这就是最早用于探索软件过程成熟度的 一个工具。 s e i 总结了自1 9 8 7 年以来对成熟度框架和初版成熟度问卷的实践经验,并以此为基 础,于1 9 9 1 年推出了c m m l o 版,正式形成了软件能力成熟度c m m 。c m m 标准共分五个等级, 分别为:初始级、可重复级、定义级、管理级和优化级,c m m 为软件的过程能力提供了一 个阶梯式的改进框架,它基于以往软件工程的经验教训,提供了一个基于过程改进的框 架图。这个模型可以更加有效地帮助软件企业建立和实施过程改进计划。 c m m i 0 版使用两年之后,s e i 于1 9 9 2 年四月进行了一个研讨会,会后又于1 9 9 3 年推出 了c m m1 1 版。 此后,c m u s e i 基于几年来将框架运用到软件过程方面所取得的经验,进一步扩展和 精炼了该模型,s e i 于1 9 9 9 年又推出了c 埘2 0 版本,同时进入了i s o 体系,采纳了i s o i e c t r1 5 5 0 4 软件过程评估国际标准的一些内容和方法,因而保证了c m m 与国际标准的一致性。 目前,c m m 己经发展到c 删i ( c a p a b i l i t y m a t u r i t ym o d e li n t e g r a t i o n ,能力成熟 度模型集成) 阶段。c 删i 把系统工程能力成熟度模型、软件能力成熟度模型、集成的产品 和过程开发( i p p d ) 以及软件采办能力成熟度模型集成在一起,形成一个集成的c m m 。主要 目的是消除不同模型之间的不一致和重复,可以更好的发挥模型集成后的整体效益。 实践表明,软件项目或软件开发组织的软件能力成熟度的提高,如果没有个体的过 程意识和过程能力的支持讲是无济于事的,针对上述问题,1 9 9 5 年亨弗雷等人又提出了 个体软件过程( p e r s o n a ls o f t w a r ep r o c e s sp s p ) 框架,该框架可用于控制、管理和改 进个人软件工作方式的自我改善过程,c m m 侧重于宏观管理,而p s p 侧重于微观优化,二 者相互支持,互相补充。 以上内容体现了国际上c m m 的发展状况,在中国,c 删理论研究基本上都是从国外拿 来的,未真正体会这些理论产生的过程和背景。但是这些理论多是以美国等先进国家为 主导的,对发展中国家的企业实践几乎没有研究,也没有相应的理论。我国在c 删上也 进行了努力,根据我国一些大型工程项目的需求,在国内外情况和技术资料充分调研和 分析的基础上,参照c w 的总体框架,提出了一个符合我国国情和软件开发水平的软件 能力成熟度模型c s c i l , b i ,该模型除了必要的适应性改造外,在总体框架和具体内容方面完 全与国际接轨,标志着我国对c m m 的研究开始国情化。 1 0 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发d 程管理研究与应用 1 4c 姗在应用中面临的问题 能力成熟度模型( c m m ,c a p a b i l i t ym a t u r i t ym o d e l ) 已成为在全世界推广实施的一 种软件评估标准,其所带来的软件过程改进也是有目共睹。尝试进入国际软件市场的中 国企业,越来越深刻地认识到c 删对于开拓海外市场的重要作用,但目前的事实是:很多 企业虽然知道c m m 认证,但对于如何基于c m m 快速实施软件过程改进,还存在很多疑惑。 0 2 业的决策者、领导者、实施者,阻碍中国软件企业进入国际市场的一个瓶颈。c m m 体 系是很通用的原则,而不是具体的规定。尽管机构可以按照不同的方式实现c m m ,但是把 c m m 中描述的特性和现实中的实践以及过程关联起来非常困难。c m m 模型中的关键实践只 是描述了应该做些什么,而对于如何做并没有给出参考。每个企业或项目必须根据自身 的实际情况制定相应的策略。然而,在我国软件企业管理薄弱的环境下,最缺乏的就是 深入理解c 删、可供参考的实施方案、过程改进和评估标准的融合框架,缺少用于过程改 进的各种解决方案尤其是对于软件过程中e m m 如何进行应用,相关的资料更是如风毛麟 角。如何来度身定制一整套行之有效的实施方案成为中小企业面l 晦的最大难题。 1 4 1 5 研究的内容和研究方法 软件项目管理是软件开发项目成功与否的关键。由于管理而不是技术的原 因使得软件项目不能按期交付或超出预算甚至完全失败的案例经常可见 1 5 。软件项目 计划是软件过程管理有效实施的基础。一个合理、客观的软件项目计划能为项目勾画出 一个整体轮廓,并使小组和管理人员,对项目有关事项如资源配备、风险化解、人员安 排和时间进度等进行事先约定并达成普遍共识。软件项目计划基于产品规模和任务时间 的估计,随着项目的进展,有些估计能够较好地与实际相符,有些则可能出现偏差。为 保证项目按计划如期完成,管理者需要对计划进行调整和监控。 本文的总体思路是以研究c m m 的理论和澳大利亚s o l u t i o n 6 公司及h t 公司案例为主 线,借鉴管理学、软件工程学、企业战略,研究c m m 在我国中小软件企业中的应用。通过 在企业中多年工作所积累下来的经验,结合软件过程中的实际情况,以s o l u t i o n 6 公司和 h t 公司的案例为参照,立足于中小型软件企业进行研究,总结出有实际意义的理论,力 求理论上有所创新,并普及到其他类型的软件企业当中,得出更具一般性的c m m 实践理论。 总结出一套适合我国软件企业尤其是中小型软件企业的理论和实践。 本文研究所要解决的问题就是: 针对没有适合软件开发项目的项目管理模式、软件项目管理不能持续改进,提出 了基于过程改进的软件项目管理模式。 1 1 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 针对软件项目成本控制不当、软件项目计划不合珲,具体研究以上模式中软件项 目计划管理的方法及实施应用。 希望帮助企业提高软件项目开发和管理的综合管理能力、企业的竞争能力,为企业 创造价值、为客户提供满意服务,通过不断的实践、总结和提高,逐步提升软件企业的 项目管理能力和竞争力,在大量软件企业项目管理能力进步的基础上,逐步提升整个产 业的综合能力,提升中国软件企业的竞争力。 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与府片i 第二章c m m 及其相关的理论概述 2 1 相关理论概述 在讨论c m m 在我国中小型软件企业中应用的问题,不应仅仅局限于软件工程层面上, 因为c m m 在我国中小型软件企业中应用涉及到管理学的方方面面,归根到底,软件企业 也需要战略管理。 2 1 1 软件企业战略管理 软件企业战略管理,是在市场经济高度发展的条件下,企业以超越对手、发展自己 为目的,以争夺顾客、争夺市场为主要内容,所展开的一系列带有全局性、根本性和长 远性的谋划。软件企业战略管理是依据企业外部环境和自身条件的状况及其变化制定并 实施战略,并根据对实施过程与结果的评价和反馈来调整、制定新战略的过程。企业战 略管理的目的是为企业的持续生存和不断发展提供一种管理上的保证。 企业战略管理的对象,是对企业发展全过程的管理,是对企业整体的全方位管理。 一个战略管理的过程,就是所谓战略周期,如同人的生命周期一样,有始有终。对于企 业成长发展来说,企业战略问题总是不断出现,即企业上一个战略周期结束之后,新的 战略周期应不间断地立即投入运行。随着时间的推移,企业战略管理不断取得成功,企 业的兴旺发达就是必然的了。 企业战略管理工作的中心环节,是寻求企业资源能力和外部环境的动态平衡。企业 战略管理工作涉及的面是很全的,时间也很长,即所谓全面性、根本性和长远性。 2 1 2 软件项目管理 软件项目管理的提出是在2 0 世纪7 0 年代中期的美国,当时美国国防部专门研究了软 件开发不能按时提交、预算超支和质量达不到用户要求的原因,结果发现7 0 5 的项目是因 为管理不善引起的,并非技术原因。于是软件开发者开始逐渐重视起软件开发中的各项 管理。直到2 0 世纪9 0 年代中期:软件研发项目管理不善的问题仍然存在国外项目管理研 究小组s t a n d i s h 1 6 。经过调查发现:在软件项目中约3 0 的项目被取消;约7 5 的项目延 时完成:约6 1 的项目不能达到预期的功能和特性;平均每个项目超过预算成本率1 8 9 ; 平均项目完成超时率2 2 2 从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺 利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件 项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化 成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟, 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 企业越能够稳定发展( 即减小开发风险) 。软件开发不同于其他产品的制造,软件的整个 过程都是设计过程( 没有制造过程) ;另外,软件开发不需要使用大量的物质资源,而主 要是人力资源;并且,软件开发的产品只是程序代码和技术文件,并没有其他的物质结 果。 从风险控制上讲,软件是纯知识产品,其开发进度和质量很难估计和度量,生产效 率也难以预测和保证。其次,软件系统的复杂性也导致了开发过程中各种风险的难以预 见和控制。w i n d o w s 这样的操作系统有1 5 0 0 万行以上的代码,同时有数千个程序员在进行 开发,项目经理都有上百个。这样庞大的系统如果没有很好的管理,其软件质量是难以 想象的。 软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期 ( 从分析、设计、编码到测试、维护全过程) 都能在管理者的控制之下,以预定成本按期、 按质的完成软件交付用户使用 软件项目管理的内容主要包括如下几个方面:人员的组织与管理,软件度量,软件项 目计划,风险管理,软件质量保证,软件过程能力评估,软件配置管理等。 这几个方面都是贯穿、交织于整个软件开发过程中的。其中人员的组织与管理把注 意力集中在项目组人员的构成、优化;软件度量把关注用量化的方法评测软件开发中的 费用、生产率、进度和产品质量等要素是否符合期望值,包括过程度量和产品度量两个 方面;软件项目计划主要包括工作量、成本、开发时间的估计,并根据估计值制定和调 整项目组的工作;风险管理预测未来可能出现的各种危害到软件产品质量的潜在因素并 由此采取措施进行预防;质量保证是保证产品和服务充分满足消费者要求的质量而进行 的有计划、有组织的活动;软件过程能力评估是对软件开发能力的高低进行衡量;软件 配置管理针对开发过程中人员、工具的配置、使用提出管理策略 ( 1 ) 软件项目管理的发展 在世界范围内,软件项目正以飞快地速度增长。而我国f 1 2 0 世纪8 0 年代中期以来, 软件业呈现加速发展的态势,并已经达到相当的规模,在国家经济总规模中的比例逐年 上升,但软件质量仍亟待提高,软件项目开发中仍然存在大量和各种层次的问题与矛盾。 加强软件项目管理研究、提升实际管理水平是当前我国软件业急需解决的突出问题。从 具体实际情况来看,一方面存在诸如项目进度控制失败、系统结构设计不合理、代码质 量差等技术层面的问题;另一方面还有如对于软件项目问题因不同角度的理解而产生偏 差、对于项目中管理控制的把握不够、软件项目投资人在项目中的角色和地位含糊等认 识层面的问题,而认识层面上的问题又是其中的重中之重 2 0 0 2 年,全球通过c m m 标准评估的已有1 2 0 0 多家企业,其中,通过4 级或5 级的企业仅 1 4 0 4 2 0 2 5 3 7 7 陈元会我国中小型软什氽业开发过程管理研究与应用 7 ,3 级的约占1 6 4 ,2 级的约占3 1 2 。印度是仅次于美国通过企业最多的国家。在全 球己注册的3 8 家c m m 顶级( 第5 级) 企业中,印度占有2 2 家 1 7 。 截至2 0 0 0 年底,我国仅摩托罗拉中国软件中心通过c m m 顶级( 第5 级) 评估外,东大阿 尔派公司、清华鼎新公司只通过了c m m 第2 级评估。此外,联想等6 家i t 企业己着手按照c m m 标准提高软件过程能力。显然,我国与美国、印度等软件大国还存在较大差距。从国际 市场竞争态势看,c m m 标准很可能为软件产品国际贸易中的技术壁垒之一,尤其是在政 府采购或大型软件项目的国际招、投标活动中。我国软件企业能否通过c m m 评估,己成为 我国软件产业能否从根本上走上规范化发展道路,改善管理、提高质量、增强国际竞争 力的关键。 为了提高我国软件企业的管理水平和过程能力,为软件业营造一个能够不断自我完 善的标准化环境,国家软件体系评估标准特别工作组已于2 0 0 0 年9 月2 8 日在北京成立由 全国信息技术标准化委员会牵头,2 0 多家著名i t 企业参与,参照c m m 模型研制我国软件过 程能力评估标准的工作己启动 1 8 。 与国外相比,我们在软件项目管理方面的差距不仅表现为管理体制、管理方法、管 理思想的陈旧,整个软件业的落后是根本原因。 ( 2 ) 软件项目管理发展中存在的问题 成功的软件项目仍然在很大程度上体现为项目管理者的成功,项目管理者是软件项 目开发中纠纷的解决者。他们所关心的是那些可能阻碍项目成功的关键问题和领域,他 们的任务是针对项目所面临的问题建立模型并寻求解决之策。在软件开发实践过程中, 软件项目管理者所认定的软件项目一般问题如下: ( 1 ) 难以评估和计划: ( 2 ) 缺乏质量标准和度量标准 ( 3 ) 缺乏组织决策指导; ( 4 ) 难以预见技术的进步; 项目成员可能列举的问题主要有: ( 1 ) 不充分的项目开发说明书: ( 2 ) 忽视i t 特点的管理行为; ( 3 ) 项目技术人员缺乏应用层面的知识; “) 没有明确的技术标准和规范; ( 5 ) 前期工作不能按进度时间完成( 包括设备交付的延迟等) ; ( 6 ) 用户和技术人员之间缺乏交流; ( 7 ) 项目关键人员缺乏诚信( 诸如项目成员不顾项目成败系于一身而离 0 4 2 0 2 5 3 ”阿元会我国中小型软件企业开发过程管理研究与府片i 去) : ( 8 ) 项目组织内技术专家视野的局限性; ( 9 ) 项目需求的不确定性; ( 1 0 ) 软件环境的不确定性; ( 1 1 ) 缺乏有效的软件质量控制技术和手段 ( 1 2 ) 用户的培训问题。 在软件项目活动中,除了项目管理人员和具体人员以外,用户也是项目环境中不可 或缺的一部分。而计算机软件项目产品用户因许多问题所遭受的损失也不胜枚举。 2 2c m m 的理论 2 2 1c 删的起源及其理论发展 ( 1 ) c m m 提出的实践背景 软件开发技术的发展状况 5 6 f 代,软件开发主要用于科学快速计算,开发方法依靠逻辑能力和施展高技巧; 6 0 年f 、:件开发进入商业、银行等领域,以“软件工程”来解决“软件危机”, 其特点是强调开发的可见性来支持开发管理; 7 0 年代,主要是大量的各种类型的非数值计算的商业事物应用,并涉及大量智能领 域,开发方法有两大发展:一是数据结构与算法;二是结构化分析与设计。软件工程提出 了瀑布模型; 8 0 年代,软件开发用于以数据库为中心的计算机信息系统,出现了关系数据库的客 户服务器计算,出现了c m m ,面向对象技术崛起; 9 0 年代,处理的不仅是文字、数据、符号,而是多媒体,因特网遍布世界,出现了 j a v a 语言,开发方法强调集成,软件开发过程己从目标管理转向过程管理,追求过程改 进。 软件及其特殊性软件相对于硬件而言,包括计算机运行时所需要的各种程序,一 般分为系统软件和应用软件。一般来说,软件包括三层含义,第一,个体层次,包括计 算机系统中的程序及文档,程序是计算机任务处理的对象加规则的描述,文档是理解程 序所需的阐述性文件;第二,整体层次,指在特定的计算机系统中,所有上述个体层次 的总称;第三,学科层次,指研究、开发、维护和使用软件过程中涉及的理论、方法、 技术所构成的学科。 1 6 0 4 2 0 2 5 3 7 7 陈元会我国中小型软件企业开发过程管理研究与应用 随着软件需求的快速增长,软件应用中出现的问题越来越多: 软件成本高。随着计算机技术的进步,生产规模的扩大,计算机硬件的价格不断下 降,软件成本在计算机系统中所占的比例越来越大,由5 0 年代的1 0 _ 2 0 到现今的7 0 左 右,对软件的管理成为计算机系统中的主要部分。 软件开发的进度难于控制。软件是一种逻辑系统,设计软件比设计硬件所使用的逻 辑量要多l o 至t 1 0 0 倍。为完成一个复杂的软件系统,需要建立一个庞大的逻辑体系。此外, 同样的软件算法在程序实现上的差别也非常大,加之在软件开发过程可能遇到各种意想 不到的问题,所以投入的资源能否出结果,出什么样的结果,事先很难预料。软件这一 特点,不仅给项目计划和论证工作带来很大的困难,而且很难保证按预定计划实现。 估计软件工作量困难。一方面软件开发是逻辑思维过程,在写出程序并在计算机运 行之前,软件开发的进展情况难于衡量,质量也难于评价,因而其工作量很难估计;另 一方面,开发一个大型软件系统,往往需要成百上千人分工协作。由于软件系统的结构 很复杂,各部分联系密切,大量的通信、后勤工作增大了工作量。 软件质量难于保证。软件的质量问题与其他商品的质量问题有很大不同,因为软件 设计人员与用户对计算机的理解有很大距离,这样在需求分析上就难免存在差距。此外, 在软件开发过程中,即使有很多文档,大量的素材仍在程序员的头脑中,软件也只有程 序清单,这样导致软件的维护十分困难。 修正维护软件困难。随着时间的推移,在不同的运行条件下,软件会出现故障,需 要维护。 要想高效率、高质量和低成本地开发软件,必须以改善软件生产过程为中心,全面 开展软件工程和质量管理手段,这是各国软件产业迟早都要走的道路。目前,c m m ( 能 力成熟度模型) 是国际上普遍采用的一种方法,同时也是比较实用的软件生产过程标准, 因为它是结合质量管理和软件工程的双重经验,专门针对软件生产过程制定的一套规范。 ( 2 ) c m m 提出的理论基础 一种新管理方法的出现,必然有其发展的思想来源和历史背景。c m m 的技术报告指 出:c m m 的思想内核及其结构是基于几个推行产品质量的科学家的理论。这些学者是:沃尔 特谢华特( w a i t e rs h e v a r t )

温馨提示

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

评论

0/150

提交评论