Home            Contact us            FAQs
    
      Journal Home      |      Aim & Scope     |     Author(s) Information      |      Editorial Board      |      MSP Download Statistics

     Research Journal of Applied Sciences, Engineering and Technology


An Interactive UML-like Visualization for Large Software Diagrams

1Lukas Holy, 3Ivo Maly, 2, 3Ladislav Cmolik, 2Kamil Jezek and 1Premek Brada
1Department of Computer Science and Engineering
2NTIS-New Technologies for the Information Society, European Centre of Excellence, Faculty of Applied Sciences, University of West Bohemia, Univerzitni 8, Pilsen, 30614, Czech Republic
3Faculty of Electrical Engineering, Czech Technical University in Prague, Technicka 2, Prague, 16627, Czech Republic
Research Journal of Applied Sciences, Engineering and Technology  2015  4:355-371
http://dx.doi.org/10.19026/rjaset.11.1789  |  © The Author(s) 2015
Received: March ‎12, ‎2015  |  Accepted: March ‎24, ‎2015  |  Published: October 05, 2015

Abstract

As current software keeps growing in size and complexity, the means to visualize its structure become insufficient. Noticeably, standard UML diagrams and their implementations in the industrial tools can depict only diagrams of certain level of complexity. When the complexity rises above this level, the diagrams become no longer visually understandable and start to hinder analytical reasoning. This is mostly a problem of diagrams created during automated reverse-engineering processes. In this study we summarize and validate a new approach for software structure visualization which aims at supporting visual presentation of large software systems. It combines a notation derived from the UML component diagram with tool-supported interaction, utilizing features like hiding of unnecessary information that can be revealed on demand to reduce complexity of the diagrams. To validate the approach, we implemented an experimental tool that provides both the notation and interactive features. The main contribution of this study is an evaluation of the approach through a user study. The results of the user evaluation suggest that the proposed notation in combination with the interactive features allows users to gain insight into a visualized application faster in comparison to standard UML as supported by industrial tools.

Keywords:

Complexity, component diagrams, diagram interaction techniques, software visualization, UML, user study,


