[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

Composite design patterns

Published: 09 October 1997 Publication History

Abstract

Software design patterns are the core abstractions from successful recurring problem solutions in software design. Composite design patterns are the core abstractions from successful recurring frameworks. A composite design pattern is a pattern that is best described as the composition of further patterns the integration of which shows a synergy that makes the composition more than just the sum of its parts. This paper presents examples of composite patterns, discusses a role-based analysis and composition technique, and demonstrates that composite patterns extend the pattern idea from single problem solutions to object-oriented frameworks.

References

[1]
Mehmet Aksit, Lodewijk Bergmans and Sinan Vural. "An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach." ECOOP '92, Conference Proceedings. Springer-Vedag, 1992.
[2]
Christopher Alexander. A Pattern Language. Oxford University Press, 1979.
[3]
Shigem Chiba and Takashi Masuda. "Designing and Extensible Distributed Language with a Metalevel Architecture." ECOOP '93, Conference Proceedings. LNCS 707. Springer- Verlag, 1993. Page 482-50 i.
[4]
James O. Coplien. "Pattern Languages." C++ Report 9, i (January 1997): 15-21.
[5]
james O. Coplien and Douglas Schmidt (editors). Pattern Languages of Program Design. Addison-Wesley, 1995.
[6]
Richard P. Gabriel. "The Failure of Pattern Languages." Journal of Object-Oriented Programming 5, 9 (February 1994): 84-88.
[7]
Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides. Design Patterns: Elements of Reusable Design. Addison-Wesley, 1995.
[8]
Georg Gottlob, Michael Schrefl, and Brigitte ROck. "Extending Object-Oriented Systems with Roles." ACM Transactions on Information Systems 14, 3 (July 1996): 268-296.
[9]
Richard Helm, Ian M. Holland and Dipayan Gangopadhyay. "Contracts: Specifying Behavioral Compositions in Object-Oriented Systems." OOPSLA '90, Conference Proceedings. ACM Press. Page 169-180.
[10]
Ralph E. Johnson and Brian Foote. "Designing Reusable Classes." Journal of Object-Oriented Programming 1, 2 (June/July 1988): 22-35.
[11]
Ralph E. Johnson and Jeff Oakes. "The User-Defined Product Framework." In preparation.
[12]
Ralph E. Johnson. "Documenting Frameworks using Patterns." OOPSLA '92, ACM SIGPLAN Notices 27, 10 (October 1992): 63-70.
[13]
Ralph E. Johnson and Bobby Woolf. "Type Object." In MRBPZ Chapter 4.
[14]
Gregor Kiczales, J. Michael Ashley, Luis H. Rodriguez Jr., Amin Vahdat and Daniel G. Bobrow. "Metaobject Protocols: Why We Want Them and What Else They Can Do." Object-Oriented Progi'amming:~ The CLOS Perspective. MIT Press, 1993. Page 101-118.
[15]
Bent Bruun Kristensen and Kasper Osterbye. "Roles: Conceptual Abstraction Theory and Practical Language issues." Theory and Practice of Object System 2, 3 (1996): 143-160.
[16]
Glenn E. Krasner and Stephen T. Pope. "A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80." Journal of Object-Oriented Programming 1, 3 (August/September 1988): 26-49.
[17]
Ted Lewis. Object-Oriented Application Frameworks. Manning, I995.
[18]
Jeff McAffer. "Metalevel Programming with CodA." ECOOP '95, Conference Proceedings. Lecture Notes in Computer Science 952. Berlin, Heidelberg: Springer-Vedag. Page 190-214.
[19]
Robert C. Martin, Dirk Riehle, and Frank Buschmann (editors). Pattern Languages of Program Design 3. Addison- Wesley, 1997.
[20]
David L. Parnas and Paul C. Clements. "A Rational Design Process: How and Why to Fake It." IEEE Transactions on Software Engineering, 12, 2 (February 1986): 251-257.
[21]
Frank Buschmarm, Regine Meunier, Hans Rohnert, Peter Sommerlad and Michael Stal. Pattern-Oriented Software Architecture. Wiley & Sons, 1996.
[22]
Trygve Reenskaug, with Per Wold and Odd Arild Lehne. Working with Objects. Manning: 1996.
[23]
Trygve Reenskaug. Personal communication, 1996.
[24]
Dirk Riehle. "Describing and Composing Patterns Using Role Diagrams." WOON '96 (1st Int'l Conference on Object-Orientation in Russia), Conference Proceedings. St. Petersburg Electrotechnical University, 1996. Reprinted in Proceedings of the Ubilab Conference '96, Z~irich. Edited by Kai-Uwe M~tzel and Hans-Peter Frei. Konstanz, Universit~itsvedag Konstanz, 1996. Page 137-152,
[25]
Dirk Riehle. A Role-Based Design Pattern Catalog of Atomic and Composite Patterns Structured by Pattern Purpose. Ubilab Technical Report 97.1.1. Ztirich, Switzerland: Union Bank of Switzerland, 1997.
[26]
Dirk Riehle. "Bureaucracy." In MRB9Z Chapter 11.
[27]
Dirk Riehle and Heinz ZiJllighoven. "'A Pattern Language for Tool Construction and Integration Based on the Tools and Materials Metaphor." In CS95. Chapter 2, page 9-42.
[28]
Dirk Riehle and Heinz Ztillighoven. "Understanding and Using Patterns in Software Development." Theory and Practice of Object Systems 2, 1 (1996). Page 3-13.
[29]
John Vlissides, James O. Coplien and Norm Kerth. Pattern Languages of Program Design 2. Reading, MA: Addison-Wesley, 1996.
[30]
Max Weber. The Theory of Socii~l and Economic Organization. Oxford University Press, 1947.
[31]
Andre Weinand and Erich Gamma. "ET++ A Portable Homogeneous Class Library and Application Framework." In Lew95. Chapter 7, page 154-194. ~
[32]
Roel Wieringa, Wiebrien de Jonge and Paul Spruit. "Using Dynamic Classes and Role Classes to Model Object Migration." Theory and Practice of Object Systems 1, 1 (1995): 61- 83.
[33]
Rebecca Wirfs-Broek, Brian Wilkerson und Lauren Wiener. Designing Object-Oriented Software. Prentice-Hall, 1990.
[34]
Phillip M. Yelland. "Creating Host Compliance in a Portable Framework." OOPSLA '96, Conference Proceedings. ACM Press, 1996. Page 18-29.

