2. 选择开发方法
软件开发方法对软件的可靠性也有重要影响。
目前的软件开发方法主要有Parnas方法、Yourdon方法、面向数据结构的Jackson方法和Warnier方法、PSL/PSA方法、原型化方法、面向对象方法、可视化方法、ICASE方法、瑞理开发方法等,其他还有BSP方法、CSF方法等。这里特别要提一下的是Parnas方法。
Parnas方法是最早的软件开发方法,是Parnas 在1972年提出来的,基本思想是在概要设计时预先估计未来可能发生变化,提出了信息隐藏的原则以提高软件的可靠性和可维护性。
在设计中要求先列出将来可能要变化的因素,在划分模块时将一些可能发生变化的因素隐含在某个模块的内部,使其他模块与此无关,这样就提高了软件的可维护性,避免了错误的蔓延,也就提高了软件的可靠性。还提出了提高可靠性的措施:
(1)考虑到硬件有可能出故障,接近硬件的模块要对硬件行为进行检查,及时发现错误。
(2)考虑到操作人员有可能失误,输入模块对输入数据进行合法性检查,是否合法、越权,及时纠错。
(3)考虑到软件本身有可能失误,加强模块间检查,防止错误蔓延。
对瑞理方法可能许多人还不熟悉,这里简要介绍一下。
瑞理(Rational)模式是美国瑞理软件工程公司发展出来的,其模式是:
面向对象;
螺旋式上升;
管理与控制;
高度自动化;
以管理观点和技术观点把软件生命周期划分为起始、规划、建构、转移、进化五个阶段,也可把这五个阶段归并为研究时期(起始和规划)和生产时期(建构和转移),最后是维护时期(进化),特别适合对高风险部分及变动需求的处理。
在以上的众多方法中,可视化方法主要用于与图形有关的应用,目前的可视化开发工具只能提供用户界面的可视化开发,对一些不需要复杂图形界面的应用不必使用这种方法;ICASE 技术还没有完全成熟,所以可视在方法和ICASE方法最多只能用作辅助方法。面向数据结构的方法、PSL/PSA方法及原型化方法只适合于中小型系统的开发。
面向对象的方法便于软件复杂性控制,有利于生产率的提高,符合人类的思维习惯,能自然地表达现实世界的实体和问题,具有一种自然的模型化能力,达到从问题空间到解空间的较为直接自然的映射。
在面向对象的方法中,由于大量使用具有高可靠性的库,其可靠性也就有了保证,用面向对象的方法也利于实现软件重用。
所以建议采用面向对象的方法,借鉴Parnas和瑞理模式的思想,在开发过程中再结合使用其他方法,吸取其它方法的优点。
3.软件重用
最大限度地重用现有的成熟软件,不仅能缩短开发周期,提高开发效率,也能提高软件的可维护性和可靠性。因为现有的成熟软件,已经过严格的运行检测,大量的错误已在开发、运行和维护过程中排除,应该是比较可靠的。在项目规划开始阶段就要把软件重用列入工作中不可缺少的一部分,作为提高可靠性的一种必要手段。
软件重用不仅仅是指软件本身,也可以是软件的开发思想方法、文档,甚至环境、数据等,包括三个方面内容的重用:
(1)开发过程重用,指开发规范、各种开发方法、工具和标准等。
(2)软件构件重用,指文档、程序和数据等。
(3)知识重用,如相关领域专业知识的重用。
文章来源于领测软件测试网 https://www.ltesting.net/