APP下载

计算机软件质量和软件质量保证探究

2016-12-31

移动信息 2016年12期
关键词:质量保证计算机软件软件

朱 恺



计算机软件质量和软件质量保证探究

朱 恺

智江苏经济技术合作有限公司,江苏 南京 210000

随着人们对计算机需求的提高,计算机软件质量成为了人们关注的问题。保证计算机软件的质量能够促进其在社会各方面发挥出良好的作用,而要做到提高计算机软件的质量,就必须加强计算机软件质量保证技术的探究和改进。基于此,对两者进行了探析。

计算机;软件质量;软件质量保证

引言

“软件质量”和“软件质量保证”是两个密切联系而又不相同的概念。“软件质量”是指从软件的功能性、可靠性、易用性、效率性、可维护性、可移植性等各方面特性去衡量软件开发过程和软件产品的质量。“软件质量保证”则是指向用户和社会提供满意的高质量的软件产品而进行的有计划、有组织的活动。

1 软件质量问题分析

软件不同于硬件,软件不会用坏,不存在零件更换问题。但不允许存在误差,不能发生错误,否则后果十分严重。医疗系统中的软件错误可能造成生命危险,银行系统中的软件错误会使金融混乱,航空管理系统中的错误会造成飞机失事。例如,美国在一次发射火箭的实验中,由于飞行计划程序里漏掉一个连字符而导致了火箭实验的失败。任何企业都需要有效的管理方法,软件企业需要的管理方法又与其他类型的企业不同。

在国内软件企业管理的经验比较少,人员也比较缺乏,没有形成一个有效的体系。在这种情况下,软件企业承担大型软件工程和系统设计、开发、集成能力相对较弱,并造成在国际市场上处于不利的竞争地位。当前,软件质量问题比较多,其主要原因是软件企业管理水平跟不上。

2 影响软件质量的因素

软件开发过程的质量直接影响到软件产品的质量,了解开发过程的特性,探究影响软件质量间题的因素十分重要,是软件质量保证的必要前提。

2.1 计算机软件有如下的主要特征

(1)抽象性。它没有形体,没有物理性质和化学性质。(2)复杂性。软件内部结构复杂,有人称之为人类创造中最为复杂的实体。(3)多样性。没有完全相同的软件。(4)易变性。软件在开发过程中以及交付使用后常常会因各种原因而修改。(5)软件需求难于把握。软件开发常常会出现用户弄不清楚、更说不清楚自己的需求,致使开发人员对用户的需求了解不透,在开发过程中用户再三要求变更需求。软件的这些特征都给开发高质量的软件带来极大困难。

2.2 影响软件开发过程的质量因素

2.2.1 人的因素

软件是人的脑力劳动、进行创造性思维的成果。开发人员和管理人员的品德和素质高,人的作用就发挥得好,用户、分析员、设计员、程序员、测试员配合得当,是开发高质量软件的重要前提。

2.2.2 软件需求

软件需求是由用户提出的。根据用户提出的需求,分析员进行需求分析。软件需求分析是软件设计、软件测试、软件验收的依据。需求的差错会严重影响后继工作。所以,帮助用户讲清楚、明确自己的需求是开发高质量软件重要的一步。

2.2.3 开发过程各环节的衔接

上面说过开发过程分为六个环节,每一个环节都存在着能否正确理解和正确表达的问题。正确理解前阶段环节的描述,正确表达现阶段环节的工作,并为后阶段工作的顺利进行铺垫好路子。但在整个开发过程要开发人员正确地做好实在不容易。

2.2.4 测试的局限性

由于开发机构在测试工作中投入的资源往往是有限的,不可能做超出投入能力的测试.因此,经过测试的软件,尽管发现并纠正。却不能保证不再有错误。

刘勰明确了是书乃专论文章之“一理”,非“博明万事”;而其所论,又不是向壁虚造,他历数了从曹丕开始的近代十家论文者,表明了自己要在批判前人的基础上有所创新,是所谓“弥纶群言”。《论说》与《序志》两相对照,《文心雕龙》在内容上更接近“论”而非“诸子”已显而易见。

2.2.5 质量管理不够重视

