Issue No.06 - June (2002 vol.28)
<p><b>Abstract</b>—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 (ADOs) and their interfaces (ADVs). The objects capture the basic concern (the fundamental computation algorithm and basic functionality as it is relevant to an application domain), 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. This relationship, which we call “views-a,” is formally characterized through its semantic properties. 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 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. Once the designer identifies the concerns, the theory provides a formal means to define, separate, and use interfaces to capture the specific concerns in object-oriented design. Further, the theory provides a formal means to combine the interfaces that capture the concerns. 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.</p>
Abstract design views, objects, specification, verification, user interfaces, logic, concurrency.
Paulo S.C. Alencar, Donald D. Cowan, Carlos J.P. Lucena, "A Logical Theory of Interfaces and Objects", IEEE Transactions on Software Engineering, vol.28, no. 6, pp. 548-575, June 2002, doi:10.1109/TSE.2002.1010059