Softwarové aplikace se dnes mohou jednoduše skládat ze stovek nebo i tisíců komponent a je proto složité porozumět jejich struktuře.
Zobrazení diagramu příliš situaci nepomáhá, jelikož ten většinou obsahuje vizuální šum způsobený velkým množstvím komponent a jejich spojení. To platí zejména pro ploché (nehierarchické) komponentové modely.
Tato práce shrnuje současný stav poznání v oblasti nástrojů a přístupů k vizualizaci komponentových diagramů a ukazuje, proč tato oblast stále obsahuje témata k výzkumu. Následně navrhuje sadu kritérií pro zhodnocení nástrojů pro vizualizaci komponentových diagramů.
Jako odpověď na identifikované potřeby a výzvy představujeme nový přístup k vizualizaci, který zjednodušuje orientaci a navigaci ve složitých diagramech. Ten je mimo jiné užitečný v procesu reverzního inženýrství.
Jedním z klíčových konceptů tohoto přístupu je odstraňování velkého množství spojení z diagramu beze ztráty informace o propojení.
Dalším konceptem je technika zvaná viewport, která je taktéž použitelná v UML diagramech komponent. Tato technika zjednodušuje práci s komplexními diagramy zvýrazňováním detailů důležitých částí diagramu a jejich okolí beze ztráty celkového přehledu.
Část naší práce se také zaměřuje na vizualizaci mimofunkčních charakteristik v komponentových diagramech.
Abychom byli schopni prokázat, že navržené techniky ulehčují práci, implementovali jsme webový nástroj nazvaný CoCAEx. Provedli jsme zhodnocení nástroje formou porovnání časů jednotlivých úkolů v nástroji CoCAEx a jiném, běžně v průmyslu používaném, nástroji. Z této studie vyplývá, že CoCAEx pomáhá urychlit proces reverzního inženýrství.
Annotation in English
Software applications can easily consist of hundreds or thousands of components and it is thus difficult to understand their structure. Diagram visualization does not help much because of visual clutter caused by big amount of elements and connections, especially in the case of flat component models.
This thesis sums up current state of the art tools and approaches in component diagrams visualization and shows why it cannot cope with the challenges brought by diagrams large component systems. After that we propose a set of criteria for the evaluation of tools for component architecture visualization.
As an answer to the identified needs and challenges we present a novel approach which eases the orientation and navigation in complex diagrams. It is among other benefits useful in the reverse engineering process.
One of the key concepts of this approach is removing a large part of connections from the diagram while preserving the information about component interconnections.
Another one is the viewport technique for use in the visualization of UML component diagrams. This technique eases the work with complex diagrams by highlighting details of the important parts of the diagram and their related surroundings without losing the global perspective.
Part of our work also focuses on extra-functional properties visualization in component diagrams.
To be able to prove that proposed technique ease the work with large component diagrams, we implemented them in the web-based tool called CoCAEx. We performed the evaluation where we compared time of tasks in CoCAEx and other commonly used industrial tool. It shows that CoCAEx helps speed-up the reverse-engineering process.
Keywords
rozsáhlé komponentové diagramy, velké grafy, vizualizace komponentových diagramů, vizualizace grafů, visuální šum, interaktivní vizualizace, reverzní inženýrství, zpětné inženýrství, seco
Keywords in English
large component diagrams, large graphs, component diagrams visualization, graph visualization, visual clutter, graph drawing, interactive visualization, reverse- engineering, large graphs visualization, seco, interface clustering
Length of the covering note
110 s.
Language
AN
Annotation
Softwarové aplikace se dnes mohou jednoduše skládat ze stovek nebo i tisíců komponent a je proto složité porozumět jejich struktuře.
Zobrazení diagramu příliš situaci nepomáhá, jelikož ten většinou obsahuje vizuální šum způsobený velkým množstvím komponent a jejich spojení. To platí zejména pro ploché (nehierarchické) komponentové modely.
Tato práce shrnuje současný stav poznání v oblasti nástrojů a přístupů k vizualizaci komponentových diagramů a ukazuje, proč tato oblast stále obsahuje témata k výzkumu. Následně navrhuje sadu kritérií pro zhodnocení nástrojů pro vizualizaci komponentových diagramů.
Jako odpověď na identifikované potřeby a výzvy představujeme nový přístup k vizualizaci, který zjednodušuje orientaci a navigaci ve složitých diagramech. Ten je mimo jiné užitečný v procesu reverzního inženýrství.
Jedním z klíčových konceptů tohoto přístupu je odstraňování velkého množství spojení z diagramu beze ztráty informace o propojení.
Dalším konceptem je technika zvaná viewport, která je taktéž použitelná v UML diagramech komponent. Tato technika zjednodušuje práci s komplexními diagramy zvýrazňováním detailů důležitých částí diagramu a jejich okolí beze ztráty celkového přehledu.
Část naší práce se také zaměřuje na vizualizaci mimofunkčních charakteristik v komponentových diagramech.
Abychom byli schopni prokázat, že navržené techniky ulehčují práci, implementovali jsme webový nástroj nazvaný CoCAEx. Provedli jsme zhodnocení nástroje formou porovnání časů jednotlivých úkolů v nástroji CoCAEx a jiném, běžně v průmyslu používaném, nástroji. Z této studie vyplývá, že CoCAEx pomáhá urychlit proces reverzního inženýrství.
Annotation in English
Software applications can easily consist of hundreds or thousands of components and it is thus difficult to understand their structure. Diagram visualization does not help much because of visual clutter caused by big amount of elements and connections, especially in the case of flat component models.
This thesis sums up current state of the art tools and approaches in component diagrams visualization and shows why it cannot cope with the challenges brought by diagrams large component systems. After that we propose a set of criteria for the evaluation of tools for component architecture visualization.
As an answer to the identified needs and challenges we present a novel approach which eases the orientation and navigation in complex diagrams. It is among other benefits useful in the reverse engineering process.
One of the key concepts of this approach is removing a large part of connections from the diagram while preserving the information about component interconnections.
Another one is the viewport technique for use in the visualization of UML component diagrams. This technique eases the work with complex diagrams by highlighting details of the important parts of the diagram and their related surroundings without losing the global perspective.
Part of our work also focuses on extra-functional properties visualization in component diagrams.
To be able to prove that proposed technique ease the work with large component diagrams, we implemented them in the web-based tool called CoCAEx. We performed the evaluation where we compared time of tasks in CoCAEx and other commonly used industrial tool. It shows that CoCAEx helps speed-up the reverse-engineering process.
Keywords
rozsáhlé komponentové diagramy, velké grafy, vizualizace komponentových diagramů, vizualizace grafů, visuální šum, interaktivní vizualizace, reverzní inženýrství, zpětné inženýrství, seco
Keywords in English
large component diagrams, large graphs, component diagrams visualization, graph visualization, visual clutter, graph drawing, interactive visualization, reverse- engineering, large graphs visualization, seco, interface clustering