Software Reuse, International Conference on (1996)
Apr. 23, 1996 to Apr. 26, 1996
Bruce W. Weide , The Ohio State University
Stephen H. Edwards , The Ohio State University
Wayne D. Heym , The Ohio State University
Timothy J. Long , The Ohio State University
William F. Ogden , The Ohio State University
Two important objectives when designing a specification for a reusable software component are understandability and utility. For a typical component defining a new abstract data type, a significant common factor affecting both of these objectives is the choice of a mathematical model of the (state space of the) ADT, which is used to explain the behavior of the ADT's operations to potential clients. There are subtle connections between the expressiveness of this mathematical model and the functions computable using the operations provided with the ADT, giving rise to interesting issues involving the two complementary system-theoretic principles of "observability" and "controllability". This paper discusses problems associated with formalizing intuitively-stated observability and controllability principles in accordance with testing for these properties. Although the example we use for illustration is simple, the analysis has implications for the design of reusable software components of every scale and conceptual complexity.
abstraction, controllability, design for reuse, formal specification, full abstraction, model-based specification, observability, reuse, software component
B. W. Weide, W. F. Ogden, T. J. Long, S. H. Edwards and W. D. Heym, "Characterizing Observability and Controllability of Software Components," Software Reuse, International Conference on(ICSR), Orlando, FL, 1996, pp. 62.