References

  1. Bures, T., P. Hnetynka and F. Plasil, 2006. SOFA 2.0: Balancing advanced features in a hierarchical component model. Proceeding of the 4th International Conference on Software Engineering Research Management and Applications, pp: 40-48.
    CrossRef    
  2. Byelas, H., E. Bondarev and A. Telea, 2006. Visualization of areas of interest in component-based system architectures. Proceeding of the 32nd EUROMICRO Conference on Software Engineering and Advanced Applications, pp: 160-169.
    CrossRef    
  3. Caserta, P. and O. Zendra, 2011. Visualization of the static aspects of software: A survey. IEEE T. Vis. Comput. Gr., 17(7): 913-933.
    CrossRef    PMid:20733234    
  4. Chen, K. and L. Liu, 2003. A visual framework invites human into the clustering process. Proceeding of 15th International Conference on Scientific and Statistical Database Management, pp: 97-106.
  5. Chiricota, Y., F. Jourdan and G. Melanc, 2003. Software components capture using graph clustering. Proceeding of the 11th IEEE International Workshop on Program Comprehension (IWPC ’03), pp: 217.
  6. CoCAEx Tool, 2014. Retrieved form: http://relisa-dev.kiv.zcu.cz:8083/efpcocaex/. (Accessed on: Sep. 29, 2014).
    Direct Link
  7. CoCoME, 2014. Retrieved form: http://www. cocome.org/. (Accessed on: Sep. 29, 2014).
    Direct Link
  8. CoCoME Implementation in OSGi, 2014. Retrieved form: http://relisa-dev.kiv.zcu.cz/data/experiments/cocome-userstudy/. (Accessed on: Sep. 29, 2014).
    Direct Link
  9. Dumoulin, C. and S. Gerard, 2010. Have multiple views with one single diagram! a layer based approach of UML diagrams. Research Report Inria-00527850, Institut National de Recherche en Informatique et en Automatique, Universite des Sciences et Technologies de Lille (October, 2010).
  10. Eclipse, 2014. Retrieved form: https://www.eclipse.org/. (Accessed on: Sep. 29, 2014).
    Direct Link
  11. Ellis, G. and A. Dix, 2007. A taxonomy of clutter reduction for information visualisation. IEEE T. Vis. Comput. Gr., 13(6): 1216-1223.
    CrossRef    PMid:17968067    
  12. Enterprise Architect, 2014. Retrieved form: http://www.sparxsystems.com.au/ (Accessed on: Sep. 29, 2014).
    Direct Link
  13. Feng, Q., 1997. Algorithms for drawing clustered graphs. Ph.D. Thesis, Department of Computer Science and Software Engineering, University of Newcastle.
  14. Forsell, C., 2010. A guide to scientific evaluation in information visualization. Proceeding of 17th International Conference on Information Visualisation, pp: 162-169.
    CrossRef    
  15. Hachul, S. and M. Jünger, 2007. Large-graph layout algorithms at work: An experimental study. J. Graph Algorithms Appl., 11(21): 345-369.
    CrossRef    
  16. Holt, R., 2002. Software architecture as a shared mental model. Proceeding of 1st ASERC Workshop on Software Architecture.
  17. Holten, D., 2006. Hierarchical edge bundles: Visualization of adjacency relations in hierarchical data. IEEE T. Vis. Comput. Gr., 12(5): 741-748.
    CrossRef    PMid:17080795    
  18. Holten, D. and J.J. Van Wijk, 2009. Force-directed edge bundling for graph visualization. Comput. Graph. Forum, 28(3): 983-990.
    CrossRef    
  19. Holy, L., K. Jezek, J. Snajberk and P. Brada, 2012a. Lowering visual clutter in large component diagrams. Proceeding of International Conference on Information Visualization. IEEE Computer Society, Washington, DC, USA, pp: 36-41.
    CrossRef    
  20. Holy, L., J. Snajberk and P. Brada, 2012b. Lowering visual clutter of clusters in component diagrams. Proceeding of International Conference on Software Engineering Advances, IARIA. Red Hook, NY, USA, pp: 304-307.
  21. Holy, L., J. Snajberk and P. Brada, 2012c. Evaluating component architecture visualization tools-criteria and case study. Proceeding of GRAPP/IVAPP, SciTePress, pp: 737-742.
  22. IBM Rational Software Architect, 2014. Retrieved form: http://www.ibm.com/developerworks/rational/products/rsa/. (Accessed on: Sep. 29, 2014).
    Direct Link
  23. Johnson-Laird, P.N., 1983. Mental models: Towards a Cognitive Science of Language, Inference, and Consciousness. Harvard University Press, Cambridge, MA.
  24. Laidlaw, D.H., J.S. Davidson, T.S. Miller, M. da Silva, R.M. Kirby, W.H. Warren and M. Tarr, 2001. Quantitative comparative evaluation of 2d vector field visualization methods. Proceeding of the Conference on Visualization (VIS ’01). Washington, DC, USA, pp: 143-150.
    CrossRef    
  25. MacKenzie, I.S., 2012. Human-computer Interaction: An Empirical Research Perspective. Elsevier Science, Burlington.
  26. Magicdraw, 2014. Retrieved form: http://www.nomagic.com/ (Accessed on: Sep. 29, 2014).
    Direct Link
  27. Mancoridis, S., B.S. Mitchell, C. Rorres, Y. Chen and E.R. Gansner, 1998. Using automatic clustering to produce high-level system organizations of source code. Proceeding of the 6th International Workshop on Program Comprehension (IWPC ’98). Washington, DC, USA, pp: 45.
    CrossRef    
  28. McGee, F. and J. Dingliana, 2012. Visualising small world graphs-agglomerative clustering of small world graphs around nodes of interest. In: Richard, P., M. Kraus, R.S. Laramee and J. Braz (Eds.), GRAPP & IVAPP, 2012: Proceeding of International Conference on Computer Graphics Theory and Applications and International Conference on Information Visualization Theory and Applications. SciTePress, Rome, Italy, pp: 678-689.
  29. Meyer, J., J. Thomas, S. Diehl, D.A. Keim and B. Fisher, 2010. From visualization to visually enabled reasoning. In: Hagen, H. (Ed.), Scientific Visualization: Advanced Concepts. Vol. 1 of Dagstuhl Follow-Ups, Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany, pp: 227-245.
  30. Moody, D. and J. van Hillegersberg, 2009. Evaluating the visual syntax of UML: An analysis of the cognitive effectiveness of the UML family of diagrams. In: Gasevic, D., R. Lammel, E. Van Wyk (Eds.), SLE, 2008. LNCS 5452, Springer-Verlag, Berlin, Heidelberg, pp: 16-34.
    CrossRef    
  31. Morris, S. and G. Spanoudakis, 2001. UML: An evaluation of the visual syntax of the language. Proceeding of the 34th Annual Hawaii International Conference on System Sciences. Washington, DC, USA, pp: 10.
    CrossRef    PMid:11436763    
  32. Nuxeo, 2014. Retrieved form: http://www.nuxeo.com/ (Accessed on: Sep. 29, 2014).
    Direct Link
  33. Object Management Group, 2009. UML Superstructure Specification (2009).
  34. OpenWMS, 2014. Retrieved form: http://www. openwms.org/ (Accessed on: Sep. 29, 2014).
    Direct Link
  35. OSGi Alliance, 2009. OSGi Service Platform v4.2. Core Specification, OSGi Alliance (2009).
  36. Plugin, 2014. Dependency Visualization. Retrieved form: http://www.eclipse.org/pde/incubator/dependency-visualization/. (Accessed on: Sep. 29, 2014).
    Direct Link
  37. Rafiei, D., 2005. Effectively visualizing large networks through sampling. Proceeding of IEEE Visualization (VIS, 2005), pp: 375-382.
    CrossRef    
  38. Rausch, A., R. Reussner, R. Mirandola and F. Plasil, 2008. The Common Component Modeling Example: Comparing Software Component Models.1st Edn., LNCS 5153, Springer-Verlag, Berlin, Heidelberg, pp: 1-3.
  39. Sensalire, M., P. Ogao and A. Telea, 2009. Evaluation of software visualization tools: Lessons learned. Proceeding of 5th IEEE International Workshop on Visualizing Software for Understanding and Analysis (VISSOFT, 2009), pp: 19-26.
  40. Snajberk, J., L. Holy and P. Brada, 2012. Comav-a component application visualisation tool. Proceeding of International Conference on Information Visualization Theory and Applications, SciTePress.
    PMid:23005751    
  41. Softvision, 2014. Retrieved form: http://www.win.tue.nl/vis1/home/lvoinea/soft/SoftVisionManual.pdf. (Accessed on: Sep. 29, 2014).
    Direct Link
  42. Sun Microsystems, 2006. Enterprise Java Beans (TM). Version 3.0, EJB Core, Sun Microsystems (2006).
  43. Szyperski, C., 2002. Component Software: Beyond Object-oriented Programming. 3rd Edn., Addison-Wesley, ACM Press.
  44. Telea, A. and L. Voinea, 2004. A framework for interactive visualization of component-based software. Proceeding of the 30th EUROMICRO Conference. IEEE Computer Society, Washington, DC, USA, pp: 567-574.
    CrossRef    
  45. Visual Paragigm, 2014. Retrieved form: http://www.visual-paradigm.com. (Accessed on: Sep. 29, 2014).
    Direct Link
  46. Wettel, R. and M. Lanza, 2007. Visualizing software systems as cities. Proceeding of the 4th IEEE International Workshop on Visualizing Software for Understanding and Analysis. Society Press, pp: 92-99.
    CrossRef    

Competing interests

The authors have no competing interests.

Open Access Policy

This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Copyright

The authors have no competing interests.

ISSN (Online):  2040-7467
ISSN (Print):   2040-7459
Submit Manuscript
   Information
   Sales & Services
Home   |  Contact us   |  About us   |  Privacy Policy
Copyright © 2024. MAXWELL Scientific Publication Corp., All rights reserved