Abstract
Adaptive software is a new kind of generic software which attempts to minimize and localize dependency on the context in which the software will be used. An adaptive program is written in terms of constraints on the customizing context in which the program may be used. The constraints are written so that they only encode necessary dependencies and at the same time they localize information on groups of collaborating classes.
Adaptive software is usually written for a given context in mind and therefore it is important that the adaptive program does not use too much information from the current context. Therefore, we introduce in this paper a dependency metric which measures context dependency between an adaptive program and a customizer. The paper also discusses how constraints on customizing contexts can be written so that information loss is eliminated.
Supported by the National Science Foundation under grant numbers CCR-9102578 (Software Engineering) and CDA-9015692 (Research Instrumentation).
Preview
Unable to display preview. Download preview PDF.
References
Sam Adams. Private communication. WOOD (Workshop on Object-Oriented Design, Snowbird, Utah, March 8–10), March 1993.
Christine Delcourt and Roberto Zicari. The design of an integrity consistency checker (ICC) for an object-oriented database system. In European Conference on Object-Oriented Programming, pages 377–396, Geneva, Switzerland, 1991. Springer Verlag.
Ivar Jacobson. The use case construct in object-oriented software engineering. Technical report, Objective Systems, 1992.
Karl J. Lieberherr, Paul Bergstein, and Ignacio Silva-Lepe. From objects to classes: Algorithms for object-oriented design. Journal of Software Engineering, 6(4):205–228, July 1991.
Karl J. Lieberherr, Walter Hürsch, Ignacio Silva-Lepe, and Cun Xiao. Experience with a graph-based propagation pattern programming tool. In International Workshop on CASE, pages 114–119, Montréal, Canada, 1992. IEEE Computer Society.
Karl J. Lieberherr. Component enhancement: An adaptive reusability mechanism for groups of collaborating classes. In J. van Leeuwen, editor, Information Processing '92, 12th World Computer Congress, pages 179–185, Madrid, Spain, 1992. Elsevier.
Karl J. Lieberherr. The Art of Growing Adaptive Object-Oriented Software. PWS-Kent Publishing Company, 1994.
Karl J. Lieberherr, Ignacio Silva-Lepe, and Cun Xiao. Adaptive objectoriented programming using graph-based customization. Communications of the ACM, 1993. Accepted for publication.
Karl Lieberherr and Cun Xiao. Object-Oriented Software Evolution. IEEE Transactions on Software Engineering, 1993. in print.
Markku Sakkinen. Comments on “the Law of Demeter” and C++. SIGPLAN Notices, 23(12):38–44, December 1988.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lieberherr, K.J., Xiao, C. (1993). Minimizing dependency on class structures with adaptive programs. In: Nishio, S., Yonezawa, A. (eds) Object Technologies for Advanced Software. ISOTAS 1993. Lecture Notes in Computer Science, vol 742. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57342-9_87
Download citation
DOI: https://doi.org/10.1007/3-540-57342-9_87
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57342-5
Online ISBN: 978-3-540-48075-4
eBook Packages: Springer Book Archive