Results 1 - 10
of
16
What is an Object, After All?
, 1991
"... The envisaged notion of object is presented as corresponding to the basic, universal building block of (information) systems. A simple mathematical model for fully concurrent objects (actors) is adopted that extends a suitable model for sequential processes. An object is defined as a process possibl ..."
Abstract
-
Cited by 32 (4 self)
- Add to MetaCart
The envisaged notion of object is presented as corresponding to the basic, universal building block of (information) systems. A simple mathematical model for fully concurrent objects (actors) is adopted that extends a suitable model for sequential processes. An object is defined as a process possibly endowed with initiative and tracedependent attributes. Transactional requirements are analysed within this framework as liveness requirements. Object aggregation is explained using the general notion of object morphism. The basic inheritance, overriding and reification mechanisms are also presented, as well as a suitable notion of object-type. The computational model is shown through examples to provide a sound basis for (information) systems design, including abstract conceptual modeling and layered implementation of both passive (record-like) and active (procedure-like) objects. The model establishes a suitable semantic domain for the envisaged broad spectrum specification/design languag...
Object Specification
- IFIP WG14.3 Book on Algebraic Foundations of Systems Specification
, 1997
"... Introduction From an object-oriented point of view, software systems are considered to be dynamic collections of autonomous objects that interact with each other. Autonomy means that each object encapsulates all features needed to act as an independent computing agent: individual attributes (data), ..."
Abstract
-
Cited by 18 (3 self)
- Add to MetaCart
Introduction From an object-oriented point of view, software systems are considered to be dynamic collections of autonomous objects that interact with each other. Autonomy means that each object encapsulates all features needed to act as an independent computing agent: individual attributes (data), methods (operations) , behavior (process), and communication facilities. And each object has a unique identity that is immutable throughout lifetime. Coincidentally, objectorientation comes with an elaborate system of classes and types, facilitating structuring and reuse of software. The object approach is widely accepted in software technology, and there are object-oriented programming languages, database systems, and software development methods. The basic idea is not new, because essential features were already present in the programming language Simula [DMN67]. Wider acceptance came with Smalltalk [KG76, GR83]. While the object approach is success
A Temporal Logic Approach to Object Certification
- Data & Knowledge Engineering
, 1996
"... A brief overview is made of the use of temporal logic formalisms for specifying and verifying concurrent systems in general and information systems in particular. The requirements imposed by object-orientation on such formalisms are examined. A logic is proposed fulfilling those requirements (except ..."
Abstract
-
Cited by 15 (7 self)
- Add to MetaCart
A brief overview is made of the use of temporal logic formalisms for specifying and verifying concurrent systems in general and information systems in particular. The requirements imposed by object-orientation on such formalisms are examined. A logic is proposed fulfilling those requirements (except concerning non-monotonic features), allowing the uniform treatment of both local and global properties of systems with concurrent, interacting components organized in classes, and supporting specialization. A semantics and a calculus (following an axiomatic, Hilbert style) are presented in detail. The calculus includes rules for the sound inheritance and reflection of theorems between classes. Practical aspects of the usage of such a logic for both specification and verification are considered. To this end a set of metatheorems is provided for expediting the proof of invariants. Finally, the need and availability of automatic theorem proving for systems querying is briefly discussed. Key wo...
On the Practical Need for Abstraction Relations to Verify Abstract Data Type Representations
- IEEE Transactions on Software Engineering
, 1997
"... Abstract—The typical correspondence between a concrete representation and an abstract conceptual value of an abstract data type (ADT) variable (object) is a many-to-one function. For example, many different pointer aggregates give rise to exactly the same binary tree. The theoretical possibility tha ..."
Abstract
-
Cited by 14 (7 self)
- Add to MetaCart
Abstract—The typical correspondence between a concrete representation and an abstract conceptual value of an abstract data type (ADT) variable (object) is a many-to-one function. For example, many different pointer aggregates give rise to exactly the same binary tree. The theoretical possibility that this correspondence generally should be relational has long been recognized. By using a nontrivial ADT for handling an optimization problem, we show why the need for generalizing from functions to relations arises naturally in practice. Making this generalization is among the steps essential for enhancing the practical applicability of formal reasoning methods to industrial-strength software systems.
Concepts of Object-Orientation
- In Proc. of the 2nd Workshop of "Informationssysteme und Kunstliche Intelligenz: Modellierung
, 1992
"... An object is a unit of structure and behavior; it has an identity which persists through change; objects communicate with each other; they are classified by object types, collected into object classes, related by inheritance, and composed to form complex objects. In the first part of the paper, this ..."
Abstract
-
Cited by 13 (10 self)
- Add to MetaCart
An object is a unit of structure and behavior; it has an identity which persists through change; objects communicate with each other; they are classified by object types, collected into object classes, related by inheritance, and composed to form complex objects. In the first part of the paper, this rich world of concepts and constructions is explained in an informal but systematic way, independent of any language or system. In the second part, features of an object specification language are outline which incorporate most of these concepts and constructions. 1 Introduction There are many languages, systems, methods and approaches in computing which call themselves "object--oriented", among them object--oriented programming languages like SmallTalk [GR83], C++ [St86] and Eiffel [Me88], object--oriented database systems like GemStone [BOS91], O 2 [De91], IRIS [Fi87] and ORION [Ki88], and object--oriented system development methods like GOOD [SS86], MOOD [Ke88] and HOOD [Hei88]. High--l...
Temporal Specification of Information Systems
- Logic and Software Engineering, International Workshop in Honor of C.S. Tang, Beijing
, 1996
"... Information systems are open, reactive, and often distributed systems that maintain persistent data. The Troll and omTroll languages aim at specifying information systems on a high level of abstraction, supported by tools integrated in the Tbench. The development is rooted in abstract data types ..."
Abstract
-
Cited by 11 (2 self)
- Add to MetaCart
Information systems are open, reactive, and often distributed systems that maintain persistent data. The Troll and omTroll languages aim at specifying information systems on a high level of abstraction, supported by tools integrated in the Tbench. The development is rooted in abstract data types, conceptual modeling, behavior modeling, specification of reactive systems, and concurrency theory.
Transactions in Object-Oriented Specifications
- Recent Trends in Data Types Specification, Proc. 10th Workshop on Specification of Abstract Data Types joint with the 5th COMPASS Workshop, S.Margherita, Italy, May/June 1994, Selected papers
, 1995
"... The formal step by step development of implementations from specifications is necessary to allow the incremental description of large software systems and hence split the software development process in manageable portions. Due to the complex notion of objects as units of structure and behavior, ..."
Abstract
-
Cited by 9 (5 self)
- Add to MetaCart
The formal step by step development of implementations from specifications is necessary to allow the incremental description of large software systems and hence split the software development process in manageable portions. Due to the complex notion of objects as units of structure and behavior, the refinement process has to be reconsidered in the object-oriented framework. Apart from refining structure the behavioral part gives rise to refine actions by transactions. Referring to information systems as application domain, concurrency control aspects come into play because of shared resources. We present an approach to incorporate transactions into object-oriented specification and illustrate the main problems of synchronizing them on commonly used resources.
Denotational Semantics of Object Specification
- Acta Informatica
, 1998
"... From an arbitrary temporal logic institution we show how to set up the corresponding institution of objects. The main properties of the resulting institution are studied and used in establishing a categorial, denotational semantics of several basic constructs of object specification, namely aggre ..."
Abstract
-
Cited by 7 (3 self)
- Add to MetaCart
From an arbitrary temporal logic institution we show how to set up the corresponding institution of objects. The main properties of the resulting institution are studied and used in establishing a categorial, denotational semantics of several basic constructs of object specification, namely aggregation (parallel composition), interconnection, abstraction (interfacing) and monotonic specialization. A duality is established between the category of theories and the category of objects, as a corollary of the Galois correspondence between these concrete categories. The special case of linear temporal logic is analysed in detail in order to show that categorial products do reflect interleaving and reducts may lead to internal nondeterminism. Key words: object-orientation, system specification, temporal logic, institution, denotational semantics, duality. 1 Introduction The advantages of object-orientation in software engineering in general and system specification in particular...
Nonsequential Automata Semantics for a Concurrent, Object-Based Language
- First US-Brazil Workshop on Formal Foundations of Software Systems, Rio de Janeiro, ENTCS
, 1998
"... Nonsequential automata constitute a categorial semantic domain based on labeled transition system with full concurrency, where restriction and relabeling are functorial and a class of morphisms stands for reification. It is a model for concurrency which satisfies the diagonal compositionality requir ..."
Abstract
-
Cited by 6 (5 self)
- Add to MetaCart
Nonsequential automata constitute a categorial semantic domain based on labeled transition system with full concurrency, where restriction and relabeling are functorial and a class of morphisms stands for reification. It is a model for concurrency which satisfies the diagonal compositionality requirement, i.e., reifications compose (vertically) and distribute over combinators (horizontally). To experiment with the proposed semantic domain, a semantics for a concurrent, object-based language is given. It is a simplified and revised version of the object-oriented specification language GNOME, introducing some special features inspired by the semantic domain such as reification and aggregation. The diagonal compositionality is an essential property to give semantics in this context.
Progress Assumption in Concurrent Systems
- Research Report, INESC
, 1990
"... . A denotational semantics and a sound and complete inequational proof system for processes with varying degrees of liveness is presented. New insights on quiescence are given concerning the Jonsson characterization of input/output systems. A theory of transactional behaviour of the type carry out ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
. A denotational semantics and a sound and complete inequational proof system for processes with varying degrees of liveness is presented. New insights on quiescence are given concerning the Jonsson characterization of input/output systems. A theory of transactional behaviour of the type carry out until the end is developed as an application of this concept of process with liveness requirements. The proposed model fully reflects the parallel composition of transactional requirements, giving the expected composite requirements. Keywords. Concurrency, Inequational Proof Systems, Process Algebras, Liveness, Quiescence, Transactions. 2 1.Introduction. Most modern approaches to software development adopt a process view of modularity in the sense that the system to be developed is to be set-up by combining (via parallel composition) several component processes --- see for instance [SFSE89, MP92]. Indeed, the ever popular object-oriented approaches adopt the essential notion of community ...

