软件工程—软件可靠性测试
2014-01-22 11:38
239 查看
用软件系统规模越做越大越复杂,其可靠性越来越难保证。应用本身对系统运行的可靠性要求越来越高,在一些关键的应用领域,如航空、航天等,其可靠性要求尤为重要,在银行等服务性行业,其软件系统的可靠性也直接关系到自身的声誉和生存发展竞争能力。
特别是软件可靠性比硬件可靠性更难保证,会严重影响整个系统的可靠性。在许多项目开发过程中,对可靠性没有提出明确的要求,开发商(部门)也不在可靠性方面花更多的精力,往往只注重速度、结果的正确性和用户界面的友好性等,而忽略了可靠性。在投入使用后才发现大量可靠性问题,增加了维护困难和工作量,严重时只有束之高阁,无法投入实际使用。
2.硬件可靠性的决定因素是时间受设计、生产、运用的所有过程影响,软件可靠性的决定因素是与输入数据有关的软件差错,是输入数据和程序内部状态的函数,更多地决定于人。
3.硬件的纠错维护可通过修复或更换失效的系统重新恢复功能,软件只有通过重设计。
4.对硬件可采用预防性维护技术预防故障,采用断开失效部件的办法诊断故障,而软件则不能采用这些技术。
5.事先估计可靠性测试和可靠性的逐步增长等技术对软件和硬件有不同的意义。
6.为提高硬件可靠性可采用冗余技术,而同一软件的冗余不能提高可靠性。
7.硬件可靠性检验方法已建立,并已标准化且有一整套完整的理论,而软件可靠性验证方法仍未建立,更没有完整的理论体系。
8.硬件可靠性已有成熟的产品市场,而软件产品市场还很新。
9.软件错误是永恒的,可重现的,而一些瞬间的硬件错误可能会被误认为是软件错误。
总的说来,软件可靠性比硬件可靠性更难保证,即使是美国宇航局的软件系统,其可靠性仍比硬件可靠性低一个数量级。
㈡.软件可靠性错误的因素
软件可靠性是关于软件能够够满足需求功能的性质,软件不能满足需求是因为软件中的差错引起了软件故障。软件中有哪些可能的差错呢?
软件差错是软件开发各阶段潜入的人为错误:
1.需求分析定义错误。如用户提出的需求不完整,用户需求的变更未及时消化,软件开发者和用户对需求的理解不同等等。
2.设计错误。如处理的结构和算法错误,缺乏对特殊情况和错误处理的考虑等。
3.编码错误。如语法错误
4.测试错误。如数据准备错误, 测试用例错误等。
5.文档错误。如文档不齐全,文档相关内容不一致,文档版本不一致,缺乏完整性等。
开发过程特性包括采用的工程技术和使用的工具,也包括开发者个人的业务经历水平等。
除了软件可靠性外,影响可靠性的另一个重要因素是健壮性,对非法输入的容错能力。
所以提高可靠性从原理上看就是要减少错误和提高健壮性。
下面我来讲讲关于软件可靠性测试方式!
1.组件压力测试
2.集中压力测试
3.真实环境测试
4.随机破坏测试
今天的收获就这么多 未完待续。。。。
特别是软件可靠性比硬件可靠性更难保证,会严重影响整个系统的可靠性。在许多项目开发过程中,对可靠性没有提出明确的要求,开发商(部门)也不在可靠性方面花更多的精力,往往只注重速度、结果的正确性和用户界面的友好性等,而忽略了可靠性。在投入使用后才发现大量可靠性问题,增加了维护困难和工作量,严重时只有束之高阁,无法投入实际使用。
㈠.
软件可靠性和硬件可靠性
1.最明显的是硬件有老化损耗现象,硬件失效是物理故障,是器件物理变化的必然结果,有浴盆曲线现象;软件不发生变化,没有磨损现象,有陈旧落后的问题,没有浴盆曲线现象。
软件可靠性与硬件可靠性之间主要存在以下区别:
2.硬件可靠性的决定因素是时间受设计、生产、运用的所有过程影响,软件可靠性的决定因素是与输入数据有关的软件差错,是输入数据和程序内部状态的函数,更多地决定于人。 3.硬件的纠错维护可通过修复或更换失效的系统重新恢复功能,软件只有通过重设计。
4.对硬件可采用预防性维护技术预防故障,采用断开失效部件的办法诊断故障,而软件则不能采用这些技术。
5.事先估计可靠性测试和可靠性的逐步增长等技术对软件和硬件有不同的意义。
6.为提高硬件可靠性可采用冗余技术,而同一软件的冗余不能提高可靠性。
7.硬件可靠性检验方法已建立,并已标准化且有一整套完整的理论,而软件可靠性验证方法仍未建立,更没有完整的理论体系。
8.硬件可靠性已有成熟的产品市场,而软件产品市场还很新。
9.软件错误是永恒的,可重现的,而一些瞬间的硬件错误可能会被误认为是软件错误。
总的说来,软件可靠性比硬件可靠性更难保证,即使是美国宇航局的软件系统,其可靠性仍比硬件可靠性低一个数量级。
㈡.软件可靠性错误的因素
软件可靠性是关于软件能够够满足需求功能的性质,软件不能满足需求是因为软件中的差错引起了软件故障。软件中有哪些可能的差错呢?
软件差错是软件开发各阶段潜入的人为错误:
1.需求分析定义错误。如用户提出的需求不完整,用户需求的变更未及时消化,软件开发者和用户对需求的理解不同等等。
2.设计错误。如处理的结构和算法错误,缺乏对特殊情况和错误处理的考虑等。
3.编码错误。如语法错误
4.测试错误。如数据准备错误, 测试用例错误等。
5.文档错误。如文档不齐全,文档相关内容不一致,文档版本不一致,缺乏完整性等。
开发过程特性包括采用的工程技术和使用的工具,也包括开发者个人的业务经历水平等。
除了软件可靠性外,影响可靠性的另一个重要因素是健壮性,对非法输入的容错能力。
所以提高可靠性从原理上看就是要减少错误和提高健壮性。
下面我来讲讲关于软件可靠性测试方式!
1.组件压力测试
2.集中压力测试
3.真实环境测试
4.随机破坏测试
今天的收获就这么多 未完待续。。。。
相关文章推荐
- 软件工程—软件可靠性测试
- 软件工程——理论、方法与实践 之 软件测试
- 《软件工程 ——理论、方法与实践》知识概括第十章 软件测试
- 【软件工程-Teamwork 2】必应词典软件手机版测试报告
- 软件可靠性测试及其实践
- 软件工程——软件测试
- 《软件工程 ——理论、方法与实践》知识概括第十章 软件测试
- 软件工程——详细设计,编码,软件测试,软件维护
- 软件测试与可靠性评估方法研究
- 【软件测试】常规性能测试、压力测试、负载测试、可靠性测试
- 【软件工程】软件测试
- 现代软件工程 练习与讨论 第十三章 软件测试
- 软件工程之软件测试
- 现代软件工程讲义 5.1 软件的质量保证 (QA) 和测试 (Test)
- 软件测试-软件工程-第七章
- 软件工程 之 软件测试
- 软件工程之软件测试
- 软件测试(软件工程学科群)课程框架建设思考【迭代改进】(欢迎提意见)
- 软件测试与可靠性评估方法研究
- 软件测试种类(一):包括功能性测试,可靠性测试,强度测试等