Visualizzazione software - Software visualization

La visualizzazione del software o la visualizzazione del software si riferisce alla visualizzazione delle informazioni di e relative ai sistemi software - l' architettura del suo codice sorgente o le metriche del loro comportamento in fase di esecuzione - e il loro processo di sviluppo per mezzo di 2-D o 3- statici, interattivi o animati D rappresentazioni visive della loro struttura, esecuzione, comportamento ed evoluzione.

Informazioni sul sistema software

La visualizzazione del software utilizza una varietà di informazioni disponibili sui sistemi software. Le categorie di informazioni chiave includono:

Obiettivi

Gli obiettivi della visualizzazione del software sono supportare la comprensione dei sistemi software (cioè, la sua struttura) e degli algoritmi (ad esempio, animando il comportamento degli algoritmi di ordinamento), nonché l'analisi e l'esplorazione dei sistemi software e delle loro anomalie (ad esempio, mostrando classi ad alto accoppiamento ) e il loro sviluppo ed evoluzione. Uno dei punti di forza della visualizzazione del software è combinare e mettere in relazione le informazioni dei sistemi software che non sono intrinsecamente collegati, ad esempio proiettando le modifiche al codice sulle tracce di esecuzione del software.

La visualizzazione del software può essere utilizzata come strumento e tecnica per esplorare e analizzare le informazioni del sistema software, ad esempio per scoprire anomalie simili al processo di estrazione dei dati visivi . Ad esempio, la visualizzazione del software viene utilizzata per monitorare attività come la qualità del codice o l'attività del team. La visualizzazione non è intrinsecamente un metodo per la garanzia della qualità del software . La visualizzazione del software partecipa alla Software Intelligence nel consentire di scoprire e trarre vantaggio dalla padronanza dei componenti interni dei sistemi software.

Tipi

Gli strumenti per la visualizzazione del software potrebbero essere utilizzati per visualizzare il codice sorgente e i difetti di qualità durante le attività di sviluppo e manutenzione del software. Esistono diversi approcci per mappare il codice sorgente a una rappresentazione visiva, ad esempio mediante mappe software. Il loro obiettivo include, ad esempio, la scoperta e la visualizzazione automatiche di difetti di qualità in sistemi e servizi software orientati agli oggetti. Comunemente, visualizzano la relazione diretta di una classe e dei suoi metodi con altre classi nel sistema software e contrassegnano potenziali difetti di qualità. Un ulteriore vantaggio è il supporto per la navigazione visiva attraverso il sistema software.

Per la visualizzazione del software viene utilizzato un software di disegno grafico più o meno specializzato . Un'indagine su piccola scala del 2003 di ricercatori attivi nel campo del reverse engineering e della manutenzione del software ha rilevato che è stata utilizzata un'ampia varietà di strumenti di visualizzazione, inclusi pacchetti di disegno di grafici generici come GraphViz e GraphEd, strumenti UML come Rational Rose e Borland Together e altro ancora strumenti specializzati come Visualization of Compiler Graphs (VCG) e Rigi . La gamma di strumenti UML che possono fungere da visualizzatore per fonte di reverse engineering non è affatto breve; un libro del 2007 ha osservato che oltre ai due strumenti sopra menzionati, anche ESS-Model, BlueJ e Fujaba hanno questa capacità e che Fujaba può anche identificare i modelli di progettazione .

Guarda anche

Programmi
Concetti correlati

Riferimenti

Ulteriore lettura

link esterno

  • SoftVis il simposio ACM sulla visualizzazione del software
  • VISSOFT 2nd IEEE Working Conference on Software Visualization
  • Visualizzatore delle dipendenze del progetto EPDV Eclipse