浅析软件工程的安全检测和维护

时间:2022-08-18 08:49:11

浅析软件工程的安全检测和维护

摘要:计算机系统设计的重要依据就是软件,只有使计算机具有更高的整体效用才能更好地方便用户。因此,为了更好地满足用户的要求,要综合考虑硬件和软件相结合的全局来设计计算机系统。此外,软件的可维护性也是评价软件维护难易程度的标准,更是体现软件产品的一个重要的质量特性。本文着重介绍了计算机软件安全检测技术的重要性。

关键词:软件 系统 设计 安全检测 维护 需求

随着计算机和软件技术的发展,各种计算机软件在各行各业中得到了普遍的利用,已经成为人们生活和工作中不可或缺的重要部分。而计算机的软件安全问题也越来越严重地影响着计算机的安全性,因此,计算机软件的安全检测技术就彰显得特别重要。

1 软件安全检测技术和维护概述

计算机软件安全检测是计算机软件开发过程中的一个重要环节,它的目的是为了发现软件所存在的故障和安全漏洞,从而及时地对计算机软件的潜在安全问题进行更改。当前的计算机软件安全检测技术主要包括动态检测和静态检测两种方法。计算机软件安全检测是确定计算机软件的安全性是否达到软件预期设计目标的一个过程,一般包括功能测试、渗透测试与验证过程三个阶段。包括安全功能与安全漏洞两个方面的检测,软件安全功能涉及的方面比较多,包括机密性、授权、访问控制以及安全管理等;而计算机软件安全漏洞检测则是对软件可能存在的缺陷的检测。

软件定义、软件开发和运行维护是构成软件生命周期的三个时期。使软件能够持久地满足用户的需求是运行维护时期的主要任务,具体而言,应当改正软件在使用过程中发现的错误,当环境发生改变时应当及时修改软件以适应新的环境;当用户有了新的要求时应当及时改进软件以满足用户新的需求。

2 计算机软件安全检测技术的方法

2.1 计算机软件安全检测的流程 一般情况下,计算机软件的安全检测一般按照以下的步骤进行:首先为了发现系统中各模块中可能存在的问题,要对软件设计中最小的单位即模块进行测试,然后是对由模块按照程序设计的要求组装的系统进行检测,并对于其相关的体系机构进行检测。其次是在前两个检测的基础上进行软件的有效性检测,为了检测其是否与所设计用户的需求相符,要对软件的功能和性能进行检测。最后进行的是系统的检测,测试软件在整体的环境下的运行安全情况。

2.2 当前计算机软件安全检测的主要方法 一是形式化的安全检测。形式化的安全检测是确立软件的数学模型,在通过形式规格的语言的支持提供形式化的规格说明。形式化的安全检测有模型检测和定量证明两种形式的安全检测方法。二是基于模型的静态安全检测。模型安全检测,既是通过软件行为与结构建模的方式,形成一个测试的模型,此模型同时可满足计算机对其的可读性。比较常用的模型安全检测方法包括有线状态机检测和马尔科夫链的检测。三是语法检测。语法检测技术主要是测试软件在不同输入条件下产生的不同反应。四是基于故障注入的软件安全检测。故障注入的安全检测是应用故障分析树与故障数的最小割集来检测的。五是模糊测试和基于属性的测试。基于白盒的模糊测试较传统的模糊测试技术有很大进步,白盒模糊检测方法有效地结合了传统的模糊测试技术和动态测试用例检测技术的优点。六是混合检测技术。能有效地改善静态技术和动态技术检测存在的一些缺陷,从而更好地对计算机软件的安全进行检测。七是基于Web服务的检测技术。它是一种基于识别内容的分布式Web服务器技术。具有语言中立、互动操作性强等优点,能够将复杂的安全检测分解为子安全类型进行处理,以使其可以更有效地应对复杂的安全检测的需要。

3 提高软件的可维护性方法

3.1 建立明确的软件质量目标 如果要一个可维护性的程序满足可理解的、可靠的、可测试的、可修改的、可移植的、效率高的和可使用的7个全部的要求,要付出很大的代价,甚至是不显示的。但是可理解性和可测试性以及可理解性和可修改性是相互促进的,而效率和可移植性以及效率和可修改性是相互抵触的。因此,要明确软件所追求的质量目标。

3.2 使用先进的软件开发技术和工具 利用先进的软件开发技术能够大大提高软件质量和减少软件费用,并且稳定性好,容易修改、容易理解,易于测试和调试,因此可维护性好。

3.3 建立明确的质量保证 最有效的方法就是质量保证检查,在软件开发的各个阶段以及软件维护中得到了广泛的应用。

4 总结

综上所述,软件维护是一项综合性很强的工作,随着软件规模和复杂度的日益提高,使软件维护成为软件生存周期中费用最高、难度最大的一个阶段。因此,良好的软件可维护性可以降低维护成本,延长软件生命周期。

参考文献:

[1]丁剑洁.基于度量的软件维护过程管理的研究[D].西北大学,2006.

[2]于士文.敏捷软件开发方法在软件维护中的应用研宛[D].湖南大学,2006.

[3]陈小辉,邓杰英,文佳.浅谈软件的可维护性设计[J].华南金融电脑,2009(3).

[4]房鼎益,安娜,魏东.一个基于SOA的大型分布式计算机辅助办公系统[J].计算机应用与软件,2005,22(10):11-12.

[5]唐爱国.软件过程控制研究[J].项目管理技术,2006,4(9):71-73.

[6]Tallon P P,et al.Using Real Options Analysis for Evaluating Uncertain Investments inInformation Technology [A].Insights From The ICIS 2001 Debate,Communications of the Associationfor Information Systems,2002,9:136-137.

上一篇:一种QuartusII软件编程的数字鉴相器 下一篇:移动支付实现方案的研究