软件可靠性工程学综述
第36卷第2期2009年2月
计算机科学
Computer
Science
V01.36No.2Feb.2009
软件可靠性工程学综述
郑艳艳1
(武汉大学软件工程国家重点实验室
郭伟2徐仁佐1
(武汉大学计算机学院
武汉430072)2
武汉430072)1
摘要软件可靠性工程学定量评价软件系统的可靠性,是开发并维护软件系统的一种工程学技术。回顾了软件可靠性工程学的历史、目前的趋势以及现存的问题和困难。提出了软件可靠性工程学中未来可能的方向和有前景的研究课题。
关键词软件可靠性工程学,容错,建模,数据收集,度量,测试
OverviewofSoftwareReliabilityEngineering
ZHENGYan-yanl
(StateKeyLabofSoftware
(Schoolof
GUOWei2
XURen—ZU01
Engineering,WuhanUniversity,Wuhan430072,China)1
Computer,WuhanUniversity,Wuhan430072,Clhina)2
Abstractsystems
current
Software
reliabilityengineeringisfocused
can
on
engineeringtechniques
reviewed
fordevelopingandmaintainingsoftware
whosereliabilitybequantitatively
evaluated.We
thehistoryofsoftwarereliabilityengineering,the
trendsandexistingproblems,and
specificdifficulties.Possiblefuturedirectionsandpromisingresearchsubjects
in
softwarereliabilityengineeringwerealsoaddressed.
Keywords
Software
reliabilityengineering,Faulttolerant,Modeling,Datacollecting,Metric,Testing
1
引言
早在上世纪60年代,就有人提出了“软件危机”,而软件
件可靠性建模等方面做了有益的探索,并开发了软件可靠性专家系统SRES[…。黄锡滋、蔡开元、何国伟等在软件可靠性理论和工程实践等方面也做了研究,包括软件可靠性分配、软件可靠性管理、软件可靠性模型应用选择、软件可靠性测试、软件可靠性度量体系等E”]。图1为软件可靠性工程过程概图。
确定可靠性目标
不可靠是造成软件危机的重要原因[1]。软件可靠性工程学为理解软件的可靠性,管理软件质最,保证商业产品竞争性优势给出了希望。但现今的软件可靠性工程学还没有真正达到我们所期望的目标[2]。
软件可靠性工程学的核心是软件可靠性。软件可靠性定义为:给定时间内、给定环境下软件无故障运行的概率b“]。软件可靠性对软件故障进行了量化,是软件质量中的主要因素。软件可靠性工程学(sRE)是对基于软件的系统操作行为的定量研究,且与用户的可靠性需求相关睁8|。
现有的SRE技术存在一些缺点,如故障数据的收集在时间上太迟;实验室内收集的故障数据不够精确;SRE技术或建模方法基于一些不现实的假设,使得结果过于乐观。虽然多个行业都有软件可靠性模型的成功实例,但对于现代软件系统,仍然迫切需要可信的软件可靠性技术。
在下面的章节中,我们将讨论软件可靠性工程学的过去、现在和将来。首先概述一些已有的技术和应用,然后介绍目前的趋势以及所关注的问题。最后,我们提出了软件可靠性工程学将来可能的方向。
h
一
开发操作剖面
执行软件蒯试
收集故障数据
可
继续测试满足可靠性目标吗?
是
采用软件可靠性工具
选择台适的软件可靠性模型
使用鞍件可靠性模型计算目前的可靠性
开始配置
验证领域中的可靠性
反馈给下次发布
图1软件可靠性工程过程概图
国外基于软件故障生命周期已经提出了若干技术来解决软件可靠性工程学问题。包括故障生命周期技术及软件可靠性和度量。文献E11]总结了故障生命周期的4种技术:错误预防;错误排除;错误容忍;错误/故障预测。软件可靠性建模的主要任务是错误/故障预测,即估计(度量目前状态)和预计
2历史上的软件可靠性工程学技术
国内软件可靠性研究始于上世纪80年代初,徐仁佐在软
到稿日期:2008—03—03
郑艳艳(1975一),女,博士研究生,研究方向为软件可靠性、软件-丁程,E-mail:zhengyy03@sho,,corn;郭伟(1966--),男,博士,高工.研究方向为软件工程、计算机网络;徐仁佐(1946一),男.教授,博士生导师,研究方向为软件可靠性、软件测试、软件工程等。 20
万方数据
(评价将来状态)软件系统的可靠性。文献[12,13]叙述了对软件可靠性模型的历史回顾及模型应用的观点。
这里主要讨论软件容错技术和软件可靠性模型[】4。16]。容错是得到高可靠软件的主要方法之一。有两类错误容忍技术:单版本和多版本软件容错技术[17]。前者包括程序模块化、系统终止、原子行为、错误检测、意外处理、检查点和重启、过程对和数据多样性[183;后者称为设计多样性,由不同的程序团队使用不同的设计方法独立开发多个软件版本,但根据相同的需求说明,它们提供同样的服务。多版本软件方法的主要技术是恢复块、N一版本编程、N-自检编程和基于这3种基本技术的其他变种。
可靠性模型试图估计多版本中的相同故障的概率,Eck—hardt和Le919]提出了设计多样性错误关联的第一个可靠性模型,基于需求空间难度差异的假设,来观察版本故障问的积极关联。Littlewood和Miller[201提出,基于强制的设计多样性,可能存在消极的错误关联。Dugan和LyuE21]提出一个马尔可夫奖励模型,来比较由设计多样性方法得到的系统可靠性。Tomek和Trivedi[22]为软件容错提出了统计学奖励网络模型。Popov,Strigini等[23]基于需求空间的子域概念,估计了设计多样性故障概率的上下限。关于容错软件的详细总结和它的可靠性建模方法能够在文献[24]中找到。经过实验对模型的比较和估计结果列在文献[25,26]中。
3软件可靠性工程学的现状和问题
软件可靠性中的挑战不仅来自不同领域的软件应用程序的规模、复杂度、难度和新颖性,也与相关软件工程师的知识、培训、经验和特点有关[z7-31]。我们从软件可靠性工程学的某些角度讨论当前趋势和问题。3.1软件可靠性和系统可靠性
软件可靠性的理论基础来自硬件可靠性技术。通过采取与硬件类似的数学建模方法,能够建立软件可 …… 此处隐藏:2117字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高等教育]一年级家长课程教案
- [高等教育]封丘县人民医院深入推进纠正医药购销领
- [高等教育]2017年6月大学英语四级真题试卷及答案(
- [高等教育]2017年北京第二外国语学院文学院824中
- [高等教育]7 高中历史第7单元1861年俄国农奴制改
- [高等教育]【K12学习】4、实际测量-苏教版六年级
- [高等教育]药具培训试卷题库及部分参考答案
- [高等教育]本土电子元器件目录分销商如何赢得生意
- [高等教育]七年级岭南版美术教案
- [高等教育]书作文之书法活动通讯稿
- [高等教育]Endnote X 软件使用入门和用法总结(LS)
- [高等教育]嵌入式系统的现状及发展状况
- [高等教育]2012抗菌药物专项整治活动方案解读
- [高等教育]人教版新课本一年级数学下册期末试卷
- [高等教育]爱课程民法学观后感
- [高等教育]930机组使用说明书1
- [高等教育]煤气设备设施点检标准
- [高等教育]常见室内观叶植物图解
- [高等教育]312党员群众路线心得体会
- [高等教育]小学信息(苗版)第一册全册教案
- 在市---局2010党建大会上的讲话
- 《科哲》提纲及补充阅读材料(2010.7)
- 苏州高博软件技术职业学院论文开题报告
- 兼职导游管理的困境及对策探讨
- 基于通用设计理念的现代厨房产品语义研
- 康乐一中2010年至2011年度鼓号队、花束
- 第10章_数据收集整理与描述_期末复习课
- 2008年黑龙江林甸商贸购物中心营销策划
- 水硬度的测定实验报告
- 五分钟教你拍摄夜景光绘照
- 2014年临床妇产科三基三严试题及答案
- 0第二课 纾解压力第一站了解压力
- 解析建筑工程电气设备安装施工技术要点
- 地方性应用型本科高校“双师型”师资队
- 高考语文专题复习课件:小说阅读指导
- 装饰工程投标书2
- 大学生就业难问题探讨及对策
- English and Its History
- 青岛市城市房屋修缮工程质量监督管理办
- 初中英语形容词和副词的用法和练习题




