Design composition

Authors

  • Johannes R. Sametinger Johannes Kepler Universität Linz, A-4040 Linz, Austria
  • Rudolf K. Keller Zühlke Engineering AG, CH-8952 Schlieren-Zürich, Switzerland

Keywords:

design component, design constraints, design pattern, software architecture, role model, software reuse

Abstract

Object-oriented software development has proven effective for systems development, but the creation of reusable and changeable software architectures is still a challenging task. Design patterns capture the expertise for reusable design solutions, but there is no methodical approach to providing conceptual design building blocks in tangible and composable form. Design components have been suggested to address this problem. We suggest design composition with design components, role models and role constraints. We claim that design expertise in composable form with explicit design constraints and with explicit documentation has many advantages. It provides alternative views on software systems at a high level of abstraction, and it can help in prohibiting known design flaws as well as design blurring and degradation during subsequent modifications. In this paper, we refine the notion of design components, include role models and constraints, and discuss component types as well as design composition.

Downloads

Download data is not yet available.

References

[1] Richard M. Adler. Emerging standards for component software. IEEE Computer, 28(3):68–77, March 1995.
[2] Ellen Agerbo and Aino Cornils. How to preserve the benefits of Design Patterns. OOPSLA Proceedings, pages 134–143, 1998.
[3] Robert J. Allen. A Formal Approach to Software Architecture. Ph.D. Thesis, CMU-CS-97-144, May 1997.
[4] Don Box, Essential COM. Addison-Wesley. 1998.
[5] Frank Buschmann, et al.. Pattern-Oriented Software Architecture. Wiley & Sons, 1996.
[6] Paul Clements. From subroutines to subsystems: Component-based software development. In Alan W. Brown, Ed., Component-based Software Engineering: Selected Papers from the Software Engineering Institute, pages 3–6. 1996.
[7] Martin Fowler, Kendall Scott. UML Distilled: Applying the Standard Object Modeling Language. AddisonWesley, 1998.
[8] David Garlan, R. Allen, and J. Ockerbloom. Architectural mismatch or why it’s hard to build systems out of existing parts. Proceedings of ICSE 17, pages 179–185, Seattle, WA, April 1995.
[9] Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns. Elements of Reusable Object-oriented Software. Addison-Wesley, 1995.
[10] Gregor Kiczales, et al.. Aspect-Oriented Programming. Proceedings ECOOP'97. Lecture Notes in Computer Science, Vol. 1241. Springer 1997.
[11] Rudolf K. Keller and Reinhard Schauer. Design Components: Towards Software Composition at the Design Level, Proceedings of ICSE 20, pages 302–311, Kyoto, Japan, IEEE, April 1998.
[12] Bent Bruun Kristensen and Kasper Osterbye. Roles: Conceptual Abstraction Theory and Practical Language Issues. Theory and Practice of Object System. Vol. 2, No. 3. pages 143–160. 1996.
[13] Donald E. Knuth. Literate Programming. Stanford University Center for the Study of Languages and Information, Leland Stanford Junior University, 1992.
[14] Anthony Lauder and Stuart Kent. Precise Visual Specification of Design Patterns. Proceedings of ECOOP 98, Springer-Verlag, January, 1998.
[15] Oscar Nierstrasz and Laurent Dami. Componentoriented software technology. In Oscar Nierstrasz and Dennis Tsichritzis, editors, Object-oriented Software Composition, chapter 1, pages 3–28. 1995.
[16] Wolfgang Pree. Design Patterns for Object-Oriented Software Development. Addison-Wesley, 1995.
[17] Trygve Reenskaug. Working with Objects – The OOram Software Engineering Method. Manning Publications, 1996.
[18] Dirk Riehle. Describing and Composing Patterns Using Role Diagrams. WOON ’96: 1st Int’l Conference on Object-Orientation. St. Petersburg Russia, 1996.
[19] Dirk Riehle. Composite Design Patterns. In Proceedings of the 1997 Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA '97). pages 218–228. ACM Press, 1997.
[20] Dirk Riehle, Thomas Gross. Role Model Based Framework Design and Itegration. Proceedings of the Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA '98). ACM Press, pp. 117-133, 1998.
[21] Dirk Riehle. Framework Design: A Role Modeling Approach. Ph.D. Thesis, No. 13509. Zürich, Switzerland, ETH Zürich, 2000. (http://www.riehle.org/diss/index.html)
[22] Linda Rising (ed.). The Patterns Handbook: Techniques, Strategies, and Applications. Cambridge University Press. 1998.
[23] Johannes Sametinger. Software Engineering with Reusable Components. Springer-Verlag. 1997.
[24] Johannes Sametinger. Sample HTML Documentation. http://www.swe.uni-linz.ac.at/research/deco/docu/
[25] Johannes Sametinger, M. Riebisch. Evolution Support by Homogeneously Documenting Patterns, Aspects and Traces. 6th European Conference on Software Maintenance and Reengineering, CSMR 2002, Budapest, Hungary, March 11-13, 2002.
[26] Johannes Sametinger, Rudolf Keller. Compositional Design Reuse. CACIC 2002, VIII Argentinean Conference on Computer Science, Universidad de Buenos Aires, Argentina, October 15-18, 2002.
[27] Johannes Sametinger. Pattern Support for Eclipse. http://www.se.jku.at/people/sametinger/research/pse.html
[28] Sun Microsystems. JavaBeans API Specification. http://java.sun.com/Beans/spec.html.
[29] Sun Microsystems. javadoc home page. http://java.sun.com/products/jdk/javadoc/.
[30] Clemens Szyperski. Component Software: Beyond Object-Oriented Programming. Addison-Wesley 1998.
[31] Jos Warmer and Anneke Kleppe. The Object Constraint Language – Precise Modeling with UML. AddisonWesley, 1999.
[32] XML. Extensible Markup Language. http://www.xml.com

Downloads

Published

2003-04-01

Issue

Section

Original Articles

How to Cite

[1]
“Design composition”, JCS&T, vol. 3, no. 01, pp. p. 27–33, Apr. 2003, Accessed: Jul. 08, 2025. [Online]. Available: https://journal.info.unlp.edu.ar/JCST/article/view/949

Similar Articles

1-10 of 361

You may also start an advanced similarity search for this article.