Concern-Based Development of Pattern Systems

  • Imed Hammouda
  • Markku Hakala
  • Mika Pussinen
  • Mika Katara
  • Tommi Mikkonen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3527)


The problem of constructing pattern systems is two-fold. First, the individual patterns should be identified and documented. Second, proper methodologies for abstracting the relationships between the patterns should be used. This paper proposes using concern architecture views for building and documenting pattern systems. It further shows how an individual concern can be treated with pattern composition leading to a better alignment between requirements, design, and code. A novel algorithm for pattern composition is therefore presented. As an example, we build and document a pattern system for annotating a specialization interface of the J2EE framework using a prototype tool environment supporting the approach.


Software architecture pattern systems concern architecture views pattern composition 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Buschmann, F., Meunier, R., Rohnert, H., Sommerland, P., Stal, M.: Pattern-Oriented Software Architecture: A System of Patterns. Wiley, Chichester (1996)Google Scholar
  2. 2.
    Filman, R.E., Elrad, T., Clarke, S., Akşit, M. (eds.): Aspect-Oriented Software Development. Addison-Wesley, Reading (2004)Google Scholar
  3. 3.
    Nuseibeh, B.: Crosscutting requirements. In: Proc. AOSD 2004, Lancaster, UK, pp. 3–4 (2004)Google Scholar
  4. 4.
    Rashid, A., Moreira, A., Araujo, J.: Modularisation and composition of aspectual requirements. In: Proc. AOSD 2003, Boston, Massachusetts, pp. 11–20 (2003)Google Scholar
  5. 5.
    Katara, M., Katz, S.: Architectural views of aspects. In: Proc. AOSD 2003, Boston, Massachusetts, pp. 1–10 (2003)Google Scholar
  6. 6.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1994)Google Scholar
  7. 7.
    Hammouda, I., Koskinen, J., Pussinen, M., Katara, M., Mikkonen, T.: Adaptable concern-based framework specialization in UML. In: Proc. ASE 2004, Linz, Austria, pp. 78–87 (2004)Google Scholar
  8. 8.
    Gottlob, G., Schrefl, M., Röck, B.: Extending object-oriented systems with roles. ACM Transactions on Information Systems 14, 268–296 (1996)CrossRefGoogle Scholar
  9. 9.
    Pernici, B.: Objects with roles. In: Proc. OIS 1990, pp. 205–215 (1990)Google Scholar
  10. 10.
    Hakala, M., Hautamäki, J., Koskimies, K., Paakki, J., Viljamaa, A., Viljamaa, J.: Generating application development environments for Java frameworks. In: Proc. CGSE 2001, Erfurt, Germany, pp. 163–176. Springer, Heidelberg (2001)Google Scholar
  11. 11.
    Marinescu, F.: EJB Design Patterns: Advanced Patterns, Processes, and Idioms. Wiley Computer Publishing, Chichester (2002)Google Scholar
  12. 12.
    Peltonen, I., Selonen, P.: An approach and a platform for building UML processing tools. In: Proc. WoDiSEE 2004, Edinburgh, Scotland, pp. 51–57 (2004)Google Scholar
  13. 13.
    Hammouda, I.: Towards tool-support for pattern composition. Technical report, Tampere University of Technology (2004),
  14. 14.
    Hannemann, J., Kiczales, G.: Design pattern implementation in Java and AspectJ. In: Proceedings of OOPSLA 2002, pp. 161–173 (2002)Google Scholar
  15. 15.
    Tarr, P., Ossher, H., Harrison, W., Sutton Jr., S.M.: N degrees of separation: Multi-dimensional separation of concerns. In: Proc. ICSE 1999, pp. 107–119. ACM Press, Los Angeles (1999)Google Scholar
  16. 16.
    Ossher, H., Tarr, P.: Multi-dimensional separation of concerns and the hyperspace approach. In: Proc. Software Architectures and Component Technology. The State of the Art in Software Development. Kluwer, Dordrecht (2000)Google Scholar
  17. 17.
    Baniassad, E., Clarke, S.: Theme: An approach for aspect-oriented analysis and design. In: Proc. ICSE 2004, Edinburgh, Scotland, pp. 158–167 (2004)Google Scholar
  18. 18.
    Clarke, S.: Extending standard UML with model composition semantics. Science of Computer Programming 44, 71–100 (2002)zbMATHCrossRefGoogle Scholar
  19. 19.
    Clarke, S., Harrison, W., Ossher, H., Tarr, P.: Subject-oriented design: towards improved alignment of requirements, design, and code. ACM SIGPLAN Notices 34, 325–339 (1999)CrossRefGoogle Scholar
  20. 20.
    Riehle, D.: Composite design patterns. In: Proc. OOPSLA 1997, pp. 218–228 (1997)Google Scholar
  21. 21.
    Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling stepwise refinement. In: Proc. ICSE 2003, Portland, USA, pp. 187–197 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Imed Hammouda
    • 1
  • Markku Hakala
    • 1
  • Mika Pussinen
    • 1
  • Mika Katara
    • 1
  • Tommi Mikkonen
    • 1
  1. 1.Institute of Software SystemsTampere University of TechnologyTampereFinland

Personalised recommendations