1、软件质量管理体系-ISO 9000 -09-10 23:07:20标签: ISO标准和软件企业质量管理体系自从1987年公布ISO 9000族标准以来,ISO 9000族标准已经成为全球最有影响质量管理和质量确保标准。ISO 9000族标准制订和实施反应了市场经济条件下供需双方在进行交易活动中要求。供方只要按ISO 9000族标准组织产品开发和生产,并经过权威机构认证,在产品质量方面就会赢得用户充足信任。其次,用户在市场上选购产品时,更愿意选择经过质量认证企业所生产产品,从而降低一部分多出或力不从心繁琐质量检验活动。ISO 9000族标准建立在“全部工作全部是经过过程来完成”这么一个认识基础之
2、上。每一个过程全部由诸如原材料、设备、组织和人员等作为输入,输出是过程结果,如半成品、成品和计算机软件产品等。质量管理是经过对组织内多种过程进行管理来实现。一个组织多种职能和各层次管理一贯目标应该致力于不停地进行质量改善,以满足用户和社会需要。在ISO 9000族标准中,和软件企业关系最亲密是ISO 9001 质量体系-设计、开发、生产、安装和服务质量确保模式和ISO 9000-3 质量管理和质量确保标准 第三部分:ISO 9001在计算机软件开发、供给、安装和维护中指南。ISO 9001标准从20个方面全方面定义了质量体系要素,要求了质量体系要求,假如产品开发、生产者或供给方达成了这些要求,
3、就表明含有了质量保障能力。尽管ISO 9001标准全方面明确地定义了质量管理工作各个方面,包含了软件开发活动全过程,不过ISO 9001关键是针对制造业制订,没能详尽地描述软件企业质量管理工作。所以,ISO专门制订了ISO 9000-3作为ISO 9001标准实施指南。ISO 9000-3作为软件企业实施ISO 9001指南,对其中20个质量要素作了深入解释和说明。其关键思想是:软件开发和维护有着一系列任务。这些任务顺利完成需要各级管理层和开发人员共同配合和一致协调。其中高级管理层应该依据其在过去工作中积累经验来制订总体策略,下一层管理者负责制订用来实现总体策略实施计划,并管理她们所制订计划实
4、施。开发人员在计划时间内、以尽可能低费用开发出满足功效要求软件前提是正确地了解用户需求。需要指出是,ISO 9000-3对软件企业软件开发和维护活动起到是指导性作用,不带有强制性,而含有提议性。一个软件企业在落实和实施ISO 9000-3过程中,应该依据企业本身基础和现实状况,有针对性地开展软件质量管理和质量保障活动。软件企业影响软件质量全部原因在软件生命周期内一直处于被监控状态,实现连续不停质量改善。另外,ISO/IEC于1995年制订了信息技术-软件生存周期过程(ISO/IEC 12207:1995),全方面系统地描述了软件生存周期过程,是ISO 9000-3实施指南深入扩展。软件过程技术
5、及其发展伴随软件工程深入发展,大家逐步认识到:提升软件生产率和软件质量瓶颈在于软件开发和维护过程中支持和管理问题,意识到关键是“软件过程”从1984年开始在计算机界掀起了“软件过程运动”,针对软件过程进行了一系列研究和讨论,进而诞生了软件过程技术。软件过程就是软件生存周期所包含一系列相关过程。过程就是活动集合,活动又是任务集合,任务是把输入转换为输出操作。软件过程技术基础思想是:软件开发和维护过程质量对软件产品质量和软件生产率影响很大。软件过程技术目标就是经过工程化、标准化和形式化方法管理软件开发过程,从而改变现在基于手工软件生产方法,实现大规模软件生产。现在,软件过程技术研究大致可分为以下三
6、个方面:软件过程建模语言。提出多种适合于定义和描述软件过程方法和手段。软件过程支持。研究在以过程为关键软件工程环境设计和实现中所包含多种技术问题,如体系结构、实施机制、工具集成、过程可视化、一致性维护、并发控制和事务管理等。软件过程改善。研究怎样对软件开发机构现有软件过程进行评定和改善。由美国卡内基梅隆大学软件工程研究所(SEI)开发软件过程连续改善模型-能力成熟度模型CMM(Capability Maturity Model)是软件过程改善技术代表。CMM描述了一个有效软件过程中关键要素,讨论了不成熟软件机构发展成为有规律、成熟软件机构改善过程。CMM包含对软件开发和维护活动进行计划、软件过
7、程工程化和对软件过程进行管理实践活动。经过这些实践活动,能够提升软件机构满足成本、进度、功效和质量要求能力。全部软件全部是经过部分过程而产生出来。但这些过程往往是混乱和不一致,从而造成缺乏可预见性和可反复性,缺乏改善基础。为此,在软件开发期间需要连贯、明确过程,从而使这些过程能够被连续地实施,并被监督和演化。CMM对于想要控制软件开发和维护过程,和期望在机构内部形成良好开发次序和环境组织,是有很大帮助。CMM将软件机构成熟度分为五个等级,图1所表示。改善软件过程期望达成下面多个目标:1提升软件项目标效率。有效地利用项目所拥有多种资源,包含人员和时间,以达成提升生产率目标。2提升软件项目标可预见
8、性。依据以往项目经验和数据,尽可能正确地估量开发软件所需成本和时间,并使这些估量更具鲁棒性,即项目环境和目标微小变动不会使这些估量无效。3提升软件产品质量,以更高正确度和可靠性达成预期目标。 相关教授经过观察发觉:遵照系统和可反复演化过程软件企业,和过程是专设、混乱软件企业相比,能够确保类似以往成功项目标可反复性,含有更高软件生产率,开发出来软件也含有更高质量。国外软件企业管理经验介绍几十年来,美国一直保持着软件霸主地位。从80年代中期开始,部分大计算机厂商开始认识到必需改善开发软件产品过程以提升软件产品质量和立即交付使用能力,并组织专门力量进行了这方面研究工作。IBMSanta Teresa
9、试验室依据Malcolm Baldrige国家质量奖标准和ISO 9000系列标准对软件开发工作包含各个方面进行了评价和改善,把软件质量成熟性水平分成意识、应付、管理和综合4个阶段,形成了一套包含领导、技术和过程方法三足鼎立质量管理策略。微软哲理是追求高度灵活性,其目标是既要达成自由,又要有严格性。在组织产品开发时,有很多并行小组(每组3至8人),这些并行小组自由地开发产品功效特征。在扩大产品同时引入新技术、新概念。强调各小组工作要同时稳定地进行。TickIT是由英国贸工部(DTI)提议、意在推进IT产业经过ISO 9000质量认证一项活动。TickIT活动迎合了英国IT产业需要,并对全球IT
10、产业产生了深远影响。经过ISO 9000质量认证企业在管理方面往往有了很大改善,提升了生产效率和产品质量,而且在市场竞争中常常占有优势。用户也更愿意选择经过ISO 9000认证软件企业作为合作伙伴。近十几年来,印度软件业也保持着高速发展势头。根据世界银行对软件出口国能力调查评定认为,印度软件出口规模、质量和成本综合指数居世界第一位。印度软件产业之所以能够在国际市场上占有一席之地,不仅在于它价格低廉和一定语言优势,更关键是印度软件机构以ISO 9000和SEI CMM为基础,建立了自己软件项目管理和质量保障体系,并融入全部软件开发和维护过程之中,不停地改善和完善软件过程。这就大大增强了其软件产品
11、按时按质交货能力及在国际市场上竞争力。现在,印度有近百家软件企业经过了ISO 9000或CMM二级质量认证,以至于比尔盖茨惊呼:“除美国外,下一个软件大国既不是欧洲国家,也不在日本,而在印度。”由此可见,对软件开发活动进行规范化管理和采取软件过程改善技术,是软件企业尤其是不成熟软件企业加强质量管理有效路径。中国软件企业管理现实状况及其分析据统计,现在中国从事软件开发企业有数千家,除100多家外资合资企业外,绝大多数企业规模在50人左右,少数达200人,规模达成1000人企业只有两三家。不管是从产业规模、企业实力、技术水平,还是从创新能力、市场竞争力和产品市场拥有率来看,全部还远远落后于国外同行
12、,中国相当一部分软件企业处于不成熟阶段,质量管理制度和队伍不健全,质量管理工作滞后,关键表现在以下多个方面:1软件过程通常在项目进行中由参与软件开发人员临时确定。有时即使确定了,可实际上在开发过程中并不严格实施。2软件机构是反应型,缺乏风险分析经验,对软件开发过程中可能碰到困难准备不足,管理人员往往花费大量精力去应付突发事件。3软件项目标进度和经费预算因为估量得不切实际,所以被常常突破。在交付时间紧迫情况下,往往不得不削减软件功效,降低软件质量。4软件质量难以估计。质量确保活动,如质量评审、测试等,常被减弱或被取消。经过分析发觉,造成这种局面原因关键有以下几点:1企业质量意识淡薄,重技术轻管理
13、思想根深蒂固。企业责任人和技术骨干往往只重视技术,认为只要工具使用得熟练,精通程序设计语言,就能开发出用户满意软件。2企业战略目标有偏差。企业上层领导对质量、功效、进度和成本之间相互制约关系缺乏正确认识,企业往往将经济效益放在突出地位,当经济效益和软件产品质量发生冲突时,往往是牺牲质量。3企业规模制约着质量管理活动开展。因为规模小,加之质量意识淡薄和战略目标有偏差,企业难以或不愿组织专门力量开展质量管理活动,造成质量管理队伍不健全。很多企业只有测试人员,而无专门质量保障机构,也没有负责质量管理部门。4职员知识结构单一。在软件企业中,往往是软件开发技术人员缺乏质量管理常识,而质量管理人员对软件开
14、发技术又不熟悉,进而造成软件开发技术人员和质量管理人员之间难以沟通,阻碍了开发工作顺利进行。5软件开发队伍不稳定。企业常常是在签定项目协议以后再在人才市场上招募技术人员组织开发队伍,然而临时招聘来技术人员往往既对项目环境缺乏了解又难以安心工作,甚至在项目进行过程中途就离开开发队伍,无法确保软件质量。加强中国软件企业质量管理路径我们认为,现在中国软件企业碰到最大困难既不来自国家相关产业政策,也不来自市场竞争,而是来自企业内部管理不完善和不协调,有相当一部分软件企业质量管理步骤微弱。所以,软件企业当务之急应该是苦练内功,经过加强质量管理工作、吸收国外优异管理技术和经验来规范企业内部行为,经过提升软
15、件产品质量来增强市场竞争力。具体路径有:1在有条件、职员在100人以上、管理问题较突出软件企业开展ISO 9000质量体系建立和实施工作。软件企业在实施ISO 9000标准、建立质量体系时,不能机械地照抄,认真研究和分析软件开发过程规律和特点,找出现有质量体系需要完善和加强步骤;以ISO 9000标准作为尺度加以衡量,进而找到完善和加强质量管理工作路径;建立有企业特色、适用性和有效性强质量体系。2借鉴CMM思想,结合企业实际情况,开展过程改善活动。对照CMM五个成熟等级,中国绝大多数软件企业处于2级以下,应关键针对项目计划、需求管理、配置管理、质量确保和项目跟踪及监督5个关键过程领域加强质量管
16、理工作。3企业领导在质量管理工作中应发挥主动引导作用。朱兰8020标准强调,产品质量问题有80%出于管理层,而只有20%问题起源于职员。日本质量管理教授石川馨认为,QC小组作用充其量只能处理10%品责问题,而90%问题需要由管理层来处理。质量管理工作是自上而下,尤其在中国软件企业质量管理工作基础比较微弱,这么,企业领导就成为其中最关键原因。需要尤其指出是,企业最高领导对质量管理工作推进作用是下级各级责任人不可比拟,也是下级责任人不可替换。4在质量管理活动中,正确了解人原因关键性。质量管理实践充足证实,提升产品质量根本路径在于不停提升企业全体职员素质,充足调动和发挥人主动性和发明性。石川馨认为:“质量管理始于教育,最终教育”。组织培训是提升职员质量意识和素质关键手段。在软件企业内部,要营造激励职员主动参与质量管理活动气氛,尤其要为软件开发人员发明机会和条件,使她们一部分工作用在改善软件过程工作上。最终一定要保持开发队伍稳定,以确保软件项目开发活动可连续性。