Tool Support for System Specification, Development and Verification


Book Description

The correct development of large / com plex pieces of software demands a thorough structuring of the design process. In a first phase the requirements engineering is relevant for capturing the relevant functionality and its adequate formalization in precise mathematical definitions. Prototyping can can be used as a means for checking the functional behaviour at this early stage of development. The ade quate specification resulting from the first phase is then the basis for the second phase which comprises the derivation of an implementation. This phase requires the use of formal methods and tools to verify/validate the implementation. A prerequisite for applying this approach is to have a suitable mechanical support. This volume contains the proceedings of the International Workshop Tool Support for System Specification, Development and Verification organized June 1 - 4, 1998, in Malente, Germany. This workshop is the third in a series of events devoted to this topic. The first two workshops were held in 1994 in Kiel and 1996 in Bremen, Germany. The aim of this workshop is to provide a forum for researchers interested in the use and development of tools which support the use of mathematical techniques for the specification, development and verification of systems. The workshop covers the spectrum from verification tools to graphical editors and compilers. The program of the workshop included an invited lecture and 26 talks. The invited lecture was given by F.W. von Henke (University ofUlm) on Mechanized formal methods and system design.







An Assessment of Space Shuttle Flight Software Development Processes


Book Description

Effective software is essential to the success and safety of the Space Shuttle, including its crew and its payloads. The on-board software continually monitors and controls critical systems throughout a Space Shuttle flight. At NASA's request, the committee convened to review the agency's flight software development processes and to recommend a number of ways those processes could be improved. This book, the result of the committee's study, evaluates the safety, oversight, and management functions that are implemented currently in the Space Shuttle program to ensure that the software is of the highest quality possible. Numerous recommendations are made regarding safety and management procedures, and a rationale is offered for continuing the Independent Verification and Validation effort that was instituted after the Challenger Accident.




System Validation and Verification


Book Description

Historically, the terms validation and verification have been very loosely defined in the system engineering world, with predictable confusion. Few hardware or software testing texts even touch upon validation and verification, despite the fact that, properly employed, these test tools offer system and test engineers powerful techniques for identifying and solving problems early in the design process. Together, validation and verification encompass testing, analysis, demonstration, and examination methods used to determine whether a proposed design will satisfy system requirements. System Validation and Verification clear definitions of the terms and detailed information on using these fundamental tools for problem solving. It smoothes the transition between requirements and design by providing methods for evaluating the ability of a given approach to satisfy demanding technical requirements. With this book, system and test engineers and project managers gain confidence in their designs and lessen the likelihood of serious problems cropping up late in the program. In addition to explanations of the theories behind the concepts, the book includes practical methods for each step of the process, examples from the author's considerable experience, and illustrations and tables to support the ideas. Although not primarily a textbook, System Validation and Verification is based in part on validation and verification courses taught by the author and is an excellent supplemental reference for engineering students. In addition to its usefulness to system engineers, the book will be valuable to a wider audience including manufacturing, design, software , and risk management project engineers - anyone involved in large systems design projects.







Independent Verification and Validation of Large Software Requirement Specification Databases


Book Description

To enhance quality, an independent verification and validation (IV V) review is conducted as software requirements are defined. Requirements are inspected for consistency and completeness. IV V strives to detect defects early in the software development life cycle and to prevent problems before they occur. The IV V review process of a massive software requirements specification, the Reserve Component Automation System (RCAS) Functional Description (FD) is explored. Analysis of the RCAS FD error history determined that there are no predictors of errors. The size of the FD mandates electronic analysis of the databases. Software which successfully performs automated consistency and completeness checks is discussed. The process of verifying the quality of analysis software is described. The use of intuitive ad hoc techniques, in addition to the automatic analysis of the databases, is required because of the varying content of the requirements databases. The ad hoc investigation process is discussed. Case studies are provided to illustrate how the process works. This thesis demonstrates that it is possible to perform an IV V review on a massive software requirements specification. Automatic analysis enables inspecting for completeness and consistency. The work with the RCAS FD clearly indicates that the IV V review process is not static; it must continually grow, adapt, and change as conditions warrant. The ad hoc investigation process provides this required flexibility This process also analyzes errors discovered by manual review and automatic processing. The analysis results in the development of new algorithms and the addition of new programs to the automatic inspection software.




Requirements Targeting Software and Systems Engineering


Book Description

Software engineering research has di?erent pro?les in Europe and North Am- ica.WhileinNorthAmericathere isalotofknowhowinthepractical,technical, and organizational aspects of software engineering, in Europe the work conc- trates more on foundations and formal modeling of software engineering issues. Bothapproacheshavetheirindividualstrengthsandweaknesses. Researchdriven solelyby practice insoftware engineering runs in the danger ofdevelopinginto a shallow ?eld failing to ?nd a solid scienti?c basis or to contribute substantially to the progress in software engineering. Work concentrating on formal aspects alone is in the danger of becoming too theoretical and isolated from practice so that any transfer into practical application will fail. Substantial progress in software engineering can be achieved, however, by bringing together pragmatic and foundational work in software engineering - search. This can provide a step towards a common scienti?c basis for software engineering that allows us to integrate the various research results, leading to fruitful synergetic e?ects. It will also help to identify critical research paths and to develop an adequate paradigm for the scienti?c discipline of software en- neering. In software and systems engineering it is necessary to distinguish the en- mous di?erence between the dynamics in development we refer to and the l- ited scope assumed by manyof today’ssoftware managerswho stilluse outdated techniques. Many of the unsolved problems associated with the old techniques are symptoms of a lack of formalization and a lack of automation support. It was the goal of this workshop to bring together experts from science and practice in software and systems engineering from North America and Europe.




Mechanizing Mathematical Reasoning


Book Description

By presenting state-of-the-art results in logical reasoning and formal methods in the context of artificial intelligence and AI applications, this book commemorates the 60th birthday of Jörg H. Siekmann. The 30 revised reviewed papers are written by former and current students and colleagues of Jörg Siekmann; also included is an appraisal of the scientific career of Jörg Siekmann entitled "A Portrait of a Scientist: Logics, AI, and Politics." The papers are organized in four parts on logic and deduction, applications of logic, formal methods and security, and agents and planning.




Guide to the Software Engineering Body of Knowledge (Swebok(r))


Book Description

In the Guide to the Software Engineering Body of Knowledge (SWEBOK(R) Guide), the IEEE Computer Society establishes a baseline for the body of knowledge for the field of software engineering, and the work supports the Society's responsibility to promote the advancement of both theory and practice in this field. It should be noted that the Guide does not purport to define the body of knowledge but rather to serve as a compendium and guide to the knowledge that has been developing and evolving over the past four decades. Now in Version 3.0, the Guide's 15 knowledge areas summarize generally accepted topics and list references for detailed information. The editors for Version 3.0 of the SWEBOK(R) Guide are Pierre Bourque (Ecole de technologie superieure (ETS), Universite du Quebec) and Richard E. (Dick) Fairley (Software and Systems Engineering Associates (S2EA)).