浅谈软件质量管理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅谈软件质量管理[1]
随着信息技术的广泛应用,软件已成为大多数产品的重要组成部分,如何提高软件质量,使软件更好地服务于各种应用需要,已成为各行各业广泛关注的课题。本文介绍了软件质量概念和软件质量管理的内容。针对软件的特点,并提出了加强软件质量管理的必要性。
一软件质量的定义
软件质量:即国际化标准组织9126中将软件质量定义为反映软件产品满足规定需求和潜在需求能力的特征和特征的总和。将软件质量定义所有描述计算机软件优秀程度的特性的组合也就是为了满足软件的各项精确定义的功能、性能要求合文档化的开发标准需要相应的给出或设计一些质量特性及其组合。要得到高质量的软件产品就必须使这些质量特性得到满足。目前对软件质量特性有多种提法但实际上是大同小异。9126国际标准中定义的软件质量特性为以下六项:功能性可靠性易使用性效率可维护性可移植性。
二影响软件质量的因素
软件本身的特点和目前软件的开发模式的一些缺陷,使软件内部的质量问题有时不可能完全避免。
1、软件本身的特点软件具有复杂性、一致性、可变性和不可见性。软件规模的增大,导致它的复杂程度大大增加,并且让整个开发工作变得难以控制和管理。如果说编写一个数十行到数百行的程序连初学者也不难完成,那么开发一个数万以至数百万行的软件,其复杂度将大大上升,即使是富有经验的程序员,也难免顾此失彼。例如,开发一个学生上机考试系统,需要根据实际情况考虑到不同专业、不同考试科目、不同层次的用户的使用,其复杂性是显而易见的。尤其糟糕的是,软件的可靠性往往随规模的增长而下降,质量保证也越来越困难。
2,开发环节多根据传统的瀑布模型将软件的生存周期划分为:计划时期的问题定义和可行性研究;开发时期的需求分析、概要设计、详细设计、编码和测试;运行时期的维护。各个阶段之间具有顺序性和依赖性。在这里,顺序性有两重含义:第一,只有等前一
阶段的工作完成以后,后一阶段的工作才能开始。第二,前一阶段的输出文档,就是后一阶段的输入文档。想在后阶段获得正确的结果,必须在前阶段有正确的输出。因此,如果在生存周期的某一阶段出现了问题,往往要追溯到在它之前的一些阶段,必要时还要修改前面已经完成的文档。
3、选择支持工具目前软件开发工作大多是手工操作,借助工具自然可以提高效率,减少出错机会。但是,在软件的整个开发过程中,能够得到的开发工具或管理工具十分有限。、G语言、、、、等都可以作为开发工具使用,在面临具体问题时,要根据各种语言自身的特点和开发人员的熟练程度,灵活机动地选择。
4,测试的局限性目前在软件开发过程中质量保证的主要手段是测试。广泛采用的仍然是白盒测试和黑盒测试。而软件测试的局限性在于,虽然它能够帮助我们尽可能多地发现软件中隐藏的问题,但是,有一些错误仍然存在,因为测试本身也是有缺陷的,不是尽善尽美的。也就是说,我们通过测试,可以在一定程度上把错误减少到最低限度。
三、软件质量管理方法
由于软件是一种技术密集的、智力劳动的产品,一般软件具有实用性、抽象性、灵活性、复杂性、无磨损、不老化等特点,特定软件还具有高安全性、高可靠性、适应性强、实时性要求高等特点。软件的生产与硬件也不同,软件没有明显的制造过程,软件的开发至今仍不能自动化地进行而以人工开发方式为主。针对软件的特点,对软件的质量控制,更应该注重软件过程的控制,通过完善质量管理体系以适应软件质量管理要求和加强软件过程管理来实现。
浅谈软件质量管理[2]
1、软件质量管理体系软件及软件质量形成与硬件有明显的差别,因此软件质量管理要求与硬件质量管理要求也有所不同。基于目前产品主要承制单位按照9000标准要求建立质量管理体系的实际,为了提高质量管理体系对软件质量管理的适应性,确保软件开发质量,根据软件的特点,对于承担软件研制的承制单位,应在现有质量管理体系的基础上,补充完善软件质量管理要求,以确保软件质量满足要求。与此同时,根据软件质量形成的特点和
软件作为产品管理的理念还没有得到普遍接受的实际,在质量管理体系建设中还要采取以下方法以强化软件的质量管理:
(1)建立标准软件过程。标准软件过程是指承制方定义的基本软件过程,它描述基本的软件过程单元以及这些软件过程单元之间的关系,用它来引导建立项目软件过程。
(2)纳入项目计划。软件应作为相应项目的配套产品纳入项目研制计划和产品配套表。
(3)管理开发和验证环境。应确定、提供并维护软件开发和验证环境(工具、技术和方法),验证环境也应按质量管理标准有关监视和测量装置的控制要求进行控制。
(4)控制采购软件。对采购的软件产品也应按照质量管理标准有关采购的要求进行控制。
2、软件过程管理方法
(1)软件给定需求控制给定需求,即“指定给软件的系统需求”,是系统需求的一部分,以文档形式给出。
(2)软件质量策划对具体的软件项目,承制方应根据软件项目的特点,策划和实施与质量有关的活动,软件质量策划应与质量管理体系其他过程的要求相一致。
(3)软件维护根据合同的要求和策划的安排,对交付和安装后以及运行过程中的软件进行维护,维护活动结束应保持软件的一致性。
(4)软件开发策划对软件的开发进行策划和控制,应根据承制方的标准软件过程,通过策划确定项目软件过程编制项目开发计划。
(5)软件配置管理配置管理提供一个标识、控制和追踪每个软件项的正式版本的机制,以保证软件项目生成的产品在软件生命周期中的完整性。
(6)软件开发控制软件开发应在受控条伴下进行,按选定的开发文档标准编制文档。
四加强软件质量管理的途径
软件企业可以通过多种途径加强质量管理,提高软件产品的质量。
1、重视质量管理我们都知道,在工业生产中,即使有先进的设备与技术,管理不善的企业也不能获得良好的经济效益。对于软件生产,不能按时按质完成计划,其中管理混乱往往是一条重要原因。我国软件开发机构的管理相对比较薄弱,其中质量管理尤其显著,这与我们重技术、轻管理有关。为了做好软件质量管理工作,首先要从认识上转变过来,因为思想往往是行动的先导。
2、开发小组的人员应该少而精软件的质量依赖于参与开发工作人员的质量和数量。开发过程,提高软件产品质量。近年来,采用面向对象的开发技术、原型开发方法、三层结构、软件构件、软件复用、分布计算、等方法,取得了一定的效果。除此之外,还有一种净室开发技术,其基本思想在于“净化”软件开发过程,使得差错或缺陷不可能有机会混入开发过程。如果软件的需求可以用形式描述方法方便地表达出来,那么整个开发过程就会像公式推导那样严谨、无懈可击。
总之提高软件质量势在必行,只有认识到软件质量的重要性,了解影响软件质量的因素,才能有的放矢,采用科学的管理技术和先进的技术方法,才可以确保软件的质量。
软件开发各阶段的质量控制[1]
提到软件开发,我们的脑海里总是浮现出这样的情景:开发组的每一位成员都在辛苦的工作,有的加班加点,甚至通宵达旦是常有的事,虽然项目经理修改了一次又一次的进度计划,而实际的开发情况却总是很令人担忧,以至于每次向领导汇报工作的时候总是觉得以前制定的计划没有很好的完成,总是觉得人力资源不够,总是觉得我们没有太多的时间。等到代码终于开发完成了,测试进度却又非常令人担忧,每一个小都要花很长的时间去查找,改了某一个小错误却又引起了很多错误,结果产品发布遥遥无期,而项目组里的每一位成员已经筋疲力尽。