Using VCL as an Aspect-Oriented Approach to Requirements Modelling

  • Nuno Amálio
  • Pierre Kelsen
  • Qin Ma
  • Christian Glodt
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6210)


Software systems are becoming larger and more complex. By tackling the modularisation of crosscutting concerns, aspect orientation draws attention to modularity as a means to address the problems of scalability, complexity and evolution in software systems development. Aspect-oriented modelling (AOM) applies aspect-orientation to the construction of models. Most existing AOM approaches are designed without a formal semantics, and use multi-view partial descriptions of behaviour. This paper presents an AOM approach based on the Visual Contract Language (VCL): a visual language for abstract and precise modelling, designed with a formal semantics, and comprising a novel approach to visual behavioural modelling based on design by contract where behavioural descriptions are total. By applying VCL to a large case study of a car-crash crisis management system, the paper demonstrates how modularity of VCL’s constructs, at different levels of granularity, help to tackle complexity. In particular, it shows how VCL’s package construct and its associated composition mechanisms are key in supporting separation of concerns, coarse-grained problem decomposition and aspect-orientation. The case study’s modelling solution has a clear and well-defined modular structure; the backbone of this structure is a collection of packages encapsulating local solutions to concerns.


modularity separation of concerns aspect-oriented modelling design by contract VCL 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Communications of the ACM 15(12), 1053–1058 (1972)CrossRefGoogle Scholar
  2. 2.
    France, R., Ray, I., Ghosh, S.: Aspect-oriented approach to early design modelling. IEE Proc. Softw. 151(4), 173–185 (2004)CrossRefGoogle Scholar
  3. 3.
    Amálio, N., Kelsen, P., Ma, Q.: Specifying structural properties and their constraints formally, visually and modularly using VCL. In: EMMSAD 2010. LNBIP, vol. 50, Springer, Heidelberg (1977)Google Scholar
  4. 4.
    Amálio, N., Kelsen, P.: VCL, a visual language for modelling software systems formally. In: Jamnik, M. (ed.) Diagrams 2010. LNCS (LNAI), vol. 6170, pp. 282–284. Springer, Heidelberg (2010)Google Scholar
  5. 5.
    Amálio, N., Kelsen, P., Ma, Q.: The visual contract language: abstract modelling of software systems visually, formally and modularly. Technical Report TR-LASSY-10-03, LASSY, Univ. of Luxembourg (2010),
  6. 6.
    Meyer, B.: Applying design by contract. Computer 25(10), 40–51 (1992)CrossRefGoogle Scholar
  7. 7.
    Spivey, J.M.: The Z notation: A reference manual. Prentice-Hall, Englewood Cliffs (1992)Google Scholar
  8. 8.
    Amálio, N., Polack, F., Stepney, S.: An object-oriented structuring for Z based on views. In: Treharne, H., King, S., Henson, M., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 262–278. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Amálio, N.: Generative frameworks for rigorous model-driven development. Ph.D. thesis, Dept. Computer Science, Univ. of York (2007)Google Scholar
  10. 10.
    Amálio, N., Polack, F., Stepney, S.: UML+Z: Augmenting UML with Z. In: Abrias, H., Frappier, M. (eds.) Software Specification Methods. ISTE (2006)Google Scholar
  11. 11.
    Amálio, N., Polack, F., Stepney, S.: Frameworks based on templates for rigorous model-driven development. ENTCS 191, 3–23 (2007)Google Scholar
  12. 12.
    Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis management systems: a case study for aspect-oriented modeling. Transactions on Aspect-Oriented Software Development 7, 1–22 (2010)Google Scholar
  13. 13.
    Larman, C.: Applying UML and patterns. Prentice-Hall, Englewood Cliffs (2002)Google Scholar
  14. 14.
    Amálio, N., Ma, Q., Glodt, C., Kelsen, P.: VCL specification of the car-crash crisis management system. Technical Report TR-LASSY-09-03, LASSY, Univ. of Luxembourg (2009),
  15. 15.
    Sandhu, R.S., Coyne, E.J., Feinstein, H.L., Youman, C.E.: Role-based access control models. Computer 29(2) (1996)Google Scholar
  16. 16.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of reusable object-oriented software. Addison-Wesley, Reading (1994)Google Scholar
  17. 17.
    Larkin, J.H., Simon, H.A.: Why a diagram is (sometimes) worth ten thousand words. Cognitive Sciece 11, 65–99 (1987)CrossRefGoogle Scholar
  18. 18.
    Amálio, N., Stepney, S., Polack, F.: Formal proof from UML models. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 418–433. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  19. 19.
    Wilke Havings, I.N.L.B., Aksit, M.: A graph-based approach to modeling and detecting composition conflicts related to introductions. In: AOSD 2007, pp. 85–95. ACM Press, New York (2007)Google Scholar
  20. 20.
    D’Souza, D., Wills, A.C.: Objects, Components and Frameworks with UML: the Catalysis approach. Addison-Wesley, Reading (1998)Google Scholar
  21. 21.
    Lohmann, M., Sauer, S., Engels, G.: Executable visual contracts. In: IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 63–70 (2005)Google Scholar
  22. 22.
    Engels, G., Lohmann, M., Sauer, S., Heckel, R.: Model-driven monitoring: an application of graph transformation for design by contract. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 336–350. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Heckel, R., Lohmann, M.: Model-driven development of reactive information systems: from graph transformation rules to JML contracts. International Journal on Software Tools for Technology Transfer 9(2), 193–207 (2007)CrossRefGoogle Scholar
  24. 24.
    Ehrig, K., Winkelmann, J.: Model transformation from visual OCL to OCL using graph transformation. ENTCS 152, 23–37 (2006)Google Scholar
  25. 25.
    Fish, A., Flowe, J., Howse, J.: The semantics of augmented constraint diagrams. Journal of Visual Languages and Computing 16, 541–573 (2005)CrossRefGoogle Scholar
  26. 26.
    Howse, J., Schuman, S., Stapleton, G.: Diagrammatic formal specification of a configuration control platform. ENTCS 259, 87–104 (2009)Google Scholar
  27. 27.
    Reddy, R., Ghosh, S., France, R., Straw, G., Bieman, J.M., et al.: Directives for composing aspect-oriented design class models. In: Rashid, A., Aksit, M. (eds.) Transactions on Aspect-Oriented Software Development I. LNCS, vol. 3880, pp. 75–105. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  28. 28.
    Whittle, J., Araújo, J.: Scenario modelling with aspects. IEE Proc. Softw. 151(4), 157–171 (2004)CrossRefGoogle Scholar
  29. 29.
    Kienzle, J., Abed, W.A., Klein, J.: Aspect-oriented multi-view modelling. In: AOSD 2009, IEEE, Los Alamitos (2009)Google Scholar
  30. 30.
    McNeile, A., Simons, N.: Protocol modelling: a modelling approach that supports reusable behavioural abstractions. Software and Systems Modelling 5(1), 91–107 (2006)CrossRefGoogle Scholar
  31. 31.
    McNeile, A., Roubtsova, E.: CSP parallel composition of aspect models. In: AOM 2008, ACM Press, New York (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Nuno Amálio
    • 1
  • Pierre Kelsen
    • 1
  • Qin Ma
    • 1
  • Christian Glodt
    • 1
  1. 1.University of LuxembourgLuxembourg

Personalised recommendations