Safety-critical systems are widely used in many sectors to prevent fatal accidents and prevent loss of life, damage of property, or deterioration of the environment. Implementation of software safety standards as part...
详细信息
Safety-critical systems are widely used in many sectors to prevent fatal accidents and prevent loss of life, damage of property, or deterioration of the environment. Implementation of software safety standards as part of the development of safety-critical software is generally considered an essential element of any safety program. Therefore, it has become more critical to produce highly reliable software to meet the safety requirements established by functional safety standards, such as IEC 61508, ISO 26262, and En 50128. IEC 61508 supports well-known safety mechanisms such as design diversity like n-version (multi-version) programming. n-version (multi-version) programming is a method where multiple functionally equivalent programs are independently developed from the same software specifications. n-version (multi-version) programming is particularly an effective approach to increase the quality of software in a safety-critical system. In this paper, one of the well-known and widely used algorithms in the field of n-version (multi-version) programming, the majority voting algorithm, has been modified with an online stability checker where the decisions of the voter are judged against the stability of the underlying system. The plant where all the theoretical results are implemented is a tilt-rotor system with the proposed n-version (multi-version) programming-based controller. The experimental results show that the modified majority voter-based n-version (multi-version) programming controller provides more reliable control of the plant.
Islanded mode and grid-connected mode are the two operational modes of a microgrid (MG). It is essential to develop a suitable protection scheme for an MG network to protect it against all types of faults in both of t...
详细信息
Islanded mode and grid-connected mode are the two operational modes of a microgrid (MG). It is essential to develop a suitable protection scheme for an MG network to protect it against all types of faults in both of the modes. The fault current in an inverter-dominated MG is limited by the ratings of the semiconductor devices. Only traditional over-current protection schemes are not adequate for such inverter-based grids. In order to cover the drawbacks of conventional protection schemes, ann-version programming-based protection scheme has been proposed in this paper. Ann-version software unit with n = 3 has been developed in MATLAB Simulink and all the agents in the developed multi-agent scheme have been equipped with this unit. The three developed protectionversions are Clark's transformation-based current protection, positive sequence phase differential-based protection and conventional over-current-based protection scheme. The software unit makes the final decision about the fault through a polling process. Different types of faults have been tested in both the islanded and grid-connected modes. The proposed protection scheme has given desired results in all the tested cases and hence proved to be a reliable and accurate method for fault identification in microgrid networks. Finally, a framework has been presented for possible realization of the proposed protection scheme through existing IEC 61850-based intelligent electronic devices (IEDs). (C) 2016 Elsevier Ltd. All rights reserved.
Fault tolerant software uses redundancy to improve reliability;but such redundancy requires additional resources and tends to be costly, therefore the redundancy level needs to be optimized. Our optimization models de...
详细信息
Fault tolerant software uses redundancy to improve reliability;but such redundancy requires additional resources and tends to be costly, therefore the redundancy level needs to be optimized. Our optimization models determine the optimal level of redundancy within a software system under the assumption that functionally equivalent software components fail independently. A framework illustrates the tradeoff between the cost of using n-version programming and the improved reliability for a software system. The 2 models deal with: a single task, and multitask software. These software systems consist of several modules where each module performs a subtask and, by sequential execution of modules, a major task is performed. Major assumptions are: several versions of each module, each with an estimated cost & reliability, are available these module versions fail independently. Optimization models are used to select the optimal set of versions for each module such that the system reliability is maximized and total cost remains within budget.
Software is a major source of reliability degradation in dependable systems. One of the classical remedies is to provide software fault tolerance by using n-version programming (nVP). However, due to requirements onn...
详细信息
Software is a major source of reliability degradation in dependable systems. One of the classical remedies is to provide software fault tolerance by using n-version programming (nVP). However, due to requirements onnon-standard hardware and the need for changes and additions at all levels of the system, nVP solutions are costly, and have only been used in special cases. In a previous work, a low-cost architecture for nVP execution was developed. The key features of this architecture are the use of off-the-shelf components including communication standards and that the fault tolerance functionality, including voting, error detection, fault-masking, consistency management, and recovery, is moved into a separate redundancy management circuitry (one for each redundant computing node). In this article we present an improved design of that architecture, specifically resolving some potential inconsistencies that were not treated in detail in the original design. In particular, we present novel techniques for enforcing replica determinism. Our improved architecture is based on using the Controller Area network (CAn). This choice goes beyond the obvious interest of using standards in order to reduce the cost, since all the rest of the architecture is designed to take full advantage of the CAn standard features, such as data consistency, in order to significantly reduce the complexity, the efficiency and the cost of the resultant system. Although initially developed for nVP, our redundancy management circuitry also supports other software replication techniques, such as active replication. (C) 2007 Elsevier B.V. All fights reserved.
For the consideration of different application systems, modeling the fuzzy logic rule, and deciding the shape of membership functions are very critical issues due to they play key roles in the design of fuzzy logic co...
详细信息
For the consideration of different application systems, modeling the fuzzy logic rule, and deciding the shape of membership functions are very critical issues due to they play key roles in the design of fuzzy logic control system. This paper proposes a novel design methodology of fuzzy logic control system using the neural network and fault-tolerant approaches. The connectionist architecture with the learning capability of neural network and n-version programming development of a fault-tolerant technique are Implemented in the proposed fuzzy logic control system. In other words, this research involves the modeling of parameterized membership functions acid the partition of fuzzy linguistic variables using neural networks trained by the unsupervised learning algorithms. Based on the self-organizing algorithm, the membership function and partition of fuzzy class are not only derived automatically, but also the preconditions of fuzzy IF-THEn rules are organized. We also provide two examples, pattern recognition and tendency prediction, to demonstrate that the proposed system has a higher computational performance and its parallel architecture supports noise-tolerant capability. This generalized scheme is very satisfactory for pattern recognition and tendency prediction problems.
Due to the virtual machine co-resident architecture, cloud computing systems are vulnerable to co-resident attacks (CRAs) where a malicious attacker may access and corrupt information of a target user through co-locat...
详细信息
Due to the virtual machine co-resident architecture, cloud computing systems are vulnerable to co-resident attacks (CRAs) where a malicious attacker may access and corrupt information of a target user through co-locating their virtual machines on the same physical server. To defend against cyber threats such as the CRA, early warning mechanisms have been developed with the aim to detect and block an attack at a nascent stage. In this paper, we study the optimal strategy of allocating early warning resources to defend against CRAs for the voting-based n-version programming (nVP) service running in the cloud. A probabilistic model is proposed to evaluate the failure probability of the nVP service program and further the expected cost of loss for the considered service. Optimization problems of co-determining the optimal numbers of service program versions and early warning agents are further solved to minimize the expected cost of loss. As demonstrated through examples, the resultant optimal strategies can effectively allocate service and defense resources to defend the nVP cloud service against CRAs.
This paper models a software service component implementing the n-version programming (nVP) redundancy on the cloud computing platform to enhance the service reliability. Specifically, multiple versions of the same se...
详细信息
This paper models a software service component implementing the n-version programming (nVP) redundancy on the cloud computing platform to enhance the service reliability. Specifically, multiple versions of the same service component are activated in parallel on different servers of the cloud to perform the requested service. At required service response time, the output is determined based on a threshold first-past-the-post voting rule (output with the most votes and the number of these votes exceeds a predetermined threshold). However, effectiveness of the nVP approach can be greatly compromised by co-residence attacks, a common type of cyber-attacks launched to corrupt user's service through co-residing user's and attacker's virtual machines on the same cloud server. This paper formulates and solves an optimization problem, particularly, a minmax game problem that finds the number of service component versions (SCVs) and the threshold to maximize the user's utility while considering a strategic attack behavior aiming to maximize the attacker's utility. The solution methodology encompasses a probabilistic model of evaluating the service success probability (SSP) and corruption attack success probability (CAP), two performance metrics used in the computation of the user's and attacker's utilities. Examples are analyzed to demonstrate influences of different model parameters on SSP, CAP, and solutions to the considered optimization problem.
The real innovation of Internet of Things (IoT) can be spurred only when being combined with cloud computing, a paradigm that allows numerous users to simultaneously access configurable resources and services. However...
详细信息
The real innovation of Internet of Things (IoT) can be spurred only when being combined with cloud computing, a paradigm that allows numerous users to simultaneously access configurable resources and services. However, serious vulnerability concerns have arisen from the virtual machine co-resident architecture of the IoT cloud. Specifically, co-resident attacks can be launched, where an attacker can access and corrupt a user's sensitive data/software by co-locating their virtual machines on the same physical server. Various solutions have been suggested in literature to mitigate negative effects of the co-resident attacks in the cloud environment. However, to the best of our knowledge no work has been performed for studying co-resident attacks in cloud systems with n-version programming (nVP), a popular redundancy technique for enhancing survivability of critical cloud service components. This paper makes original contributions by modeling IoT cloud system services implementing the nVP component redundancy, and evaluating the corruption probability of the nVP service component. Further, users' policies on choosing the optimal number of service component versions are investigated through formulating and solving a new set of optimization problems with the objective to minimize the expected cost of losses of a cloud service provider. As demonstrated through examples, these policies can effectively help defend the nVP service component against the co-resident attacks in the cloud system.
One of the challenging problems for software companies is to find the optimal time of release of the software so as to minimize the total cost expended on testing and potential penalty cost due to unresolved faults. I...
详细信息
One of the challenging problems for software companies is to find the optimal time of release of the software so as to minimize the total cost expended on testing and potential penalty cost due to unresolved faults. If the software is for a safety critical system, then the software release time becomes more important. The criticality of a failure caused by a fault also becomes an important issue for safety critical software. In this paper we develop a total cost model based on criticality of the fault and cost of its occurrence during different phases of development for n-version programming scheme, a popular fault-tolerant architecture. The mathematical model is developed using the reliability growth model based on the non-homogeneous Poisson process. The models for optimal release time under different constraints are developed under the assumption that the debugging is imperfect and there is a penalty for late release of the software. The concept of Failure Mode Effects and Criticality Analysis is used for measuring criticality. Journal of the Operational Research Society (2006) 57, 986-994.
To encourage a practical application of the n-version programming (nVP) technique, a design paradigm was proposed and applied in a Six-language Project. The design paradigm improved the development effort of the n-Ver...
详细信息
To encourage a practical application of the n-version programming (nVP) technique, a design paradigm was proposed and applied in a Six-language Project. The design paradigm improved the development effort of the n-version Software (nVS);however, there were some deficiencies of the design paradigm which led to the leak of a pair of coincident faults. This paper reports on a similar project that used a revised nVP design paradigm. This project reused the revised specification of a real, automatic airplane-landing problem, and involved 40 students at the University of Iowa and the Rockwell International. Guided by the refined nVS development paradigm, the students formed 15 independent programming teams to design, program, test, and evaluate the application. The paper identifies & presents: the impact of the paradigm on the software development process;the improvement of the resulting nVS product;the insight, experience, and learning in conducting this project;various testing procedures applied to the program versions;several quantitative measures of the resulting nVS product;and some comparisons with previous projects. The effectiveness of our revised nVP design paradigm in improving software reliability by the provision of fault tolerance is demonstrated. We found that no single software engineering experiment or product can make revolutionary changes to software development practices overnight. Instead, modern software engineering techniques evolve through the refinement of software development processes. This is true for fault-tolerant software techniques. Without a paradigm to guide the development and evaluation of nVS, software projects by nature can get out of control easily. The n-version programming design paradigm offers a documented process model which is subject to readjustment, tailoring, refinement, and improvement. Compared to previous nVS projects, this project (based on this evolving paradigm) confirmed that nVS product improvement could come largely
暂无评论