首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
Failure of a safety critical system can lead to big losses.Very high software reliability is required for automating the working of systems such as aircraft controller and nuclear reactor controller software systems.Fault-tolerant softwares are used to increase the overall reliability of software systems.Fault tolerance is achieved using the fault-tolerant schemes such as fault recovery (recovery block scheme),fault masking (N-version programming (NVP)) or a combination of both (Hybrid scheme).These softwares incorporate the ability of system survival even on a failure.Many researchers in the field of software engineering have done excellent work to study the reliability of fault-tolerant systems.Most of them consider the stable system reliability.Few attempts have been made in reliability modeling to study the reliability growth for an NVP system.Recently,a model was proposed to analyze the reliability growth of an NVP system incorporating the effect of fault removal efficiency.In this model,a proportion of the number of failures is assumed to be a measure of fault generation while an appropriate measure of fault generation should be the proportion of faults removed.In this paper,we first propose a testing efficiency model incorporating the effect of imperfect fault debugging and error generation.Using this model,a software reliability growth model (SRGM) is developed to model the reliability growth of an NVP system.The proposed model is useful for practical applications and can provide the measures of debugging effectiveness and additional workload or skilled professional required.It is very important for a developer to determine the optimal release time of the software to improve its performance in terms of competition and cost.In this paper,we also formulate the optimal software release time problem for a 3VP system under fuzzy environment and discuss a the fuzzy optimization technique for solving the problem with a numerical illustration.  相似文献   

2.
针对当前大型企业的工作流管理系统普遍存在建模能力不充分、可靠性不足等问题,提出一种基于N版本程序设计(N-Version Programming)容错策略的柔性工作流建模方法,该方法相比于传统工作流模型,有效应用N版本程序设计容错模式,为工作流关键活动节点增加容错机制,从而显著提升工作流管理系统的可靠性.同时为满足模型应用的现实需求,详细分析N版本程序设计的可靠性优化,最后通过模型实例,说明该建模方法在模型描述能力和系统可靠性方面的优势.  相似文献   

3.
提出了冗余组合导航应用软件的实用设计方法,当组合导航应用软件中多个任务模块采用N文本法和恢复块法进行冗余设计时,给出了含有容错模块的软件系统的可靠性的评价模型及计算方法。  相似文献   

4.
软件避错是提高软件可靠性的主要方法之一,它包含程序检验,测试,正确性证明等技术,然而,随  相似文献   

5.
Demands on software reliability and availability have increased tremendously due to the nature of present day applications. We focus on the aspect of software for the high availability of application servers since the unavailability of servers more often originates from software faults rather than hardware faults. The software rejuvenation technique has been widely used to avoid the occurrence of unplanned failures, mainly due to the phenomena of software aging or caused by transient failures. In this paper, first we present a new way of using the virtual machine based software rejuvenation named VMSR to offer high availability for application server systems. Second we model a single physical server which is used to host multiple virtual machines (VMs) with the VMSR framework using stochastic modeling and evaluate it through both numerical analysis and SHARPE (Symbolic Hierarchical Automated Reliability and Performance Evaluator) tool simulation. This VMSR model is very general and can capture application server characteristics, failure behavior, and performability measures. Our results demonstrate that VMSR approach is a practical way to ensure uninterrupted availability and to optimize performance for aging applications. This research was supported by the Korea Research Foundation Grant funded by the Korean Government (MOEHRD) under Grant No. KRF2007-210-D00006.  相似文献   

6.
Programs fail mainly for two reasons: logic errors in the code and exception failures. Exception failures can account for up to two-thirds of system crashes, hence, are worthy of serious attention. Traditional approaches to reducing exception failures, such as code reviews, walkthroughs, and formal testing, while very useful, are limited in their ability to address a core problem: the programmer's inadequate coverage of exceptional conditions. The problem of coverage might be rooted in cognitive factors that impede the mental generation (or recollection) of exception cases that would pertain in a particular situation, resulting in insufficient software robustness. This paper describes controlled experiments for testing the hypothesis that robustness for exception failures can be improved through the use of various coverage-enhancing techniques: N-version programming, group collaboration, and dependability cases. N-version programming and collaboration are well known. Dependability cases, derived from safety cases, comprise a new methodology based on structured taxonomies and memory aids for helping software designers think about and improve exception handling coverage. All three methods showed improvements over control conditions in increasing robustness to exception failures but dependability cases proved most efficacious in terms of balancing cost and effectiveness  相似文献   

