Optimizing Readability for Complex UML Diagrams Generation Master of Science Thesis in Computer Science and Engineering: Algorithms, Logic and Programming Languages

Optimizing Readability for Complex UML Diagrams Generation Master of Science Thesis in Computer Science and Engineering: Algorithms, Logic and Programming Languages

Optimizing readability for complex UML diagrams generation Master of Science Thesis in Computer Science and Engineering: Algorithms, Logic and Programming Languages MYRIAM ECONOMOU ZEYNEP GÖKMEN Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering Göteborg, Sweden, 2015 The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Optimizing readability for complex UML diagrams generation Myriam Economou Zeynep Gökmen © Myriam Economou, 2015. © Zeynep Gökmen, 2015. Examiner: Gerardo Schneider Supervisor: Rogardt Heldal Chalmers University of Technology University of Gothenburg Department of Computer Science and Engineering SE-412 96 Göteborg Sweden Telephone + 46 (0)31-772 1000 Department of Computer Science and Engineering Göteborg, Sweden, 2015 Abstract Information visualization provides a way to convey key notions and concepts in a single image. It is a powerful tool if the visualization product is readable and has the appropriate level of information for the targeted audience. Readability means the ease with which the graphical representation is understood and processed by the viewer. Although several visualization techniques exist, this thesis work focuses on UML diagrams for software architectures’ representation. Tools exist for automatic UML diagram generation from software architecture description but the outputs for complex diagrams are cluttered and unreadable. The aim of this thesis is to provide a solution to generate automatically readable software architecture visualizations for a computer scientist’s audience of all level. It is an effort to make progress in this research field by applying theoretical state-of-the-art research findings to a design study and evaluate how they perform. This work has been conducted for Ericsson (telecommunications Company) with the goal of improving the communication within and between teams as well as keeping their documentation updated in a simple manner. The result of this thesis work is a prototype enabling the users to control several abstraction parameters and control diagram readability depending on the targeted audience. Experimentation and surveys have been conducted to determine the tool’s best settings for the audience targeted during this study. The prototype has been developed in Java and uses PlantUML as its UML diagram visualization engine. 1 Acknowledgements We would like to express our sincere gratitude to our Ericsson supervisor Thorbjörn Larsson and university supervisor Rogardt Heldal for their support during our thesis work. We would also like to thank Chalmers researchers especially Truong Hu Quang for their helpful guidance. Besides them, our sincere thanks go to Fredrik Nilsson and his team at Ericsson Lindholmen, for the friendly working atmosphere they offered during the thesis work. Lastly, we would like to thank our families for their continuous encouragement throughout the thesis. 2 Table of contents Abstract ........................................................................................................................................... 1 Acknowledgements ......................................................................................................................... 2 Table of contents ............................................................................................................................ 3 I. Introduction .................................................................................................................................. 5 1. Context .................................................................................................................................... 5 2. Motivations .............................................................................................................................. 6 3. Aim of the thesis ...................................................................................................................... 7 4. Overview.................................................................................................................................. 7 II. Foundations ................................................................................................................................ 8 1. Software visualization ............................................................................................................. 8 2. UML diagrams ......................................................................................................................... 8 2.1 Class diagrams .................................................................................................................. 8 2.2 Component diagrams ........................................................................................................ 9 3. Layout algorithms .................................................................................................................. 10 3.1 Force-directed layout algorithms ..................................................................................... 10 3.2 Layered (Hierarchical) layout algorithms ........................................................................ 10 4. Aesthetic rules ....................................................................................................................... 11 5. Abstraction strategy .............................................................................................................. 13 6. Audience analysis ................................................................................................................. 13 6.1 Multidimensional audience analysis ................................................................................ 13 6.2 Bottom-up approach ........................................................................................................ 14 III. Related Work ........................................................................................................................... 15 IV. Methods ................................................................................................................................... 16 1. Methodology .......................................................................................................................... 16 2. Subjects ................................................................................................................................. 16 3. Evaluation .............................................................................................................................. 17 3.1 Aesthetic criteria .............................................................................................................. 17 3.2 Audience tests ................................................................................................................. 17 3.3 Surveys ............................................................................................................................ 18 V. Design study ............................................................................................................................. 19 1. Textual UML tools comparison ............................................................................................. 19 3 2. Visibility comparison .............................................................................................................. 20 2.1 Layout algorithm comparison .......................................................................................... 20 2.2 Abstraction strategies ...................................................................................................... 22 3. Audience tests ....................................................................................................................... 34 4. Surveys.................................................................................................................................. 39 5. Validation ............................................................................................................................... 42 5.1 Construct validity ............................................................................................................. 42 5.2 Threats to validity ............................................................................................................ 42 6. Results summary .................................................................................................................. 43 7. Prototype ............................................................................................................................... 44 VI. Further research and projects ................................................................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    90 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us