PLM软件项目质量管理解决方案

产品生命周期管理(ProductLifecycleManagement,PLM)是以软件为基础,管理与产品相关的信息和所有与产品相关的过程的技术。PLM软件开发过程与普通软件开发过程有类似之处,但对质量要求更

产品应用

plm系统

PLM软件

项目质量管理

产品生命周期管理(Product Lifecycle Management,PLM)是以软件为基础,管理与产品相关的信息和所有与产品相关的过程的技术。PLM软件开发过程与普通软件开发过程有类似之处,但对质量要求更为苛刻。因此在进行清软英泰PLM系统项目软件开发时,必须将质量管理的思想渗透到项目开发的各个阶段,对整个开发过程实施有效的质量控制。 


21世纪的中国软件业正处在全球竞争的时代,提高软件产品质量对企业的生存与竞争起着举足轻重的意义。近年来国外软件产业发展迅速,主要是研究并利用了软件过程管理的思想,许多的过程控制理论应运而生并应用于管理实践,这些管理理论十分注重产品的标准化程度,其中以美国卡内基·梅隆大学软件工程研究所提出的软件能力成熟度模型(CMM)与ISO9000标准族最为典型。
 

相对于制造业、建筑业等项目来说,软件项目成功率被公认较低,如何保障软件项目的成功率及软件质量成为我们面临的一个重要课题。戴明环(又名PDCA循环)作为有效的管理工具在质量管理中得到广泛应用,它为企业实施质量改进提供了一个周期性模型。




 
1.1背景及问题的提出
近年来软件逐渐成为人们社会经济活动和日常生活不可缺少的元素,所有计算机应用领域对软件质量都提出了全方位的要求,包括功能、性能、方便灵活、稳定可靠以及安全等,特别是在一些关键领域。其次,我们正面临着软件质量问题的严重挑战,包括软件质量问题引发的系统事故屡见不鲜;解决好软件质量问题存在着一些实际困难,这不仅因为软件及相关系统日益庞大和复杂,而且开发过程和软件产品不可见,需求又往往易变、多变。再者,软件测试技术至今仍不能理想地清除隐蔽的所有缺陷。
 
我们已经认识到软件质量问题无法只凭技术手段得以解决,重视开发的管理,加强软件过程,特别是加强对软件缺陷的管理,是取得高质量产品的必由之路。这就需要在大量的软件实践中总结一切有益的经验和教训,让软件人员有所了解,进而体会其内涵和实质,并且在工作中贯彻。
 
随着软件危机的频繁出现,以及人们对软件本质的进一步认识,软件测试的地位得到了前所未有的提高。软件测试已经不仅仅局限于软件开发中的一个阶段,它已经开始贯穿于整个软件开发过程,人们已经开始认识到:测试开始的时间越早,测试执行的越频繁,所带来的整个软件开发成本的下降就会越多。
 
美国质量保证研究所对软件测试的研究结果表明:越早发现软件中存在的问题,开发费用就越低;在编码后修改软件缺陷的成本是编码前的10倍,在产品交付后修改软件缺陷的成本是交付前的10倍。另外,根据对国际著名IT企业的统计,它们的软件测试费用占整个软件工程所有研发费用的50%以上,软件测试时间占整个软件工程所有研发时间的40%至50%。
 
产品生命周期管理(Product Lifecycle Management,PLM)是以软件为基础,覆盖产品生命周期中的所有过程和数据的管理。PLM系统管理的不仅是设计阶段的数据,跟随着产品的生命周期而传递的任何信息,都可以透过PLM系统去加以管理。这些管理的动作包括了在任何时间下,任何PLM系统的使用者,都可以在产品生命周期中的任一阶段,在权限的允许之下,取得产品生命过程中的各种相关信息。从而在计算机硬件平台上,构成一个大型的信息管理系统,清软英泰PLM将有效地对各类信息进行合理、正确和安全的管理,并提供一个并行工程环境,强调协同设计和资源共享。




 
1.2国内外研究现状
21世纪的中国软件业正处在全球竞争的时代,提高软件产品质量对企业的生存与竞争起着举足轻重的意义。近年来国外软件产业发展迅速,主要是研究并利用了软件过程管理的思想,许多的过程控制理论应运而生并应用于管理实践,这些管理理论十分注重产品的标准化程度,其中以美国卡内基·梅隆大学软件工程研究所提出的软件能力成熟度模型(CMM)与ISO9000标准族最为典型。CMM模型广泛在北美、欧洲和日本、印度等国家成功应用,已成为软件过程改进的工业标准。我国的软件企业规模小,管理技术相对落后,行业基础相对薄弱,为提高企业的生存与竞争力,必须调整产业结构,引进国外先进技术和管理经验。
 

