large component diagrams visualization lukas holy dcse, fas, university of west bohemia pilsen, cz
TRANSCRIPT
2
Structure of this presentation• Introduction of software components and problems in
visualization of component-based software
• Proposed techniques for improving diagram visualization
• Tool demonstration
• Summary of contribution
2
44
Software components - briefly
•Clearly defines its interfaces
•UML component diagram
•Can be started independently•Have a black-box nature•They are a subject of third party
composition
5
Options in visualizing component software
• Component model-specific tool/notation▫ Better comprises the model specifics▫ Not well-know visual syntax
• Generic component-aware tool/notation▫ Model independent▫ Probably unable to represent specific features
• UML with profiles▫ Enables to further specify semantics▫ But specific features will probably not be easily accessible
• Plain UML▫ Well-known▫ May not capture all the specifics
5
6
Large component diagrams visualization
•How to handle the complexity of large UML component diagrams?
•Applications can easily consist of hundreds nodes
•Either overview or detailed view
6
9
Presented Ideas & Techniques
• Visual clutter reduction▫Based on removing highly connected components
▫ Interface clustering
▫ Interactive highlighting Details on demand
▫Groups and clusters identification
9
15
Viewport for component diagrams
•Better exploration and understanding •Clustering, proxy elements and detailed view
17
Preliminary validation - Removing nodes with highest degrees
Nuxeo application visualized by AIVA
All 202 components Removed 7 components with highest degrees
17
18
Summary
• Lines reduction, by removing the selected components from the diagram area.
• Symbolic delegates instead of lines.
• Useful in the reverse engineering process
• It helps to create the mental model of shown application
18