软件的质量管理
软件的质量管理: 随着计算机技术的飞速发展和软件开发技术和工具的进步,软件规模越来越 大,而质量管理软件也越来越难以控制。 质量管理软件越来越受到软件企业的重视,软件业界对软件工程环境、质量管理工具和技术的 研究都倾注了大量的人力、财力和物力,希望借此来提高质量管理管理软件,但仅靠这些努力并 没有达到我们所期望的效果。其主要原因是软件的开发缺乏科学有效的管理,软件生产的过程没 有明确的定义,过程实施缺乏管理,产品质量得不到有效的控制。 软件的质量管理是完全依靠人的大脑思维产生出产品,而每个人的大脑思维是不一样的,因 此在软件开发过程中有太多不确定、可变化的因素。 这些不确定性和可变因素决定了软件质量难 以量化,决定了软件质量管理是一个难题。 二、软件质量的内涵 质量是质量管理的对象,正确、全面理解质量,尤其是质量管理的概念, 对开展软件质量管 理工作是十分重要的。 国际标准 ISO8402—1986 对质量的定义如下:“质量(品质)是反映产品或服务满足明确 或隐含需要能力的特征和特性的总和”。美国著名质量管理权威朱兰(J.M.Juran)给质量下了 如下定义:“质量就是适用性”。 不同岗位不同职务的人员,因为出发角度不同,往往对质量管理软件有不同的理解。因此软 件质量主要包括一下几点: 客户化质量。对软件质量的衡量,客户始终是最权威的。 软件产品的质量高低,很大程度上 由用户的使用体验决定。 软件运行质量。 无论硬件技术发展多么迅速,代码运行效率和稳定性仍然是软件质量的重要 组成部分。 代码质量。代码的规范和清晰是开发人员衡量软件质量的一个重要方面。 文档质量。 文档质量是保证软件质量延续的重要手段。 一个软件在需要修改和升级的时候, 文档是最好的助手。 三、影响软件质量的要素 需求 需求是软件开发的基础。质量管理软件开发是客户和项目组共同做出需求分析后的实施过 程,管理的成员不可能全部参与需求分析,这个时候,对需求的理解就变得十分重要。我们不可 能要求项目组所有成员都是质量管理和业务专家,此时要想开发出最贴近需求的系统,只能发挥 程序员,测试员和开发者的理解能力。 完全理解用户的需求,是保证质量管理软件的基础。 沟通 在管理中,沟通很重要;在质量管理中,沟通更重要,沟通中信息传递的元素有 1%的损 失,就意味着 99%的元素失去了关联,这个信息的可靠性就会变得很低,甚至是一种误导。质 量信息的损失是一个幂的关系。 沟通就是为了消除信息传递中元素的损失。无论是客户和和公司内部之间,还是项目组成员 之间,都应该就具体的问题进行充分的沟通,这样才能有效保证质量。 四、项目开发各阶段的质量保证 需求分析 需求分析是开发人员对系统需要做什么和如何做的定义过程。从系统分析的经验来看,这个过 程往往是个循序渐进的过程,一次性对系统形成完整的认识是困难的。只有不断地和客户领域专 家进行交流确认,方能逐步明了用户的需求。系统分析时犯下的错误,会在接下来的阶段被成倍 的放大,越是在开发的后期,纠正分析时犯下的错误所花费的代价越是昂贵,也越发影响系统的 质量。 虽然尽早的邀请用户参与,仍然避免不了进行中用户的需求变更请求。对于开发过程存在的 需求变动, 应该要求用户填写变更申请单发送给项目配置管理员,在通过配置员转交给客户质量 部使用,负责的成员一起讨论实施变更的可行性及实施后所带来的影响,再决定是否实施变更。 系统设计 优良的质量管理体系结构应当具备可扩展性和可配置性, 而好的体系结构则需要好的设计方 法,自然设计选型成为了系统设计首要的工作。 对于设计选型不能一概而论,需要针对项目的结构、项目的特征和用户的需求来分析, 同样也要考虑到参与项目小组成员的素质, 如果其中大部分都没有从事过面向对象的设计且项目 进对紧迫, 这样没有多余的时间来培训小组成员来掌握面向对象的设计方法,尽管众所周知面向 对象设计方法的优势,我们还是不如采用面向过程的方式(除用户指定开发设计方式外)可以减 少项目承担的技术风险。 如 需 咨 询 更 多 质 量 信 息 的 问 题 , 请 移 步 无 忧 QC 官 网 联 系 我 们 的 服 务 工 程 师 , 我 们 竭 诚 为 你 服 务 。