Using UML Profiles for Documenting Web-Based Application Frameworks

Abstract

The Web now offers an exceptional infrastructure for the development of distributed collaborative services and applications. However, most of the existing applications only make use of the Web access and visualization facilities, without exploiting its distributed-processing potential capabilities. Web technologies are currently more focused on the provision of semantics to data and the design of dynamic Web pages, while paying little attention to the distributed architecture of the applications – that should go beyond client-server architectures. Application frameworks are one of the key technologies that may provide the mechanisms required for the design and development of reusable and scalable systems in these environments. However, the way to document such frameworks so they can be effectively tailored and reused still remains unresolved. In this paper we propose the use of UML profiles for documenting Web-based application frameworks, as a standard means for expressing their semantics. UML profiles allow all stakeholders of a system to share a common graphical notation and vocabulary, and permit more precise specifications and better documentation on how to use and customize applications. As an example, we build a UML profile for MultiTEL, a framework particularly well suited for the development of Internet-based multimedia and collaborative systems, and show how systems designers can use it to derive and document their applications.

This is a preview of subscription content, access via your institution.

References

  1. Demeyer, S., T.D. Meijler, O. Nierstrasz, and P. Steyaert (1997), “Design Guidelines for ‘Tailorable’ Frameworks, ” Communications of the ACM 40, 10, 0–64.

    Google Scholar 

  2. Fayad, M. E. and D. C. Schmidt (1997), “Object-Oriented Application Frameworks, ” Communications of the ACM 40, 10, 32–38.

    Article  Google Scholar 

  3. Fuentes, L. and J.M. Troya (1999a), “A Java Framework for Web-Based Multimedia and Collaborative Applications, ” IEEE Internet Computing 3, 2, 55–64.

    Article  Google Scholar 

  4. Fuentes, L. and J.M. Troya (1999b), “MultiTel: Multimedia Telecommunication Services Framework, ” In Domain-Specific Application Frameworks: Frameworks Experience in Industry, M. Fayad, D.C. Schmidt, and R. Johnson, Eds., Vol. 3, Wiley, New York.

    Google Scholar 

  5. Gamma, E., R. Helm, R. Johnson, and J. Vlissides (1995), Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, Reading, MA.

    Google Scholar 

  6. Garlan, D., S.-W. Chen, and A.J. Kompanek (2002), “Reconciling the Needs of Architectural Descriptions with Object-Modeling Notations, ” to appear in Science of Computer Programming.

  7. Java Community Process (2001), “UML Profile for EJB, ” Public Draft JSR-000026, available at http://jcp.org/jsr/detil/26.jsp.

  8. Kobryn, C. (2000), “Modeling components and frameworks with UML, ” Communications of the ACM 43, 10, 31–38.

    Article  Google Scholar 

  9. Medvidovic, N. and R.N. Taylor (2000), “A Classification and Comparison Framework for Software Architecture Description Languages, ” IEEE Transactions on Software Engineering 26, 1, 70–93.

    Article  Google Scholar 

  10. Medvidovic, N., D.S. Rosenblum, J.E. Robins, and D.F. Redmiles (2002), “Modeling Software Architectures in the Unified Modeling Language, ” to appear in ACM Transactions on Software Engineering and Methodology.

  11. OMG (1999), “UML Metamodel Specification, ” Object Management Group, OMG Document ad/99–06–08.

  12. OMG (2000), “UML Profile for CORBA Specification V1.0, ” Object Management Group, OMG Document ptc/00–10–01.

  13. OMG (2001a), “Model Driven Architecture. A Technical Perspective, ” Object Management Group, OMG Document ab/2001–01–01.

  14. OMG (2001b), “A UML Profile for Enterprise Distributed Object Computing V1.0, ” Object Management Group, OMG Document ad/2001–08–19.

  15. Sparks, S., K. Benner, and C. Faris (1996), “Managing Object-Oriented Framework Reuse, ” The Computer Journal 39, 9, 52–61.

    Article  Google Scholar 

  16. Steyaert, P., C. Lucas, K. Mens, and K. d'Hondt (1996), “Reuse Contracts: Managing the Evolution of Reusable Assets, ” ACM SIGPLAN Notices 31, 10, 268–285.

    Google Scholar 

  17. Szyperski, C. (1998), Component Software. Beyond Object-Oriented Programming, Addison-Wesley, Reading, MA.

    Google Scholar 

Download references

Author information

Affiliations

Authors

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Fuentes, L., Troya, J.M. & Vallecillo, A. Using UML Profiles for Documenting Web-Based Application Frameworks. Annals of Software Engineering 13, 249–264 (2002). https://doi.org/10.1023/A:1016505712459

Download citation

Keywords

  • Operating System
  • System Designer
  • Scalable System
  • Graphical Notation
  • Potential Capability