本文并不打算系统的阐述软件企业的质量保证体系,而是想从另一个侧面同大家分享软件企业在软件开发过程中两个重要角色之间的协作关系,以两个角色之间高效的互动来说明在开发过程中,我们如何来有效的保障软件产品的质量。
本文从市场驱动的IT开发特点分析入手,对目前国际上正日趋成熟的“轻”方法和满意质量的内涵和操作加以讨论,同时以快速应用开发为实例介绍了具体操作及注意事项,为读者进一步深入理解现代软件工程实践工作提供帮助。
项目管理的主要目标是保证项目在规定时间内高质量的完成项目。项目管理包括了项目组开发各阶段的人员结构的配置,质量控制的实施方略,内部文档和产品文档的组织编写等各项工作。
企业要把以顾客为关注焦点的原则贯彻落实到日常经营活动之中,首先应结合企业的业务特点确认影响顾客满意的关键过程,对这些过程进行严格控制和不断改进,并注意从以下几个方面开展工作。
软件质量管理的3种方式发涉及到方方面面的人员,历经多个生产环节,产生大量的中间产品,各个环节都可能带来产品质量问题;同时,由于软件产品是逻辑体,不具备实体的可见性,因而难以度量,质量也难以把握,因此如何有效地管理软件产品的质量一直是软件企业面临的挑战。归纳起来,软件质量管理大体分为三种:事后检验、全面质量管理和权威认证。
以在开发项目上按照规范化软件的生产方式进行生产,在开发质量管理流程上采用ISO9000的标准进行。每个项目除配备了项目开发所需角色外,还专门配备了配置管理小组、测试小组和质量保证小组确保质量管理的实施,下面针对这三种角色进行说明。
质量管理不是项目管理的唯一,项目管理在众多因素中就要权衡哪个更重要,为了处理更重要的事情就有可能舍弃质量或降低质量等级。比如费用不够或者工期紧张又必需交付使用,这时就会因为想做好而无能为力(没资金或没时间了)。
为了成功地领导和运作一个组织,需要采用一种系统和透明的方式进行管理。针对所有相关方的需求,实施并保持持续改进其业绩的管理体系,使组织获得成功。组织为实现质量目标,应遵循以下八项质量管理原则。
项目质量管理要遵循质量管理体系,管理层在项目开始之前要制订项目质量管理计划和标准,并且在项目执行过程中要保证相关利害关系者都要知道本项目的质量管理标准。项目质量管理十要点则高度浓缩了项目质量管理体系的精髓观念。
今天要谈论的话题是“软件项目的质量管理”,应该说这个题目并不是很准确,因为我并没有明确这个质量是相对谁而言的,是客户、老板、项目经理、还是程序员?对于客户而言,客户认可的质量是预期需求的全部实现,老板关注的质量是合同在成本控制的范围内是否履约完毕,项目经理满意的质量是软件验收顺利通过,而程序员认为高质量就是程序没有BUG。每个角色站在自身的视角,对质量的审视都是正确的,所以软件项目的质量管理要帮助所有参与项目的角色实现其质量目标。
开展度量活动的一个最关键的因素是要保证度量基础数据的有效、准确性,否则度量结果将是垃圾,反而会起误导作用.搜集准确有效的度量数据工作量并不小,所以决定采用哪些度量项需要从投入和产出来衡量。
在建立 QA 组织的时候,多数企业也这样实行“拿来主义”。就像看着别人穿着一双漂亮的鞋,就想拿过来自己穿,一般都不会适合自己。其结果要么是削足适履,要么是打肿脚穿大鞋,效果可想而知。我们应该做的是“量脚买鞋”、“量体裁衣”。 QA 组织的建立也一样,应先了解企业的文化、可获得的资源以及过程成熟度水平等,再据此选择适宜的 QA 组织。下面我们就从一个动态的视角来探讨 QA 组织的建立。
软件质量管理的3种方式发涉及到方方面面的人员,历经多个生产环节,产生大量的中间产品,各个环节都可能带来产品质量问题;同时,由于软件产品是逻辑体,不具备实体的可见性,因而难以度量,质量也难以把握,因此如何有效地管理软件产品的质量一直是软件企业面临的挑战。归纳起来,软件质量管理大体分为三种:事后检验、全面质量管理和权威认证。
我们可以把6西格玛管理定义为:“获得和保持企业在经营上的成功并将其经营业绩最大化的综合管理体系和发展战略。是使企业获得快速增长的经营方式。”6西格玛管理是“寻求同时增加顾客满意和企业经济增长的经营战略途径。”是使企业获得快速增长和竞争力的经营方式。它不是单纯的技术方法的引用,而是全新的管理模式。
软件质量不仅仅是一些测试数据、统计数据、客户满意度调查回函等等,衡量一个软件质量的好坏,应该首先考虑完成该软件生产的整个过程是否达到了一定质量要求。在软件开发实践中,软件质量控制可以依靠流程管理(如缺陷处理过程、开发文档控制管理、发布过程等),严格按软件工程执行,来保证质量。
项目质量策划包括:识别和确定必要的作业过程,配置所需的人力和物力资源,以确保达到预期质量目标所进行的周密考虑和统筹安排的过程。项目质量策划是保证项目成功的过程之一。