115,659 research outputs found
Requirements analysis of the VoD application using the tools in TRADE
This report contains a specification of requirements for a video-on-demand (VoD) application developed at Belgacom, used as a trial application in the 2RARE project. The specification contains three parts: an informal specification in natural language; a semiformal specification consisting of a number of diagrams intended to illustrate the informal specification; and a formal specification that makes the requiremants on the desired software system precise. The informal specification is structured in such a way that it resembles official specification documents conforming to standards such as that of IEEE or ESA. The semiformal specification uses some of the tools in from a requirements engineering toolkit called TRADE (Toolkit for Requirements And Design Engineering). The purpose of TRADE is to combine the best ideas in current structured and object-oriented analysis and design methods within a traditional systems engineering framework. In the case of the VoD system, the systems engineering framework is useful because it provides techniques for allocation and flowdown of system functions to components. TRADE consists of semiformal techniques taken from structured and object-oriented analysis as well as a formal specification langyage, which provides constructs that correspond to the semiformal constructs. The formal specification used in TRADE is LCM (Language for Conceptual Modeling), which is a syntactically sugared version of order-sorted dynamic logic with equality. The purpose of this report is to illustrate and validate the TRADE/LCM approach in the specification of distributed, communication-intensive systems
Designing precise and flexible graphical modelling languages for software development
Model-driven approaches to software development involve building computerized models of software and the environment in which it is intended to operate.
This thesis offers a selection of the author’s work over the last three decades that addresses the design of precise and flexible graphical modelling languages for use in model-driven software development. The primary contributions of this work are:
• Syntropy: the first published object-oriented analysis and design (OOAD) method to fully integrate formal and graphical modelling techniques.
• The creation of the Object Constraint Language (OCL) and its integration into the Unified Modeling Language (UML) specification.
• The identification of requirements and mechanisms for increasing the flexibility of the UML specification.
• The design and implementation of tools for implementing graphical Domain Specific Languages (DSLs).
The starting point was the author’s experience with formal specification techniques contrasted with the lack of precision of published object-oriented analysis and design methods. This led to a desire to fully integrate these two topics – formal specification and object-orientation - into a coherent discipline. The Syntropy approach, created in 1994 by this author and John Daniels, was the first published complete attempt to do this.
Much of the author’s subsequent published work concerns the Unified Modeling Language (UML). UML represented a welcome unification of earlier OOAD approaches, but suffered badly from inflexibility and lack of precision. A significant part of the work included in this thesis addresses the drawbacks of the UML and proposes improvements to the precision of its definition, including through the invention of Object Constraint Language (OCL) and its incorporation into the UML specification, and the consideration of UML as source material for the definition of Domain Specific Languages (DSLs). Several of the author’s published works in this thesis concern mechanisms for the creation of DSLs, both within a UML framework and separately
Rigorous object-oriented analysis
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
Recommended from our members
Object-oriented views: a novel approach for tool integration in design environments (dissertation)
Object-oriented databases have been proposed to serve as the data management component of integrated design environments. One central database represents a bottleneck, however, requiring all design tools to work on the same information model and preventing the extensibility of the system over time. In this dissertation, I propose a view-based object server that successfully addresses these problems by supporting design views tailored to the needs of individual design tools.A view on an object-oriented schema corresponds to a virtual subschema graph with restructured generalization and property decomposition hierarchies. I present a methodology for supporting multiple view schemata, called MutliView. MultiView is anchored on the following four ideas: (1) the customization of individual classes using object algebra, (2) the integration of these derived classes into one global schema graoh, (3) the extraction of virtual and base classes from the global schema as required by the view, and (4) the generation of a class hierarchy for these selected view classes. MutliView's division of view specification into these well-defined tasks, some of which have been successfully automated, makes it a powerful tool for supporting the specification of views by non-database experts while enforcing view consistency.In this dissertation, I describe solutions for all four tasks underlying MultiView. For the first task, I have formulated class derivatin operators modeled after the well-known relational algebra operators. For the second task, I have developed a classification algorithm that automatically integrates derived classes into one global schema. For the third task, I have designed a view definition language that can be used to declaratively specify the view classes required for a particular view. For the last task, I have developed an algorithm that generates a complete, minimal and consistent view schema. I present proofs of correctness, complexity analysis, and numerous illustrative examples for all algorithms.MultiView is applied to address the tool integration problem in a behavioral synthesis system. For this purpose, I first develop a unified design object model for behavioral synthesis. I then formulate customized design views of this model tailored to the needs of particular design tools. The resulting system allows the design tools to work on their view of the information model, while MultiView assures the consistent integration of the diverse design data into one object model
Natural Language Based Object-Oriented Software Modelling
Deriving useful information from natural language has been a task of much relevance for fields ranging from machine translation, software modelling, and artificial intelligence and so on. Sufficient literature is available on utilisation of grammatical inference in object oriented software modelling. The major advancements in this field along with the challenges faced by researchers as well as practitioners have been outlined. An amalgamation of ideas taken from existing theories and models along with proposed methodology has been worked out so as to utilise natural language text in the field of object oriented analysis and design. The very first step of Natural Language (NL) text processing is Parts-of-Speech (POS) tagging. Grammatical rules, some already existing and some deduced through careful observation of NL structures has been extensively discussed and implemented. After appropriate tagging the words to their respective parts of speech the objective is to recognise the classes among them. The classes along with their attributes and methods were listed out. These classes essentially are identified as part of the major functionalities in an information system. The information system consists of requirement specification given by clients for their target software. Comprehending client specification is a time consuming process. Therefore analysing classes from the specification provided becomes mandatory. Several ambiguities and redundancy in class identification were faced and were effectively resolved. Final classes from the given requirement specification were found out. Subsequently the knowledge acquired from the same is put to use while analysing these functionalities through various UML (Unified Modelling Language) diagrams. There are several UML tools that serve the purpose of drawing these diagrams. But the motive is to make the entire process of deriving the UML diagrams in a logical and automated manner
The M*-object methodology for information system design in CIM environments : the conceptual design phase
M*-OBJECT is a methodology for the analysis, design and implementation of CIM information systems. In this paper, the conceptual design phase is presented. It starts from users information requirements and provides a conceptual specification, the conceptual schema, of the information system to be used in the integrated manufacturing system to be designed. This methodological phase is supported by the Process and Data Net (PDN) model which integrates an objet-oriented data model, a query and data manipulation language, a process model, and an object behaviour description model. The major features of the specification approach are : static, dynamic, and behavioural properties of information are fully covered, complex data structures and data manipulation can be specified, and specifications are executable for rapid prototyping
Next generation design framework for the aircraft electric power system
Comprehensive understanding and analysis of the more
electric aircraft network architecture (MEA) usually require
a powerful simulation framework, which allows
modelling, simulation and post-processing of aircraft
electric power systems. Since the electric power network
in the MEA typically covers several physical domains
such as electrical systems, magnetic systems,
mechanical systems and control, a modelling language
to be selected for the design framework has to be capable
of modelling multi-domain systems. In this regard,
Modelica - an object oriented, equation based modelling
language has been chosen as a candidate for modelling
the extended electric network in JTI SGO project.
By hand of some study cases at supplier level and airframer
level, the capability of the Modelica technique
based design framework was tested, demonstrated and
improved. The selected applications are system specification,
component design and virtual testing, which are
associated to different phases of the design process for
the aircraft electric power system. Essential components
which were modelled are the generator, power converters
and electromechanical actuators. Modelica and the
simulation suite Dymola were demonstrated to fulfil all
stated demands
Constructive tool design for formal languages : from semantics to executing models
Embedded, distributed, real-time, electronic systems are becoming more and more dominant in our lives. Hidden in cars, televisions, mp3-players, mobile phones and other appliances, these hardware/software systems influence our daily activities. Their design can be a huge effort and has to be carried out by engineers in a limited amount of time. Computer-aided modelling and design automation shorten the design cycle of these systems enabling companies to deliver their products sooner than their competitors. The design process is divided into different levels of abstraction, starting with a vague product idea (abstract) and ending up with a concrete description ready for implementation. Recently, research has started to focus on the system level, being a promising new area at which the product design could start. This dissertation develops a constructive approach to building tools for system-level design/description/modelling/specification languages, and shows the applicability of this method to the system-level language POOSL (Parallel Object-Oriented Specification Language). The formal semantics of this language is redefined and partly redeveloped, adding probabilistic features, real-time, inheritance, concurrency within processes, dynamic ports and atomic (indivisible) expressions, making the language suitable for performance analysis/modelling. The semantics is two-layered, using a probabilistic denotational semantics for stating the meaning of POOSL’s data layer, and using a probabilistic structural operational semantics for the process layer and architecture layer. The constructive approach has yielded the system-level simulation tool rotalumis, capable of executing large industrial designs, which has been demonstrated by two successful case studies—an ATM-packet switch (in conjunction with IBM Research at Z¨urich) and a packet routing switch for the Internet (in association with Alcatel/Bell at Antwerp). The more generally applicable optimisations of the execution engine (rotalumis) and the decisions taken in its design are discussed in full detail. Prototyping, where the system-level model functions as a part of the prototype implementation of the designed product, is supported by rotalumis-rt, a real-time variant of the execution engine. The viability of prototyping is shown by a case study of a learning infrared remote control, partially realised in hardware and completed with a system-level model. Keywords formal languages / formal specification / modelling languages / systemlevel design / embedded systems / real-time systems / performance analysis / discrete event simulation / probabilistic process algebra / design automation / prototyping / simulation tool
- …