Effect of Layout and Complexity of Class Diagram on Model Comprehension

클래스다이어그램의 레이아웃과 복잡도가 모델 이해도에 미치는 영향

  • Received : 2010.10.04
  • Accepted : 2011.01.05
  • Published : 2011.02.28

Abstract

As a de facto standard for system modeling, UML diagrams have been widely used in the industry. Of these, the class diagram is useful to visualize the classes and their relationships and thus directly influences the forward and reverse processes of system modeling and development. Many earlier studies have attempted to examine as to what impact the layout and complexity of the class diagram would have on the comprehension of system modeling. However, their findings have been equivocal and it is not easy to understand the effects of diagram layout. Accordingly this research relied on the guidelines of diagram layout suggested in the earlier studies and designed a 2 (layout) x 2 (complexity) factorial design to examine their impact on diagram comprehension. 47 subjects were participated in the experiment where class diagrams were provided differently in their layout and complexity. We found that a good layout was significantly more effective than the bad. Furthermore the results were significantly persistent in the complex group than the simple. However, there was no interaction effect between layout and complexity of the diagram.

UML 다이어그램은 시스템을 모델링 하기 위한 언어로 사실상 표준으로 널리 사용되고 있다. 그 가운데 특히 클래스다이어그램은 시스템을 클래스와 클래스들간 관계로 시각화한 것으로 순공학적, 역공학적 시스템 모델링 및 구현에 직접적인 영향을 미친다. 많은 연구에서 클래스다이어그램의 레이아웃과 복잡성이 시스템 모델링의 이해에 미치는 영향을 설명하고 있다. 하지만 연구 결과가 혼재되어 있어 레이아웃 적용의 효과를 판단하는데 어려움이 따른다. 따라서 본 연구에서는 기존 연구에서 제시된 클래스다이어그램 레이아웃 기준을 토대로 2 (레이아웃) ${\times}$ 2 (복잡성) 실험을 설계, 레이아웃 적용으로 인한 이해도를 측정하였다. 47명의 피험자가 실험에 참여하여 서로 다르게 제시된 레이아웃과 복잡성에 대해 이해하도록 하였다. 그 결과 레이아웃을 적용한 실험 그룹에서 유효한 효과를 나타내었고 뿐만 아니라 복잡성에서도 유효한 결과를 확인할 수 있었다. 하지만 이 둘의 상호작용 측정에 있어서는 유효한 결과를 얻지 못했다.

Keywords

