Results 1 - 10
of
41
Statecharts: A Visual Formalism For Complex Systems
, 1987
"... We present a broad extension of the conventional formalism of state machines and state diagrams, that is relevant to the specification and design of complex discrete-event systems, such as multi-computer real-time systems, communication protocols and digital control units. Our diagrams, which we cal ..."
Abstract
-
Cited by 1962 (47 self)
- Add to MetaCart
We present a broad extension of the conventional formalism of state machines and state diagrams, that is relevant to the specification and design of complex discrete-event systems, such as multi-computer real-time systems, communication protocols and digital control units. Our diagrams, which we call statecharts, extend conventional state-transition diagrams with essentially three olements, dealing, respectively, with the notions of hierarchy, concurrency and communication. These transform the language of state diagrams into a highly structured' and economical description language. Statecharts are thus compact and expressive--small diagrams can express complex behavior--as well as compositional and modular. When coupled with the capabilities of computerized graphics, statecharts enable viewing the description at different levels of detail, and make even very large specifications manageable and comprehensible. In fact, we intend to demonstrate here that statecharts counter many of the objections raised against conventional state diagrams, and thus appear to render specification by diagrams an attractive and plausible approach. Statecharts can be used either as a stand-alone behavioral description or as part of a more general design methodology that deals also with the system's other aspects, such as functional decomposition and data-flow specification. We also discuss some practical experience that was gained over the last three years in applying the statechart formalism to the specification of a particularly complex system.
On Object State Testing
- in Proceedings of Computer Software and Applications Conference
, 1994
"... The importance of object state testing is illustrated through a simple example. We show that certain errors in the implementation of object state behavior cannot be readily detected by conventional structural testing, functional testing, and state testing. We describe an object state test model and ..."
Abstract
-
Cited by 41 (5 self)
- Add to MetaCart
The importance of object state testing is illustrated through a simple example. We show that certain errors in the implementation of object state behavior cannot be readily detected by conventional structural testing, functional testing, and state testing. We describe an object state test model and outline a reverse engineering method for extracting object state behaviors from C++ source code. The object state test model is a hierarchical, concurrent, communicating state machines. It resembles the concepts of inheritance and aggregation in the object-oriented paradigm, rather than the concept of state decomposition as in some existing models. The reverse engineering method is based on symbolic execution to extract the states and effects of the member functions. The symbolic execution results are used to construct the state machines. The usefulness of the model and the method is discussed in the context of object state testing in the detection of a state behavior error. 1 Introduction ...
Module Reuse by Interface Adaptation
, 1991
"... This paper describes a language called Nimble that allows designers to declare how the actual parameters in a procedure call are to be transformed at run time. Normally, programmers must edit an application's source in order to adapt it for reuse in some new context where the interfaces fail to matc ..."
Abstract
-
Cited by 31 (0 self)
- Add to MetaCart
This paper describes a language called Nimble that allows designers to declare how the actual parameters in a procedure call are to be transformed at run time. Normally, programmers must edit an application's source in order to adapt it for reuse in some new context where the interfaces fail to match exactly (e.g
Formal Methods and the Development of Dependable Systems
, 1996
"... This document type describes the functions, data and dynamic behaviour of an object associated with a specific level. In addition, boundary conditions restricting the class of possible realisations for the object are documented. (2) Architecture Description: This is a design structure which decompos ..."
Abstract
-
Cited by 17 (4 self)
- Add to MetaCart
This document type describes the functions, data and dynamic behaviour of an object associated with a specific level. In addition, boundary conditions restricting the class of possible realisations for the object are documented. (2) Architecture Description: This is a design structure which decomposes the object under consideration and/or refines its data structures. The process of decomposition introduces new objects to be associated with a lower level, as well as interfaces between them. Each new object is associated with its own lower-level requirements description. In this way, the alternation between requirements and architecture documents can be recursively applied to the decomposition tree from system to module level
Object-oriented logical specification of time-critical systems
- ACM Transactions on Software Engineering and Methodology
, 1994
"... We define TRIO+, an object-oriented logical language for modular system specification, TRIO+ is based on TRIO, a first-order temporal language that 1s well smted to the specification of embedded and real-time systems, and that provides an effective support to a variety of validation activities, like ..."
Abstract
-
Cited by 15 (1 self)
- Add to MetaCart
We define TRIO+, an object-oriented logical language for modular system specification, TRIO+ is based on TRIO, a first-order temporal language that 1s well smted to the specification of embedded and real-time systems, and that provides an effective support to a variety of validation activities, like specification testing, slmulatlon, and property proof. Unfortunately, TRIO lacks the abihty to construct specifications of complex systems m a systematic and modular way, TRIO + combmes the use of constructs for hierarchical system decomposition and object-oriented concepts like inheritance and genericlty with an expressive and intuitive graphic notation, yielding a specification language that M formal and rigorous, yet still flexlble, readable, general, and easdy adaptable to the user’s needs. After introducing and motlvatmg the mam features of the language, we Illustrate its apphcation to a nontrivial case study extracted from a real-life industrial application.
Conceptual Modeling for Computerized Information Systems Support in Organizations
, 1995
"... Organizations are continuously under the pressure of change, and develop through a process of social construction, based on its individuals ’ current perception of the world. Most organizations have a partly computerized information system to support adequate action so that perceived value addition ..."
Abstract
-
Cited by 15 (5 self)
- Add to MetaCart
Organizations are continuously under the pressure of change, and develop through a process of social construction, based on its individuals ’ current perception of the world. Most organizations have a partly computerized information system to support adequate action so that perceived value addition may be achieved within this environment. It is regarded that the evolutionary aspects of computerized information systems support are insufficiently covered by traditional approaches and tools. In addition to this, the process of social construction of the organizational reality is neglected in most development methodologies. In this thesis, we have developed a methodological framework coined system devtenance for the application of conceptual models in developing and maintaining portfolios of computerized information systems in organizations, taking continuous evolution and social construction into account. A survey-investigation has been performedamong Norwegian organizations to get a better impression of current methodologies and perceived problems with computerized information systems support in organizations. The results from the investigation are compared with previous
The Behavior Network Model For Conceptual Information Modeling
, 1997
"... The Behavior Network Model (BNM) for conceptual information modeling is described. A BNM description specifies both the static and dynamic aspects of an application. Static aspect modeling describes the structural properties of real world objects and their structural relationships. The dynamic aspec ..."
Abstract
-
Cited by 12 (2 self)
- Add to MetaCart
The Behavior Network Model (BNM) for conceptual information modeling is described. A BNM description specifies both the static and dynamic aspects of an application. Static aspect modeling describes the structural properties of real world objects and their structural relationships. The dynamic aspect is modeled by processes and their interfaces. BNM allows formal analysis of model descriptions and facilitates rapid prototyping. A methodology for conceptual modeling using BNM is also described. 1 INTRODUCTION Much effort has been spent in finding a solution to the so-called software crisis --- "software projects were being delivered far behind schedule, quality was poor, and maintenance was expensive " [rama84a]. Proposals to solving these problems include the use of a conceptual model in information systems development [bube80a] [shem87a] [yehr84a]. A conceptual model describes the collective perception of the application domain by the development team and users. A conceptual model s...
Software Specification & Design Methods and Method Engineering
, 1994
"... This article summarizes the state of the art in software specification & design methods, which assist developers in constructing the models of the problem domain and of the system and in writing requirements and design specifications. The typical methods such as structured methods and object-orie ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
This article summarizes the state of the art in software specification & design methods, which assist developers in constructing the models of the problem domain and of the system and in writing requirements and design specifications. The typical methods such as structured methods and object-oriented methods are summarized. The new discipline called "Method Engineering", engineering for constructing methods, is briefly presented
IPTES SA/RT Logical Model Toolset - High Level Functional Specification
- Dawn of the New Millennium-Status and Future, Proceeding of the IEEE
, 1993
"... This document is the High Level Specification for the IPTES SA/RT Logical Model Toolset. It describes the components of the toolset, their interaction and their relationship to the IPTES architecture. IPTES SA/RT Logical Model Toolset---High Level Functional Specification a Contents 1 Introducti ..."
Abstract
-
Cited by 7 (2 self)
- Add to MetaCart
This document is the High Level Specification for the IPTES SA/RT Logical Model Toolset. It describes the components of the toolset, their interaction and their relationship to the IPTES architecture. IPTES SA/RT Logical Model Toolset---High Level Functional Specification a Contents 1 Introduction 2 2 The Components of the Toolset 5 2.1 High-level View : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5 2.2 The SA/RT Executor : : : : : : : : : : : : : : : : : : : : : : : : : 6 2.3 The HLTPN Kernel : : : : : : : : : : : : : : : : : : : : : : : : : : 8 3 Conclusions 12 4 References 12 IPTES-MARI-36-V1.4 IPTES SA/RT Logical Model Toolset---High Level Functional Specification a 1 Introduction The purpose of this document is to identify the individual components which make up the IPTES SA/RT logical model toolset and describe their inter-relationships. The individual components are fully specified in separate documents which are referred to in this document. This toolset...
An Executable Semantics for a Formalized Data Flow Diagram Specification Language
, 1993
"... While traditional Data Flow Diagrams (DFDs) are popular, they lack the formality needed in a good specification technique. We provide an executable semantics for a subset of RTSPECS, a formalization of DFDs, using the programming language Standard ML. RT-SPECS is a formal notation for specifying con ..."
Abstract
-
Cited by 7 (5 self)
- Add to MetaCart
While traditional Data Flow Diagrams (DFDs) are popular, they lack the formality needed in a good specification technique. We provide an executable semantics for a subset of RTSPECS, a formalization of DFDs, using the programming language Standard ML. RT-SPECS is a formal notation for specifying concurrent and real-time software that relies on model-based specification of abstract datatypes. Processes are specified using assertions rather than algorithms. Because our semantics of RT-SPECS is written in SML, it is also an interpreter, yielding a directly executable specification language.