7.
复杂软件系统的软件网络结点影响分析   总被引:2,自引:0,他引:2  
汪北阳  吕金虎 《软件学报》2013,24(12):2814-2829
目前一些研究利用复杂网络理论揭示了软件网络的特性,为人们从系统的角度了解软件的结构提供了方法.但这些研究的一些结论却与软件的实际表现有着较大的差异.分析了软件网络结点的特性,揭示了产生上述差距的部分原因;并提出一种加权软件网络模型,以更准确地描述软件网络结点间的依赖关系;在这个加权软件网络模型的基础上,分析了软件的实际依赖关系及几个统计特性;分析了各统计特性与软件网络结点影响的关系;进一步提出了软件网络关键结点的概念;同时,在分析各种结点影响的基础上,提出了4 个合理的假设;最后,通过对两款软件的实验来验证这4 个假设的有效性.  相似文献   

8.
This article presents Demotek, a multi-agent prototype for an electronic voting system based on optical character recognition technology. Trade-offs in voter training, ease of use, security, and coercion across various systems are considered for the purpose of recognizing achievable improvements. Based on the use of N-version programming techniques, we propose improvements to Demotek, including those in security and new capabilities. This case study demonstrates how the voter's authentication system and vote data transmission could further simplify and improve the electoral process by adding these new capabilities to the electronic voting system using N-version programming.  相似文献   

9.
软件老化现象是影响软件可靠性的重要因素,长期运行的软件系统存在软件老化现象,这将影响整个业务系统的正常运行,给企事业单位带来无可估量的经济损失。软件老化出现的主要原因是操作系统资源消耗殆尽,导致应用系统的性能下降甚至崩溃或宕机。文中监测J2EE应用服务器系统资源的使用情况,考虑外界的负载变化,检测系统中软件老化现象,分析系统资源消耗何时达到临界值,从而帮助软件工程人员及时采取预维护手段,预防运行时系统中重大故障的发生。  相似文献   

10.
As a result of technological advances, a typical type of software systems has emerged. A large number of distributed software components are networked together through a task flow structure, and each component may have alternative algorithms among which it can choose to process tasks. However, the increased complexity and vulnerability to adverse events of such systems give rise to the need for more sophisticated yet scalable control mechanisms. In this study a control mechanism is designed to meet the need. First, stress environments are implicitly modeled by quantifying the resource availability of the system through sensors. Second, a mathematical programming model is built with the resource availability incorporated and with the stability in system behavior assured. Third, a multi-tier auction market is designed to solve the programming model by distributing computation and communication overheads. By periodically opening the auction market, the system can achieve desirable performance adaptively to changing stress environment while assuring stability and scalability properties. The control mechanism devised in this paper contributes to the efforts of managing the ever-increasing complexity of modern software systems.  相似文献   

11.
Evolution of the N-version software approach to the tolerance of design faults is reviewed. Principal requirements for the implementation of N-version software are summarized and the DEDIX distributed supervisor and testbed for the execution of N-version software is described. Goals of current research are presented and some potential benefits of the N-version approach are identified.  相似文献   

12.
在大规模的采用面向对象技术的软件开发过程中,自动化测试能起到重要作用.面向对象的程序设计方法对软件的自动化测试提出了新的问题.例如,多态、继承和动态绑定等在过程式的程序设计中不存在的问题.提出了一种支持面向对象软件测试的自动化测试方法.其中,首先提出了一种面向对象测试模型;对一个被测软件,基于该模型描述其测试特征,并基于反射机制获得对象的结构,可自动生成测试代码;并在此基础上实现了一个微软平台上的对象测试自动化工具.  相似文献   

13.
The Soil and Water Assessment Tool (SWAT) model is a robust watershed modeling tool. It typically uses the ArcSWAT interface to create its inputs. ArcSWAT is public domain software which works in the licensed ArcGIS environment. The aim of this paper was to develop an open source user interface for the SWAT model. The interface, QSWAT, is written in the Python programming language and uses various functionalities of the open source geographic information system, QGIS. The current interface performs similar functions to ArcSWAT, but with additional enhanced features such as merging small subbasins and static and dynamic visualization of outputs. The interface is demonstrated through a case study in the Gumera watershed in the Lake Tana basin of Ethiopia, where it showed a successful performance. QSWAT will be a valuable tool for the SWAT scientific community, with improved availability and functionality compared with other options for creating SWAT models.  相似文献   

