Advertisement

UML 1.4 versus UML 2.0 as Languages to Describe Software Architectures

  • Jorge Enrique Pérez-Martínez
  • Almudena Sierra-Alonso
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3047)

Abstract

UML 1.4 is widely accepted as the standard for representing the various software artifacts generated by a development process. For this reason, there have been attempts to use this language to represent the software architecture of systems as well. Unfortunately, these attempts have ended in representations (boxes and lines) already criticized by the software architecture community. Recently, OMG has published a draft that will constitute the future UML 2.0 specification. In this paper we compare the capacities of UML 1.4 and UML 2.0 to describe software architectures. In particular, we study extensions of both UML versions to describe the static view of the C3 architectural style (a simplification of the C2 style). One of the results of this study is the difficulties found when using the UML 2.0 metamodel to describe the concept of connector in a software architecture.

Keywords

Unify Modeling Language Software Architecture Base Class Static View Architectural Style 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abi-Antoun, M., Medvidovic, N.: Enabling the refinement of a software architecture into a design. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 17–31. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  2. 2.
    Bass, L., Clements, P., Kazman, R.: Software architecture in practice. Addison-Wesley, Reading (1998)Google Scholar
  3. 3.
    Björkander, M., Kobryn, C.: Architecting systems with UML 2.0. IEEE Software 20(4), 57–61 (2003)CrossRefGoogle Scholar
  4. 4.
    Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., Stafford, J.: Documenting software architectures, views and beyond. Addison-Wesley, Boston (2003)Google Scholar
  5. 5.
    Egyed, A., Medvidovic, N.: Consistent architectural refinement and evolution using the Unified Modeling Language. In: Proc. of the 1st Workshop on Describing Software Architecture with UML, Toronto, Canada, pp. 83–87 (2001)Google Scholar
  6. 6.
    Garlan, D., Allen, R., Ockerbloom, J.: Exploiting style in architectural design environments. In: Proc. of SIGSOFT 1994: The Second ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 175–188 (1994)Google Scholar
  7. 7.
    Garlan, D., Kompanek, A.J.: Reconciling the needs of architectural description with object-modeling notation. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 498–512. Springer, Heidelberg (2000)Google Scholar
  8. 8.
    Gomaa, H., Wijesekera: The role of UML, OCL and ADLs in software architecture. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar
  9. 9.
    Hilliar, R.: Building blocks for extensibility in the UML. Response to UML 2.0 Request For Information”. Available from OMG as ad/99-12-12 (1999)Google Scholar
  10. 10.
    Hofmeister, C., Nord, R.L., Soni, D.: Describing software architecture with UML. In: Proc. of the First Working IFIP Conf. on Software Architecture, IEEE, San Antonio (1999)Google Scholar
  11. 11.
    IEEE, IEEE Recommended practice for architectural description of softwareintensive systems (2000)Google Scholar
  12. 12.
    Kandé, M.M., Strohmeier, A.: Towards a UML profile for software architecture descriptions. In: Evans, A., Kent, S., Selic, B. (eds.) UML 2000. LNCS, vol. 1939, pp. 513–527. Springer, Heidelberg (2000)Google Scholar
  13. 13.
    Kramler, G. (2003), Overview of UML 2.0 abstract syntax, Available from http://www.big.tuwien.ac.at/staff/kramler/uml/uml2-superstructure-overview.html
  14. 14.
    Lüer, C., Rosenblum, D.S.: UML component diagrams and software architecture-experiences from the WREN project. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar
  15. 15.
    Medvidovic, N.: Architecture-based specification-time software evolution. Doctoral Dissertation. University of California, Irvine (1999)Google Scholar
  16. 16.
    Medvidovic, N., Rosenblum, D.S., Redmiles, D.F., Robbins, J.E.: Modeling software architectures in the unified modeling language. ACM Transactions on Software Engineering and Methodology 11(1), 2–57 (2002)CrossRefGoogle Scholar
  17. 17.
    Mehta, N.R., Medvidovic, N., Phadke, S.: Towards a taxonomy of software connectors. In: Proc. of ICSE 2000, pp. 178–187. ACM, Limerick (2000)CrossRefGoogle Scholar
  18. 18.
    OMG, Unified Modeling Language specification, version 1.4 (2001)Google Scholar
  19. 19.
    OMG (2003a). Unified Modeling Language (UML) Specification: Infrastructure, version 2.0 (ptc/03-09-15), http://www.omg.org/uml
  20. 20.
    OMG (2003b). Unified Modeling Language: Superstructure, version 2.0 (ptc/03-08-02), http://www.omg.org/uml
  21. 21.
    Pérez-Martínez, J.E.: Heavyweight extensions to the UML metamodel to describe the C3 architectural style. ACM SIGSOFT Software Engineering Notes 28(3) (2003)Google Scholar
  22. 22.
    Rausch, A.: Towards a software architecture specification language based on UML and OCL. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar
  23. 23.
    Riva, C., Xu, J., Maccari, A.: Architecting and reverse architecting in UML. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar
  24. 24.
    Rumpe, B., Schoenmakers, M., Radermacher, A., Schürr, A.: UML + ROOM as a standard ADL? In: Proc. of Fifth International Conference on Engineering of Complex Computer System, Las Vegas, Nevada (1999)Google Scholar
  25. 25.
    Selic, B.: On modeling architectural structures with UML. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar
  26. 26.
    Shaw, M.: Procedure calls are the assembly language of software interconnection: Connectors deserve first-class status. Tech. Rep. CMU-CS-94-107, Pittsburgh, PA: Carnegie Mellon University, School of Computer Science and Software Engineering Institute (1994)Google Scholar
  27. 27.
    Shaw, M., DeLine, R., Zelesnik, G.: Abstractions and implementations for architectural connections. In: Proc. of 3rd International Conference on Configurable Distributed Systems, Annapolis, Maryland (1996)Google Scholar
  28. 28.
    Shaw, M., Garlan, D.: Software architecture. Perspectives on an emerging discipline. Prentice-Hall, N.J. (1996)Google Scholar
  29. 29.
    Störrle, H.: Turning UML-subsystems into architectural units. In: Proc. of the Workshop on Describing Software Architecture with UML, ICSE 2001, Toronto, Canada (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Jorge Enrique Pérez-Martínez
    • 1
  • Almudena Sierra-Alonso
    • 2
  1. 1.Departamento de Informática AplicadaUniversidad Politécnica de MadridMadridSpain
  2. 2.Escuela Politécnica SuperiorUniversidad Autónoma de MadridMadridSpain

Personalised recommendations