Rigorous Analysis and Design for Software Intensive Systems

Abstract

Preface The seminar was concerned with a challenging problem in current software technology: the use of non-sequential components in heterogeneous systems. Both topics are related and raise many interesting issues, such as concurrency, distribution , reliability, etc. They challenge existing formalisms and methods and were addressed at the workshop by various speakers. Heterogeneity of systems (e.g., hardware vs. software, continuous vs. discrete, etc.) is asking for the assumption that software can be considered in isolation. The methods used for sequential component development are being extended in an attempt to cope with these new requirements. At present, it is not clear whether these methods are in fact extendable. New methods and formalisms are being invented to address the challenges of building such systems. To tackle the task of rigorous analysis of large systems, the methods will focus on high level speciications. That is, complex heterogeneous systems and the constituent components are described more abstractly, say on the level of system architecture rather than on the level of mere programs. A system architecture reeects interaction and interfaces between the components without specifying all their complex internal functionality. Analysis of such an architecture is a new challenge for methods being applied to ordinary software systems so far. When discussing about systems in the large, we are also faced with reenement issues. Detailed information about timing or any physical limitation is not known on the abstract level of speciication. For supporting the incremental development new strategies for reenement are introduced, i.e. how to develop a system design straightforward from a high level speciication. In practice, semi formal methods like UML are accepted by a broad audience of software engineers in order to describe heterogeneous systems on a high level. Although UML models are primarily used to communicate only a design, the emerging question is how formal notations and languages, which are developed for rigorous analysis already, can support the design phase. A formalization that bridges the gap between semi formal and formal notations is to be developed and investigated. In order to make technologies available and useful, adequate tool support has to be provided for actual usage in real applications. We aim at environments in which tools and notations are adequately integrated and which support method-ological guidance without constraining the users creativity and individual progress. 2 In addition to the topics dealt with by the speakers, the workshop participants formed three working groups to …

Cite this paper

@inproceedings{Maibaum1999RigorousAA, title={Rigorous Analysis and Design for Software Intensive Systems}, author={Tom Maibaum}, year={1999} }