原创作者:jerry
转载请注明:来自Sawin软件研发之窗
最后修改时间:2006-4-28
目前软件管理体系主要包括以下两个方面:ISO:9000:2000版以及CMM/CMMI下面主要介绍下面两个体系。
ISO:9000:2000版
ISO9000是国际标准化组织2000年提出的用来阐述质量概念之间相互区别与联系的指南,包括外部质量保证(ISO9001,ISO9002和ISO9003)以及内部质量保证(ISO9004)。ISO9001主要针对需要设计,加工,测试的企业,比如建筑业;ISO9002主要针对设计已经比较成熟,仅需要进行加工和测试,比如肥皂制造业(肥皂的设计是固定死的),ISO9003主要针对服务行业。由此可见软件企业是属于ISO9001体系范畴的,因为软件需要设计,开发和测试以及销售。
这些标准用于质量体系的需求的规格说明,适用于两个当事方签订合同时候要求证明供应方和提供产品能力的场合。两个当事方可以是外部客户和供应方,也可以都是内部的,例如公司的市场组和工程组。
ISO9001:2000需要由专门的培训机构来培训和相应的认证机构来认证,涉及部门为除财务部门以外的所有部门
ISO9001:2000的八大原则介绍如下:
领 导:
领导者建立组织共同一致的目的及方向,他们必须创造及管理内部环境,使人员能够完全投入,以达成组织目的。
以顾客为中心:
组织依赖其顾客,故必须了解现在及未来组织的需要,必须符合顾客要求并努力超越顾客期望。
全员参与:
各阶层人员是组织的基本要素,为了组织及自身利益,他们完全参与贡献其能力。
过程方法:
管理所有活动及相关资源,有效率地达到所欲结果。
系统化管理:
鉴别、监督和管理内部相关流程且成为一个系统,提供在达成组织目标之有效性与效率。
持续改进:
组织整体绩效之持续改进必须是组织永恒的目标。
互利的供应商关系:
组织与其供应商是相互依赖并有互利关系,以增进彼此能力、创造价值。
以事实作决策:
有效的决策是以资料及资讯的分析为基础。
ISO9001:2000的八大目录如下:
范围、引用标准、术语和定义、质量管理体系、管理职责、资源管理、产品实现、测量/分析和改进。
ISO9001:2000更加给与企业的灵活性,各个企业可以按照不同的情况来制定自己的流程。只强调6个程序化文件的要求,其他程序化文件视企业情况灵活指定,但是强调《质量手册》的重要性
ISO9001:2000强调企业经营者及高层领导在体系中的作用,应有证据表明高层管理积极参与策划、实施、维护和改进质量管理体系。
ISO9000管理者代表和推行委员会或内审小组或审查小组等相关部门是ISO9000体系日常维护与完善的管理部门,通过内部审查活动及其体系改进指导或外部独立认证机构的审查,来维护监管ISO9000体系的日常运转。
CMM
CMM是设在美国卡纳基梅隆大学中的软件工程研究所(SEI)尽对于软件行业指定的成熟度标准,共分为五个等级,分别为初始级,可重复级,已定以级,已管理级以及优化级。
目前国内实施CMM的软件企业大概80%达到可重复级,已定以级,20%达到已管理级,少数企业达到优化级。
每个级别按照过程域(KPI)来实施软件的成熟度,每个级别过程域如下:
可重复级:
需求管理 软件项目计划 软件项目跟踪和监督 软件子合同管理 软件质量保证 软件配置管理 已定义级: 机构过程焦点 机构过程定义 培训大纲 综合软件管理 软件产品工程 组间协调 同行评审 已管理级 定量过程管理 软件质量管理 优化级 缺陷预防 技术更新管理 过程更新管理
在使用CMM时候,应该结合公司实际情况,进行合理的解释。在应用环境不同时候,需要各方面专家做出合理的意见,这一点非常重要。虽然不同公司对CMM进行了不同的裁减,但是有资料表明,90%以上的关键实践还是用上的。
CMM是软件开发和维护中有关过程管理和质量改进的一般应用。CMM代表着软件届对于好的工程和管理实践的广泛的一致认同。但是CMM也不是扳上钉钉的事情。
执行CMM需要有专门的资源和资金。一般来说包括专业技术,充足的资金和涉及到的工具。
这里的资金不是预算,而是实际提供使用的资金。
执行CMM需要对公司所有员工进行相关的培训,以便使公司员工按照指定的规章进行日常工作
对于一些专门的关键过程域需要对相关人员进行定向的培训,比如:,培训项目经理如何对软件项目的跟踪与监督。
某些关键过程域是其他关键过程域的前提,比如只有建立了软件项目计划才能够执行软件项目的跟踪与监督。
实行CMM需要根据需要成立如下小组,小组成员可以兼职,也可以专职,一般来说需要成立以下小组:
主要的小组:
系统工程组:负责软件设计开发的小组;
系统测试组:负责软件测试工作的小组;
培训组: 负责培训公司员工以便CMM的执行
相关的小组:
软件过程工程组:制定项目工程流程的小组;
软件质量保证组:监督软件工程组指定软件过程的实施工作的小组;
软件配置管理组:对软件代码,软件文档进行配置管理,版本管理的小组;
ISO 9001 与CMM
ISO 9001 与CMM的最大差异在于CMM强调的是持续的过程改进;ISO 90001涉及的是可接受的质量体系的最低标准。另外CMM尽对于软件领域,ISO范围很广。 |