References

  1. V. Rajlich, "Program comprehension as a learning process", IEEE Computer Society, pp.343-350, 2002.
  2. L.C. Briand, "Software documentation: how much is enough?", Published by the IEEE Computer Society, 2003.
  3. S. Tilley and S. Huang, "A qualitative assessment of the efficacy of UML diagrams as a form of graphical documentation in aiding program understanding", ACM, 2003.
  4. L.C. Briand, Y. Labiche, M. Di Penta and H.D. Yan-Bondoc, "An experimental investigation of formality in UML-based development", IEEE Trans. Software Eng., Published by the IEEE Computer Society, pp.833-849, 2005.
  5. I. Reinhartz-Berger and D. Dori, "OPM vs. UML--Experimenting with Comprehension and Construction of Web Application Models", Empirical Software Engineering, Springer, vol.10, No.1, pp.57-80, 2005. https://doi.org/10.1023/B:EMSE.0000048323.40484.e0
  6. M.C. Otero and J.J. Dolado, "An empirical comparison of the dynamic modeling in OML and UML", J. Syst. Software, Elsevier, vol.77, No.2, pp.91-102, 2005. https://doi.org/10.1016/j.jss.2004.11.022
  7. B. Anda, K. Hansen, I. Gullesen and H.K. Thorsen, "Experiences from introducing UML-based development in a large safety-critical project", Empirical Software Engineering, Springer, vol.11, No.4, pp.555-581, 2006. https://doi.org/10.1007/s10664-006-9020-6
  8. L. Kuzniarz, M. Staron and C. Wohlin, "An empirical study on using stereotypes to improve understanding of UML models", Published by the IEEE Computer Society, 2004.
  9. O. Andriyevska, N. Dragan, B. Simoes and J.I. Maletic, "Evaluating UML class diagram layout based on architectural importance", IEEE, 2005.
  10. H.C. Purchase, M. McGill, L. Colpoys and D. Carrington, "Graph drawing aesthetics and the comprehension of UML class diagrams: an empirical study", Australian Computer Society, Inc., 2001.
  11. H.C. Purchase, J.A. Allder and D.A. Carrington, "Graph layout aesthetics in UML diagrams: user preferences", J.Graph Algorithms Appl., vol.6, No.3, pp.255-279, 2002. https://doi.org/10.7155/jgaa.00054
  12. H.C. Purchase, D. Carrington and J.A. Allder, "Empirical evaluation of aesthetics-based graph layout", Empirical Software Engineering, Springer, vol.7, No.3, pp.233-255, 2002. https://doi.org/10.1023/A:1016344215610
  13. M.K. Coleman and D.S. Parker, "Aesthetics-based graph layout for human consumption", Software: Practice and Experience, John Wiley & Sons, vol.26, No.12, pp.1415-1438, 1996. https://doi.org/10.1002/(SICI)1097-024X(199612)26:12<1415::AID-SPE69>3.0.CO;2-P
  14. K. Wong and D. Sun, "On evaluating the layout of UML diagrams for program comprehension", Software Quality Journal, Springer, vol.14, No.3, pp.233-259, 2006. https://doi.org/10.1007/s11219-006-9218-2
  15. F. Ricca, M. Di Penta, M. Torchiano, P. Tonella and M. Ceccato, "How design notations affect the comprehension of Web applications", Journal of Software Maintenance and Evolution: Research and Practice, John Wiley & Sons, vol.19, No.5, pp.339-359, 2007. https://doi.org/10.1002/smr.357
  16. H. Purchase, "Which aesthetic has the greatest effect on human understanding?", Springer, pp.248-261, 1997.
  17. P. Hofman and M. Piasecki, "Automatic improvement of UML diagrams layout", pp.89-98, 2006.
  18. K. Lemon, E.B. Allen, J.C. Carver and G.L. Bradshaw, "An empirical study of the effects of gestalt principles on diagram understandability", IEEE Computer Society, 2007.
  19. H. Eichelberger, "Aesthetics of class diagrams", pp.23-31, 2002.
  20. V.R. Basili, F. Shull and F. Lanubile, "Building knowledge through families of experiments", IEEE Trans. Software Eng., vol.25, No.4, pp.456-473, 1999. https://doi.org/10.1109/32.799939
  21. J. Kabeli and P. Shoval, "Comprehension and quality of analysis specifications--a comparison of FOOM and OPM methodologies", Information and Software Technology, Elsevier, vol.47, No.4, pp.271-290, 2005. https://doi.org/10.1016/j.infsof.2004.08.009
  22. P. Shoval, A. Yampolsky and M. Last, "Class Diagrams and Use Cases-Experimental Examination of the Preferred Order of Modeling", Citeseer, pp.453-472, 2006.
  23. C. Gutwenger, M. Junger, K. Klein, J. Kupke, S. Leipert and P. Mutzel, "A new approach for visualizing UML class diagrams", ACM, pp.179-188, 2003.
  24. F.T. Sheldon and H. Chung, "Measuring the complexity of class diagrams in reverse engineering", Journal of Software Maintenance and Evolution: Research and Practice, John Wiley & Sons, vol.18, No.5, pp.333-350, 2006. https://doi.org/10.1002/smr.336
  25. H. Eichelberger and J.W. von Gudenberg, "UML class diagrams-State of the art in layout techniques", Citeseer, pp.30-34, 2003.
  26. W. Lai, "Layout adjustment and boundary detection for a diagram", Published by the IEEE Computer Society, 2001.
  27. J. Seemann, "Extending the sugiyama algorithm for drawing UML class diagrams: Towards automatic layout of object-oriented software diagrams", Springer, pp.415-424, 1997.
  28. M. Eiglsperger, M. Kaufmann and M. Siebenhaller, "A topology-shape-metrics approach for the automatic layout of UML class diagrams", ACM, pp.189, 2003.
  29. C. Hagen, "Similarity of spatial configurations in interactive layout", pp.67-72, 2005.
  30. S. Yusuf, H. Kagdi and J.I. Maletic, "Assessing the comprehension of UML class diagrams via eye tracking", IEEE Computer Society, 2007.
  31. P. Shoval and I. Frumermann, "OO and EER conceptual schemas: A comparison of user comprehension", J. Database Manage., Idea Group Inc, 701 E. Chocolate Ave, Suite 200, Hershey, PA, 17033-1240, USA, vol.5, No.4, pp.28-48, 1994. https://doi.org/10.4018/jdm.1994100103
  32. M. Peleg and D. Dori, "The model multiplicity problem: experimenting with real-time specification methods", IEEE Trans. Software Eng., vol.26, No.8, pp.742-759, 2000. https://doi.org/10.1109/32.879812
  33. Y.G. Gueheneuc, "TAUPE: towards understanding program comprehension", ACM, 2006.
  34. B.S. Bloom, M.D. Engelhart, E. Frust, N. Hill and D. Krathwohl, "Taxonomy of educational objectives: The classification of educational goals. Cognitive domain", Longman, 1956.