1.2.1国外研究和应用现状
国际上从80年代初,就开始研究软件的质量控制问题,随着软件质量领域知识的增长,一些流行和重要的国际标准纷纷出台。ISO9000和CMM就是其中最具代表性的成果。同时,美国、欧洲、加拿大以及其他许多地区都建立了专门的协会、研究中心或实验室,为世界和本地区的软件企业,改善和提高其软件过程能力提供技术支持。

 
(1).ISO9000
ISO9000系列国际标准的主要用途是为企业建立质量体系,并提供质量保证的模式。其目标是

   1)被业界普遍接受;

   2)与当前技术协调;

   3)与未来发展协调;

   4)适应未来技术的发展。
 

ISO9000系列标准自从1987年发布以来,已经陆续发布了十几个相关的标准和指南,形成了质量管理和质量保证标准体系,受到了世界各国的踊跃采用和广泛实施。全世界普遍接受的目标已初步得到实现,国际化大趋势已成为现实。
 

我国自1992年等同采用ISO9000系列标准制定了GB/T19000—1994系列标准。颁布实施后,为我国的企业同国际接轨奠定了基础,受到了各行业、企业的极大关注。ISO9000系列标准包含了综合的质量管理概念和指南,是现代质量管理和质量保证理论的结晶,也是实践经验的总结。
 

同时对于消除国际贸易中的技术壁垒,提高企业素质、开展质量认证工作及保护消费者利益等方面起到越来越大的作用。欧共体在1992年就要求把取得ISO9000合格证书作为进入欧共体市场的条件之一。在欧共体之后,北美自由贸易区、澳大利亚和日本也对ISO9000提出了类似的要求,推行ISO9000已成为国际大趋势。
 

在ISO9000系列中,ISO9001是一个符合软件开发与维护的标准。它对企业的质量管理体系给出来一个宏观的框架。ISO9001包含20个要素,描述了软件企业质量管理和控制的各个环节,给出了一般质量系统的需求。同时,也使基于ISO9000建立软件企业的质量保证平台具有良好的可操作性。另外ISO9000—3为软件企业导入ISO9001提出了一个指南。

 
(2).软件能力成熟度模型(Capability Maturity Model—CMM)
1986年,美国卡内基—梅隆大学软件工程研究院(Software Engineering Institute—SEI)应美国联邦政府评估软件供应商能力的要求,开始研究软件能力成熟度模型—CMM(Capability Maturity Model),并于1991年推出其CMM1.0版,1993年推出CMM1.1版。CMM自问世后备受关注,在一些发达地区和国家得到了广泛的应用。

 
成为衡量软件公司组织管理软件产品开发能力的事实上的工业标准,并为软件公司改善其生产过程提供了重要的依据。在CMM模型及其实践中,企业的过程能力被作为一项关键因素予以考虑。

 
所谓过程能力,是指把企业从事软件开发和生产的过程本身透明化、规范化和运行的强制化。这样一来,就可以把软件开发及生产过程中成功或失败的经验教训变成今后可以借鉴和吸取的营养,大大提高软件生产的成熟程度能力。以我们的近邻日本和韩国为例,他们的若干大型信息技术骨干企业纷纷采纳了CMM模型及其相关标准。

 
CMM将企业的软件过程成熟能力划分为初始级、可重复级、已定义级、已管理级和优化级。等级愈高的企业,其软件过程的可见度愈好、软件过程的可控性愈高、产品性能的预见行以及软件项目的风险评估亦愈来愈准确。企业的生产能力以及产品质量也就愈来愈高。CMM也不仅仅应用于软件开发组织内,它也可作为认证机构的认证工具和用户评测一个企业是否达到所要求的能力的依据。
 

1.2.2国内研究和应用现状
自70年代出现软件危机以来,学术界和企业界对软件工程环境、工具和技术的研究都倾注了大量的人力、财力和物力,多年来也取得了许多成果。但一个不争的事实是,仅有这些并没有达到我们期望的效果。人们开始意识到,没有良好有序的管理,任何新技术都是无法得以真正实施的。以我国为例,近年来我国引进和自行开发的各种软件工具、开发环境种类繁多,数量浩大,花费达到几十亿元,但我国软件业的发展却并不尽如人意。原因何在?就是我国的软件行业缺乏规范的管理,软件生产的过程没有明确的定义,过程实施缺乏管理,产品质量得不到有效的控制。事实上,尽管软件的开发和维护过程随着其硬件环境和应用领域的不同而有所不同,但涉及软件生产的质量系统的指导性标准却是有相同的科学规律,并且是非常必须的。

 
近年来,我国政府非常重视软件产业的发展,出台了一批有利于软件产业发展的产业政策;建立了保护软件知识产权的法律体系;并投资建立了一批软件基地和软件园;形成了若干产值过亿元的软件企业;培养造就了一支高素质的软件研究开发人才队伍;形成了一批在市场占有一定份额的软件产品。