Cited By

View all
  • (2022)A Method of Automated Mock Data Generation for RESTful API Testing2022 RIVF International Conference on Computing and Communication Technologies (RIVF)10.1109/RIVF55975.2022.10013835(376-381)Online publication date: 20-Dec-2022
  • (2019)Implementation and Assessment of an Intelligent Motor Tele-Rehabilitation PlatformElectronics10.3390/electronics80100588:1(58)Online publication date: 4-Jan-2019
  • (2019)ePHoRt: Towards a Reference Architecture for Tele-Rehabilitation SystemsIEEE Access10.1109/ACCESS.2019.29274617(97159-97176)Online publication date: 2019
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 32, Issue 10
Oct. 1997
344 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/263700
Issue’s Table of Contents
  • cover image ACM Conferences
    OOPSLA '97: Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
    October 1997
    345 pages
    ISBN:0897919084
    DOI:10.1145/263698
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 October 1997
Published in SIGPLAN Volume 32, Issue 10

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)253
  • Downloads (Last 6 weeks)31
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)A Method of Automated Mock Data Generation for RESTful API Testing2022 RIVF International Conference on Computing and Communication Technologies (RIVF)10.1109/RIVF55975.2022.10013835(376-381)Online publication date: 20-Dec-2022
  • (2019)Implementation and Assessment of an Intelligent Motor Tele-Rehabilitation PlatformElectronics10.3390/electronics80100588:1(58)Online publication date: 4-Jan-2019
  • (2019)ePHoRt: Towards a Reference Architecture for Tele-Rehabilitation SystemsIEEE Access10.1109/ACCESS.2019.29274617(97159-97176)Online publication date: 2019
  • (2016)Survey On Software Design-Pattern Specification LanguagesACM Computing Surveys10.1145/292696649:1(1-35)Online publication date: 29-Jun-2016
  • (2015)LibsensorPyProceedings of the 21st Brazilian Symposium on Multimedia and the Web10.1145/2820426.2820452(225-228)Online publication date: 27-Oct-2015
  • (2013)Towards a pattern language for security risk analysis of web applicationsProceedings of the 20th Conference on Pattern Languages of Programs10.5555/2725669.2725688(1-17)Online publication date: 23-Oct-2013
  • (2011)The Comprehensive Gateway Model for Diverse Environmental Monitoring Upon Wireless Sensor NetworkIEEE Sensors Journal10.1109/JSEN.2010.208838911:5(1293-1303)Online publication date: May-2011
  • (2007)An Approach for Structural Pattern CompositionSoftware Composition10.1007/978-3-540-77351-1_20(252-265)Online publication date: 2007
  • (2004)Precise Modeling of Design Patterns in UMLProceedings of the 26th International Conference on Software Engineering10.5555/998675.999430(252-261)Online publication date: 23-May-2004
  • (2004)An extendable data engine based on OPC specificationComputer Standards & Interfaces10.1016/j.csi.2003.11.00326:6(515-525)Online publication date: Oct-2004
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media