14.
Terra and Aqua, two satellites launched by the NASA-centered International Earth Observing System project, house MODIS (moderate resolution imaging spectroradiometer) sensors. Moderate-resolution remote sensing allows the quantifying of land-surface type and extent, which can be used to monitor changes in land cover and land use for extended periods of time. In this article, we propose land-surface classification by applying an ensemble technique based on fault masking among individual classifiers in N-version programming. An N-version programming ensemble of artificial neural networks is created, in which the majority vote result is used to predict land-surface cover from MODIS data. It is shown by experiment that an N-version programming ensemble of neural networks greatly improves the classification error rate of land-cover type.  相似文献   

15.
Software diversity is known to improve fault tolerance in N-version software systems by independent development. As the leading cause of software faults, human error is considered an important factor in diversity seeking. However, there is little scientific research focusing on how to seek software fault diversity based on human error mechanisms. A literature review was conducted to extract factors that may differentiate people with respect to human error-proneness. In addition, we constructed a conceptual model of the links between human error diversity and software diversity. An experiment was designed to validate the hypotheses, in the form of a programming contest, accompanied by a survey of cognitive styles and personality traits. One hundred ninety-two programs were submitted for the identical problem, and 70 surveys were collected. Code inspection revealed 23 faults, of which 10 were coincident faults. The results show that personality traits seems not effective predictors for fault diversity as a whole model, whereas cognitive styles and program measurements moderately account for the variation of fault density. The results also show causal relations between performance levels and coincident faults: coincident faults are unlikely to occur at skill-based performance level; the coincident faults introduced in rule-based performances show a high probability of occurrence, and the coincident faults introduced in knowledge-based performances are shaped by the content and formats of the task itself. Based on these results, we have proposed a model to seek software diversity and prevent coincident faults.  相似文献   

16.
System availability is a major performance concern in distributed systems design and analysis. A typical kind of application on distributed systems has a homogeneously distributed software/hardware structure. That is, identical copies of distributed application software run on the same type of computers. In this paper, the system availability for this type of system is studied. Such a study is useful when studying optimal testing time or testing resource allocation. We consider both the case of simple two-host system, and also the more general case of multi-host system. A Markov model is developed and equations are derived to obtain the steady-state availability. Both software and hardware failures are considered, assuming that software faults are constantly being identified and removed upon a failure. Although a specific model for software reliability is used for illustration, the approach is a general one. Comparisons show that system availability changes in a similar way to single-host based software/hardware systems. Sensitivity analysis is also presented. In addition, the assumptions used in this paper are discussed.  相似文献   

17.
本文对高并发服务器中使用事件驱动编程模型进行了分析和研究,提出了一种混合使用事件和多线程技术的服务器软件体系结构,使用高级Petri网对混合多线程阶段化事件驱动结构进行了建模,并与传统多线程模型进行了性能比较。与常见的一些编程模型相比,建立这种体系结构基础上的服务器应用具有较好的可伸缩性、较低的资源消耗、易编程使用等优点。  相似文献   

18.
基于工控组态软件的模型参考自适应液位控制系统的设计   总被引:1,自引:0,他引:1  
针对FESTO过程控制系统液位站中的液位控制问题,提出了一种利用工控组态软件和ActiveX特性扩充组态软件控制功能实现模型参考自适应控制的新方法;重点描述了控制策略、现场信号和组态软件之间的有机结合,为在工业控制领域中使用组态软件来完成复杂的控制算法开辟了新的途径;从实验结果的两组响应曲线可以看出,采用自适应控制时系统的性能指标要优于常规PID控制;因此,可以证明文中设计的自适应控制系统可以实现对液位的稳定控制;系统具有形象直观、实时性好、编程简单等特点,满足了工业控制的要求。  相似文献   

19.
屈韬 《计算机工程与设计》2004,25(11):2087-2089,2121
阐述了一个基于Agents的软件合成框架(ABFSC)的软件设计环境的设计和实现。应用了混沌模型的软件设计思想并具有可视化的设计特点,可有效地提高软件设计环境的易用性、灵活性和直观性。  相似文献   

20.
容错技术已经在许多领域的高可靠控制中得到应用,N版本程序技术是实现容错的基本手段之一。在软件系统中,表决算法可以屏蔽错误的输出结果。冗余技术可以防止错误的结果传递到系统的下一个子模块中,并且提高系统的安全性。许多表决算法在容错技术中得到广泛的应用,其中一致性表决算法同样得到了广泛的应用。但一致表决算法适合输出结果空间基数小的情况,因此更容易产生相同并错误的结果(IAW)。针对这个问题,提出一种自适应的一致性表决算法,它将版本历史记录信息应用到一致性表决中,降低了不正确结果通过表决的概率,提高了系统安全性和可靠性。实验证明了所提算法的有效性。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号