SMALLTALK-80: the interactive programming environment
SMALLTALK-80: the interactive programming environment
A distributed alternative to finite-state-machine specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
Salient features of and executable specification language and its environment
IEEE Transactions on Software Engineering
Statecharts: A visual formalism for complex systems
Science of Computer Programming
Logic programming and rapid prototyping
Science of Computer Programming
Dimensions of object-based language design
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
A Prototyping Language for Real-Time Software
IEEE Transactions on Software Engineering
An introduction to object-oriented programming and Smalltalk
An introduction to object-oriented programming and Smalltalk
Constructing Distributed Systems in Conic
IEEE Transactions on Software Engineering
STATEMATE: A Working Environment for the Development of Complex Reactive Systems
IEEE Transactions on Software Engineering
Languages for specification, design, and prototyping
Modern software engineering, foundations and current perspectives
Software Component with ADA
Approaches to Prototyping
Focusing Real-Time Systems Analysis on User Operations
IEEE Software
A Compositional Approach to Multiparadigm Programming
IEEE Software
An Introduction to the Specification Language SPEC
IEEE Software
Using Expert Systems to Construct Formal Specifications
IEEE Expert: Intelligent Systems and Their Applications
Executable requirements for embedded systems
ICSE '81 Proceedings of the 5th international conference on Software engineering
Proceedings of the conference on TRI-Ada '96: disciplined software development with Ada
Logic program based action specifications
SAC '95 Proceedings of the 1995 ACM symposium on Applied computing
Executing Formal Specifications with Concurrent Constraint Programming
Automated Software Engineering
A temporal behavioral object model for object-oriented databases
COMPSAC '97 Proceedings of the 21st International Computer Software and Applications Conference
Automated modular specification and verification of real-time reactive systems
WIFT '95 Proceedings of the 1st Workshop on Industrial-Strength Formal Specification Techniques
Extending OODB with Behavioral Temporal Management Capability
COMPSAC '96 Proceedings of the 20th Conference on Computer Software and Applications
The anatomy of prototypes: Prototypes as filters, prototypes as manifestations of design ideas
ACM Transactions on Computer-Human Interaction (TOCHI)
Hi-index | 0.00 |
The OBSERV methodology for software development is based on rapid construction of an executable specification, or prototype, of a systems, which may be examined and modified repeatedly to achieve the desired functionality. The objectives of OBSERV also include facilitating a smooth transition to a target system, and providing means for reusing specification, design, and code of systems and subsystems. We are particularly interested in handling embedded systems, which are likely to have concurrency and have some real-time requirements.The OBSERV prototyping language combines several paradigms to express the behavior of a system. The object-oriented approach provides the basic mechanism for building a system from a collection of objects, with well-defined interfaces between them. We use finite-state machines to model the behavior of individual objects. At a lower level, activities that occur within objects, either upon entry to a state or in transition between thus allowing a nonprocedural description.The environment provided to a prototype builder is as important as the language. We have made an attempt to provide flexible tools for executing or simulating the prototype being built, as well as for browsing and static checking. The first implementation of the tools was window based but not graphic. A graphic front end, name CRUISE, was developed afterwards.A simulation sequence focuses on a single object, which can be as complex as necessary, possibly the entire system, and expects all the interactions between it and the outside world to be achieved by communication between the simulator and the user. The simulator allows the user to easily switch back and forth from one object to another, simulating each object in isolation.To enable testing the behavior of a prototype in a realistic environment, it is possible to construct objects that imitate the environment objects. We also allow simulation of systems with missing pieces, by calling upon the user to simulate any such missing piece by himself.