Vision Paper: The Essence of Structural Models

  • Dmitrijs Zaparanuks
  • Matthias Hauswirth
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6981)


Models should represent the essential aspects of a system and leave out the inessential details. In this paper we propose an automatic approach to determine whether a model indeed focuses on the essential aspects. We define a new metric, structural essence, that quantifies the fraction of essential elements in a model. Our approach targets structural models, such as the prevalent UML class diagrams. It is inspired by the idea of algorithmic essence – the amount of repetitive constructs in a program – and the duality between behavior and structure. We present a framework for computing the essence of a structural model based on a transformation of that model into a “distilled model” and on an existing graph algorithm operating on that distilled model. We discuss the meaning of our concept of structural essence based on a set of example models. We hope that our notion of structural essence will spark discussions on the purpose and the essence of models.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Briand, L., Wüst, J.: Empirical studies of quality models in object-oriented systems. Advances in Computers 59, 97–166 (2002)CrossRefGoogle Scholar
  2. 2.
    Brooks Jr, F.P.: The mythical man-month. anniversary ed.. Addison-Wesley Longman Publishing Co., Inc., Boston (1995)Google Scholar
  3. 3.
    Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)CrossRefGoogle Scholar
  4. 4.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston (1995)zbMATHGoogle Scholar
  5. 5.
    Harrison, R., Counsell, S., Nithi, R.: Coupling metrics for object-oriented design. In: Proceedings of the 5th International Symposium on Software Metrics, METRICS 1998, pp. 150–156. IEEE Computer Society, Washington, DC (1998)Google Scholar
  6. 6.
    Murphy, G.C., Notkin, D., Sullivan, K.J.: Software reflexion models: Bridging the gap between design and implementation. IEEE Trans. Softw. Eng. 27, 364–380 (2001)CrossRefGoogle Scholar
  7. 7.
    Tempero, E., Anslow, C., Dietrich, J., Han, T., Li, J., Lumpe, M., Melton, H., Noble, J.: Qualitas corpus: A curated collection of java code for empirical studies. In: 2010 Asia Pacific Software Engineering Conference (APSEC 2010) (December 2010)Google Scholar
  8. 8.
    van Opzeeland, D.J.A., Lange, C.F.J., Chaudron, M.R.V.: Quantitative techniques for the assessment of correspondence between UML designs and implementations. In: Proceedings of the 9th QAOOSE (July 2005)Google Scholar
  9. 9.
    Wüst, J.: SDMetrics: UML software design metrics,
  10. 10.
    Zaparanuks, D., Hauswirth, M.: The beauty and the beast: Separating design from algorithm. In: Mezini, M. (ed.) ECOOP 2011. LNCS, vol. 6813, pp. 27–51. Springer, Heidelberg (2011)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Dmitrijs Zaparanuks
    • 1
  • Matthias Hauswirth
    • 1
  1. 1.University of LuganoSwitzerland

Personalised recommendations