长期以来存在这样一种看法,认为软件开发重要的是技术,而质量管理是次要的。加上管理人员往往比较关心软件开发的成本和进度,且多数开发机构管理人员无需对软件中隐含的错误负责,因此不一定会付出昂贵的代价去保证软件质量[1]。

2.2.6 技术上解决软件质量问题的局限性

提高软件组件和构件的复用率是突破软件危机的一条出路,它可以减少差错引人,减轻排错工作,但目前软件开发中软件复用技术仍不够理想。我们对软件质量的认识很肤浅,软件技术在这些方面还处于幼稚阶段,而且,软件测试技术一直沿用传统的、低效率的方法。

3 改进软件质量保证的技术

3.1 软件复用技术

由于封装和继承的特性,面向对象方法比其他软件开发方法更适于支持软件复用。封装意味着可以将表示构件的类看作黑盒子。用户只需了解类的外部接口,即了解它能够响应哪些消息,相应的对象行为是什么。继承是指在定义新的子类时,可利用可复用构件库中己有的父类的属性和操作、当然子类也可以修改父类的属性与操作或者引进新的属性与操作、构件的用户不需要了解构件的实现细节。

所谓“容错”,就是在出现有限数目的硬件或软件故障的情况下,系统仍可提供连续正确执行的内在能力。容错和避错是不同的,容错主要是针对版木中的故障向系统提供保护。组成容错软件的每一个版木的程序设计也要求尽量采用避错技术,防止单版木领繁出错。但在容错系统的单版木设计时,避错技术应用要考虑成木分配上的合理性,以使总体上符合效益成木比最大的要求。软件容错的实现需要硬件的保证和协同、如果软件容错配合以合理的硬件冗余可以起到比各自单独考虑容错更好的作用。

3.3 软件工程标准化

在开发一个软件时,需要有多层次、不同分工的人员相互配合;在开发项目的各个部分以及各开发阶段之间,也都存在着许多联系和衔接。把这些错综复杂的关系协调好,需要有一系列统一的约束和规定。在软件开发项目取得阶段成果或最后完成时,还需要进行阶段评审和验收测试。投入运行的软件,其维护工作中遇到的问题又与开发工作有着密切的关系。软件的管理工作则渗透到软件生存期的每个环节。所有这些都要求提供统一的行为规范和衡量准则,使得各种工作能有章可循[2]。

3.4 软件过程评估与改进

软件过程是软件生存期中的一系列相关的过程。程是活动的集合,活动是任务的集合。任务是将输入变换为输出的操作。活动的执行可以是顺序的、重复的、并行的、嵌套的。软件过程的考虑主要针对软件生产和管理。为了得到满足要求的软件产品,不但需要有好的开发方法,还需要有好的工程支持和工程管理。就是说,软件过程不仅要有工程观点,还应有系 统观点、管理观点、运行观点和用户观点[3]。

4 结语

计算机软件质量保证是提高计算机软件质量的关键因素。综合上文所述,相关企业与部门必须加大对软件质量保证技术的研发和改进,提高计算机质量保证技术,从而更好地保证计算机质量。

[1]胡广峰.软件质量保证方法研究[J].计算机光盘软件与应用,2012(7):96-97.

[2]刘彩利.浅析计算机的软件质量[J].商情,2014(43):212.

[3]杨帅玲.基于计算机软件配置管理质量监督分析[J].中国新技术新产品,2012(12):30.

Research on computer software quality and software quality assurance

Zhu Kai

Jiangsu Nanjing Economic & Technical Cooperation Co., Ltd., Jiangsu 210000

With the improvement of people's demand for computers,computer software quality has become a concern of the people.To ensure the quality of computer software can promote the play a good role in all aspects of society,and to improve the quality of computer software,it is necessary to strengthen the quality assurance and improvement of computer software technology.This paper an analysis of the relationships between them.

computer; software quality; software quality assurance

TP311.52

A

1009-6434(2016)12-0133-02

猜你喜欢

质量保证计算机软件软件
禅宗软件
基于风险分析的软件质量保证过程研究
关于如何做好水质环境监测的质量保证研究
银行软件开发项目质量保证方法研究及应用
软件质量保证与测试课程的课程思政建设
软件对对碰
基于C语言的计算机软件编程
浅谈不同编程语言对计算机软件开发的影响
浅谈基于C语言的计算机软件程序设计
即时通讯软件WhatsApp