但我国究竟起步晚,目前我国的软件产业仍然是以中小企业为主的群体,其中:1)50人以下的企业占55%左右;2)50~200人的企业占42%左右;3)200人以上的企业占3%这些中小企业普遍存在严重的质量管理问题。而且由于规模下、底子薄,质量管理处于无序的状态。大多数企业无力承受高昂的质量改进费用和人力资源投入。国外的许多基于过程改进的质量保证技术和管理模式,并不适合于他们。
 

我国软件技术人员在数十年来的研究与开发工作中,一直在寻找适合我国特点的发展软件产业的途径,积累了一些经验,也有不少教训。今天大家的共识是:21世纪的软件产业必须走工业化生产的道路,实行软件开发生产组织的变革,实现软件开发的标准化,规范化和国际化。落实到具体,一方面我们需要营造软件工程文化,培养大量既懂信息技术又懂企业管理的高级人才,建立必要的信息产业通用基础设施;另一方面还需要建立过程工程、系统工程、面向对象技术、软件过程以及软件质量工程等五个以支持环境为主要特征的软件产业基础设施,以全面支持和促进软件产业国际化、标准化的建立与发展。
 

随着软件质量管理和认证工作在中国IT业的开展,其支撑技术的研究、支撑工具的开发也日益引起人们的重视,如何帮助软件企业的管理者和工程师理解ISO9000或CMM,引导企业建立标准化的生产过程和管理过程,进行工作流和文档流的控制和管理,以及软件过程和软件质量的度量技术等等,都是目前急待解决的问题。
 

自我国以等同采用ISO9000族标准的方式建立了我国的质量保证标准族GB/T19000,中国作为ISO9000认证的国际互认发起国之一,成功地通过了首批国际同行评审,成为具有国际认证资格的国家之一。同时,多年来在国家和政府的大力推动下,已建立了规范化的认证机构和审核员管理制度,确保了我国认证行业的国际地位。这些都为建立基于ISO9000的软件质量保证平台,奠定坚实的社会基础。
 

1.2.3我国软件项目质量管理现状分析
我国软件产业从20世纪80年代初开始起步,经过了十几年的艰苦创业和发展,目前很多企业已经具备了一定的软件开发和生产能力。特别是自90年代以来,随着国内软件市场的不断扩大,我国的软件产业也逐步走上了成熟、稳定的发展之路。从软件市场角度上看,我国的软件市场是一个具有高增长率的市场,每年都保持30%左右的增长率,目前在国内市场上,国产软件产品的市场占有率为30%。
 
   
2006年我国软件市场规模已达4800亿元,出口规模达60亿美元。从软件产业规模上看,截止到2006年,全国共有1.3万家认证软件企业,其中超过10亿元销售规模的企业有35家。从软件企业规模上看,虽然我国的软件企业规模大部分为中小型软件企业,但也形成了一些有相当规模和市场竞争力的软件企业集团,例如清软英泰软件公司。
 
   
尽管我国软件产业在近年来取得了很大的成绩,但总体水平仍处于初级阶段,在全球软件市场中,我国软件业所占份额不到6%。随着我国加入WTO,国内的软件企业不仅要同国内的企业进行竞争,还要同国际软件公司竞争。优胜劣汰是大自然发展的规律,当然也适用于软件行业。在这场竞争中,要么走向失败,要么在竞争中壮大,结果如何还要取决于企业如何决定自己的发展方向。
 
   
产品的质量是衡量一个软件企业好坏的重要标准之一。我国许多大型的软件企业早在20世纪90年代末就认识到了这个问题,并通过了ISO9000或CMM的质量体系认证,将质量管理真正实施到了企业的软件开发过程中。例如用友公司从1996年4月就开始实施ISO9000体系,并于1997年10月作为国内第一家软件企业通过ISO9001认证。
 
   
再例如联想集团,1998年成立的联想软件事业部在成立之初便将软件过程改进作为一项重点工作来抓,并进行了不断的探索;1998年3月,开始研究ISO9000质量管理体系并结合软件工程理论制定了研发规范;1999年初,开始接触CMM理论并以其为依据进行过程改进;2001年1月通过CMM二级评估;2002年1月联想软件事业部又通过CMM三级评估。联想软件事业部所取得的成绩有目共睹,可以说他们的软件过程改进方案是非常成功的。这些大型的软件企业正是由于他们对质量的重视并建立了完整的质量体系,使得他们能够进一步发展壮大,逐步在国际市场占用了一席之地。
 
   
虽然目前国内很多中小软件企业已经非常重视产品质量的提高,但是他们还是更多地关注如何降低成本、如何能提高开发的工作效率,质量管理仅仅建立在项目开发完成后的测试环节,其实这是远远不够的。一个先进的软件企业应该采用基本过程的项目质量管理。
 
   
通过在企业内部建立项目管理和质量管理的体系,可以使得企业形成适用于本企业的标准化的项目管理以及质量管理的过程,提高企业项目管理的成功率。通过在企业层面上保证产品质量,而不仅仅是只在某一部门或某一项目中进行保证,提升企业整体的质量竞争力。就质量管理水平而言,目前国内软件企业可以分为以下几种类型:
 
   ·手工作坊型
   软件开发过程类似以前手工作坊的传统操作模式,没有将先进的项目管理经验引入到软件开发过程中,工作处于无序状况。
 
   ·经验借鉴型
   企业规模偏小,由于财力、物力、人力等多方面的限制没有通过ISO9000或CMM认证,但是企业已经意识到项目管理及质量控制在软件开发过程中的重要性,因此借鉴这种管理规范来改进公司的软件过程。
 
   ·实施认证型
   企业通过ISO9000或CMM认证来改造企业的软件过程,提升企业的影响力,规范企业软件开发的过程。
 
   
