DocumentCode :
763725
Title :
A logical theory of interfaces and objects
Author :
Alencar, Paulo S C ; Cowan, Donald D. ; Lucena, Carlos J P
Author_Institution :
Dept. of Comput. Sci., Waterloo Univ., Ont., Canada
Volume :
28
Issue :
6
fYear :
2002
fDate :
6/1/2002 12:00:00 AM
Firstpage :
548
Lastpage :
575
Abstract :
This paper motivates and describes a logic-based approach to specifying and reasoning about interfaces and objects that focuses on separation of concerns issues. The approach is based on the abstract design view (ADV), a software design model for object-oriented systems. The model was originally introduced to characterize, in an informal and practical setting, a clear separation between objects, which we called abstract design objects and their interfaces (ADVs). The objects capture the basic concern, while the interfaces capture special concerns such as user interface, control, timing, and distribution. First, we analyze the ADV design model in order to precisely characterize the interfaces, their associated objects, and the relationship between them. Then, we present one possible approach to formalizing interfaces, objects, and the "views-a" relationship. The central mathematical tools used for this purpose are temporal logic and some tools from the category theory. The formal approach is illustrated by examples that show how the interface and related objects and the views-a relationship can be used in object-oriented specifications. We also show how the theory enables the designer to perform relevant analysis activities while modeling with separation of concerns in mind. The theory can be used to derive dynamic and structural properties of the interface objects and the views-a relationship. In particular, we can use the theory to derive global properties of interfaces that capture special concerns from the local properties of their related objects
Keywords :
category theory; formal specification; formal verification; object-oriented programming; temporal logic; user interfaces; abstract design objects; abstract design views; category theory; concurrency; object-oriented program; separation of concerns; specification; temporal logic; user interfaces; verification; Application software; Computer interfaces; Concurrent computing; Distributed computing; Logic design; Object oriented modeling; Performance analysis; Software design; Timing; User interfaces;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.2002.1010059
Filename :
1010059
Link To Document :
بازگشت