EssaysForStudent.com - Free Essays, Term Papers & Book Notes
Search

Validation and Verification of Design Through

By:   •  Research Paper  •  2,792 Words  •  February 25, 2010  •  946 Views

Page 1 of 12

Join now to read essay Validation and Verification of Design Through

VALIDATION AND VERIFICATION OF DESIGN THROUGH

AUTOMATION OF TEST CASE GENERATION

Preeti Sharma*, Ravinder Jangir*

Shailesh Giri*

* Post Graduate Student of Software Systems at Birla Institute of Technology and Science, Pilani

Abstract

Software quality is achieved through the application of development techniques and the use of verification procedures throughout the development process Careful consideration of specific quality attributes and validation requirements leads to the selection of a balanced collection of review, analysis, and testing techniques for use throughout the life cycle. This paper describes a methodology for the verification of safety-critical software. The methodology contains techniques for creating requirements-based test cases from scenarios. A major challenge in this area is to automatically generate a relatively small set of test cases that, collectively, guarantees a selected degree of coverage of the behavior space. This model, in the end, describes an expression for test case generation. The algorithm is then tested on safety critical software (Flight Landing Software) design. The automation approach to automate the testing is also discussed in the end.

Introduction

Programming is an exercise in problem solving. As with any problem-solving activity, determination of the validity of the solution is part of the process. This paper discusses testing and analysis techniques that can be used to validate software and to instill confidence in the quality of the programming product. It presents a collection of verification techniques that can be used throughout the development process to facilitate software quality assurance. Programs whose malfunction would have severe consequences justify greater effort in their validation. For example, software used in the control of airplane landings or directing of substantial money transfers requires higher confidence in its proper functioning than does a car pool locator program. For each software project, the validation requirements, as well as the product requirements, should be determined and specified at the initiation of the project. Project size, uniqueness, criticalness, the cost of malfunction, and project budget all influence the validation needs. After the validation requirements have been clearly stated, specific techniques for validation, verification, and testing can be chosen. Verification, validation, and testing are closely tied to software quality. There have been many studies directed toward determining appropriate factors for software quality. A number of attributes have been proposed. The main attributes of software quality include reliability, testability, usability, efficiency, transportability, and maintainability, but in practice, efficiency often conflicts with other attributes.[3]

1. Validation and Verification of Safety Critical systems

A life or safety critical system is a system where human safety is dependent upon the correct operation of the system. A system is a safety critical system if a failure can result in loss of life, injury or illness, serious environmental damage, significant loss of, or damage to, property, failure of an important mission. The basic system safety goal is to eliminate all single-point failures that could lead to unacceptable consequences and minimize the probability of accidents caused by multi-point failures. Safety critical software has been traditionally associated with embedded control systems. As awareness of how systems can impact safety has developed, the scope of safety critical software has expanded into many other types of systems.

An obvious example of a safety critical system is an aircraft fly by wire control system, where the pilot inputs commands to the control computer using a joystick, and the computer manipulates the actual aircraft controls. The lives of hundreds of passengers are totally dependent upon the continued correct operation of such a system.

1.1 Testing of Safety Critical System

Safety critical software must be thoroughly tested by test cases which represent accurately the reality of the operational plant or system. It is often difficult to obtain adequate realistic test cases to represent the real operation of the software because,

Download as (for upgraded members)  txt (19 Kb)   pdf (242.2 Kb)   docx (18.8 Kb)  
Continue for 11 more pages »