Wat is softwarevisualisatie?
Softwarevisualisatie is het gebruik van programma's of geïntegreerde ontwikkelingsomgeving (IDE) plug-ins tijdens de ontwikkeling en testen van softwaretoepassingen; Dit maakt het mogelijk om een grafische weergave van een bepaald aspect van de software te maken om te bepalen of er problemen of inefficiënties binnen het programma zijn. Er zijn een aantal soorten softwarevisualisatietechnieken, maar ze worden meestal gebruikt om details over programma -broncode te zien, om relaties tussen softwarecomponenten te onderzoeken of om een geabstraheerde weergave te bekijken van hoe een programma wordt uitgevoerd, inclusief informatie over hoe het omgaat met omliggende processen. Over het algemeen wordt softwarevisualisatie gebruikt op complexe systemen om te helpen bij het ontdekken van buitengewone gedrag of het gebruik van hulpbronnen, of om gebieden van een ontwerp te zien die onnodig of defect zijn. De werkelijke visuele weergave die wordt gebruikt, varieert sterk van onderling verbonden tekstblokken tot tweedimensionaal (2D) Bar grafieken om driedimensionale (3D) objecten uit te werken die van vorm veranderen als een programma wordt uitgevoerd.
In sommige gevallen kan het nuttig zijn om softwarevisualisatie te gebruiken om de broncode voor een programma te bekijken. Door het gebruik van kleuren en abstractie kunnen massale hoeveelheden schriftelijke code meteen worden bekeken. De bedoeling zou kunnen zijn om te bepalen hoeveel code wordt gebruikt voor welk doel of, afwisselend, het display kan worden gebonden aan een profiler of debugger die codeblokken benadrukt die lang duren om uit te voeren of die vaak worden uitgevoerd.
Objectgeoriënteerde programmeertalen kunnen softwarevisualisatie gebruiken om relaties tussen de verschillende bibliotheken, klassen en methoden in een programma te bepalen. Dit helpt om afhankelijkheden tussen de verschillende gebieden van een programma te bepalen, waarvan sommige onbedoeld kunnen zijn. Het kan ook klassen of methoden weergeven in een programma die nooit worden opgeroepen of datDe programmalogica maakt onbereikbaar. Visueel kan een afhankelijkheids- of relatiegrafiek eruit zien als een netwerk van webs en lijnen, overlappende bollen van verschillende maten, of zelfs de takken van een boom.
Zodra een programma wordt uitgevoerd, kan realtime softwarevisualisatie een abstracte weergave van hoe het programma wordt uitgevoerd, hoe verschillende wachtrijen worden afgehandeld en hoe invoer en uitvoer stromen. Dit kan ontwikkelaars helpen om spikes of hiaten te zien in prestaties en gebieden die uitzonderlijk hoge activiteiten ontvangen. Dit soort visualisaties kunnen eruit zien als bijna alles, van het verplaatsen van gekleurde blokken en golfvormen tot het veranderen van topografische kaarten die codenegmenten vertegenwoordigen die worden uitgevoerd. Over het algemeen wordt de visualisatie echter redelijk eenvoudig gehouden, zodat abnormale gebeurtenissen duidelijk kunnen worden gezien en waargenomen zonder overmatige grafische rommel.
Er zijn andere applicaties voor softwarevisualisatie, waarvan er één de reverse-engineering van een applicatie is. Door te observeren hoe een prograM is interactie en actief, verschillende segmenten van de code kunnen op gericht zijn zonder een steile initiële leercurve te vereisen. Nog een specifiek gebruik is op het gebied van computerbeveiliging om te observeren welke gebieden van een programma interactie hebben met externe processen, of welke gebieden openstaan voor aanvallen.