2 research outputs found

    Rigorous object-oriented analysis

    Get PDF
    Object-oriented methods for analysis, design and programming are commonly used by software engineers. Formal description techniques, however, are mainly used in a research environment. We have investigated how rigour can be introduced into the analysis phase of the software development process by combining object-oriented analysis (OOA) methods with formal description techniques. The main topics of this investigation are a formal interpretation of the OOA constructs using LOTOS, a mathematical definition of the basic OOA concepts using a simple denotational semantics and a new method for object- oriented analysis that we call the Rigorous Object-Oriented Analysis method (ROOA). The LOTOS interpretation of the OOA concepts is an intrinsic part of the ROOA method. It was designed in such a way that software engineers with no experience in LOTOS, can still use ROOA. The denotational semantics of the concepts of object-oriented analysis illuminates the formal syntactic transformations within ROOA and guarantees that the basic object- oriented concepts can be understood independently of the specification language we use. The ROOA method starts from a set of informal requirements and an object model and produces a formal object-oriented analysis model that acts as a requirements specification. The resulting formal model integrates the static, dynamic and functional properties of a system in contrast to existing OOA methods which are informal and produce three separate models that are difficult to integrate and keep consistent. ROOA provides a systematic development process, by proposing a set of rules to be followed during the analysis phase. During the application of these rules, auxiliary structures are created to help in tracing the requirements through to the final formal model. As LOTOS produces executable specifications, prototyping can be used to check the conformance of the specification against the original requirements and to detect inconsistencies, omissions and ambiguities early in the development process

    Impact of Mobility on Information Systems and Information System Design

    Get PDF
    The subject of this thesis is to analyse the impact of mobile hardware and software on information systems, to survey existing approaches for specifying mobile systems of computer science in general, and to provide suitable means for the formal design of information systems comprising such mobile units in particular. We consider a mobile unit to denote a mobile hardware or software entity, and a mobile system as a system comprising or being accessed by such mobile components. The various forms of mobile units occurring in computer science are explained and a taxonomy for them is developed, followed by a detailed discussion of their effects on computer and information systems. Several approaches for specifying mobile systems are presented and classified, with a particular emphasis on formal methods. As it turns out, these approaches do not allow to describe the set-up and release of communication links or to distinguish between the ever-mobile units of a compound system and those which provide the fixed subsystem as the context for the mobile entities, which are both important aspects to consider when developing information systems with mobile components. Therefore, corresponding constructs are then presented as an extension to the specification language Troll and its theoretical foundations, i.e. extended data signatures and the Module Distributed Temporal Logic Mdtl, both being interpreted over event structures. Finally, the application of the constructs is illustrated with the development of a system for accessing web services from mobile phones, which complements the ongoing example of information retrieval via mobile agents used to explain the constructs and concepts.Thema dieser Arbeit ist die Analyse der Auswirkungen von mobiler Hard- und Software auf Informationssysteme, die Untersuchung vorhandener Ansätze zur Spezifikation mobiler Systeme in der Informatik allgemein und für den formalen Entwurf von Informationssystemen mit mobilen Einheiten insbesondere. "Mobile Einheit" wird dabei als Oberbegriff für mobile Hardware- und Softwarekomponenten verwendet, und ein "mobiles System" ist ein System, das solche mobilen Komponenten beinhaltet oder auf das durch diese zugegriffen wird. Wir beschreiben die verschiedenen Formen, in denen mobile Einheiten in der Informatik auftreten, und entwickeln eine entsprechende Taxonomie, bevor wir deren Auswirkungen auf Computer- und Informationssysteme ausführlich diskutieren. Verschiedene Ansätze zur Spezifikation mobiler Systeme werden vorgestellt und eingeordnet, wobei das Augenmerk speziell auf formalen Methoden liegt. Es stellt sich heraus, dass es keiner dieser Ansätze ermöglicht, den Auf- und Abbau von Kommunikationsverbindungen zu beschreiben und zwischen den stets mobilen Einheiten und denjenigen zu unterscheiden, die das feste Teilsystem als Kontext für sie bilden. Beides sind aber wesentliche Aspekte, die in der Entwicklung von Informationssystemen mit mobilen Bestandteilen zu berücksichtigen sind. Daher stellen wir dann entsprechende Sprachkonstrukte als Erweiterung der Spezifikationssprache Troll inklusive der formalen Grundlagen vor. Diese Grundlagen beruhen auf erweiterten Datensignaturen und einer modularen verteilten temporalen Logik Mdtl, die beide über Ereignisstrukturen interpretiert werden. Schließlich wird die Verwendbarkeit der Sprachkonstrukte in der Entwicklung eines Systems zur Nutzung von Web-Diensten von Mobiltelefonen aus illustriert
    corecore