我国中小型软件企业是大多数靠单打独斗作发展起来的,很多企业属于“手工作坊型”,缺乏质量意识,也没有建立完善的质量管理体系,因此经常出现在客户的要求和反馈中不断修改软件程序、项目周期大大延长的情况。虽然许多软件企业也采用项目管理制度,但一般仅仅表现在项目经理的职位和项目计划两个层面,对软件项目开发的过程控制、时间进度、质量风险等方面都缺乏深入和有效的管理。
 
   
这些软件企业需要迅速从“手工作坊式”的经营方式中转变过来,通过学习世界先进的管理技术,提高自己的项目管理以及开发大规模、高质量软件的能力,大幅度提高企业竞争力,使企业能在全球软件市场中占得一席之地。但是,转变成“实施认证型”所需花费的高昂认证费用,对于中小型企业来说都是难以承受的。这些软件企业应努力使自己转变为“经验借鉴型”的软件企业,借鉴先进的管理规范及管理经验并应用到软件开发过程中,建立本企业的软件开发质量管理模型。




 
1.3研究的目标及其主要的内容 
本论文的研究重点是清软英泰PLM系统软件开发过程中项目质量管理的实施过程,主要研究内容包括:

  1)软件项目质量管理PDCS模型的研究结合戴明环相关的项目质量管理思想,在该项目中我们实施了类似戴明环(PDCA环)的软件项目质量管理基本模型PDCS模型,并对该模型的实施过程进行了详细的说明,分析了在软件开发过程中如何通过实施PDCS模型对软件质量进行有效控制,重点讨论了在PDCS实施过程中对质量数据的分析及总结。

  2)质量与时间和成本的关系质量、时间和成本是每个项目实施过程中总要拥有相同的目标。三者是一个相互制约、相互影响的统一体,其中任何一项目标变化,都会引起另两个目标的变化,软件项目也不例外。本论文通过在PLM系统软件开发质量管理过程中对质量数据的归纳与总结,分析了质量对时间及成本的影响,以及如何处理好质量与时间、成本之间的关系。

  3)质量管理的方法和工具应用。
 
 
通过研究某软件公司的质量管理方法,以及在清软英泰PLM软件开发项目上的质量控制应用,阐述采用的质量管理的方法和工具,以及在质量管理中存在的问题。结合公司采用的敏捷软件开发,提出如何提高软件质量。并把PDCS的部分关键域应用到公司中去,提出切实可行的解决方案。利用PDCS的意义不仅仅是强调对软件开发的过程进行管理,关键是采取一种高效的管理方法,有助于企业最大程度的降低成本,提高产品质量和客户满意度。所有这些都是当前软件企业经常遇到而又十分棘手的重要问题。研究成果具有一定的参考性和前瞻性。