Qu'est-ce que la visualisation logicielle?

La visualisation des logiciels est l'acte d'utiliser des programmes ou des plug-ins de programmes ou d'environnement de développement intégré (IDE) pendant le développement et le test des applications logicielles; Cela permet la création d'une représentation graphique de certains aspects du logiciel dans le but de déterminer s'il y a des problèmes ou des inefficacités au sein du programme. Il existe un certain nombre de types de techniques de visualisation logicielle, mais ils sont le plus souvent utilisés pour voir des détails sur le code source du programme, pour examiner les relations entre les composants logiciels ou pour regarder une vue abstraite de la façon dont un programme s'exécute, y compris des informations sur la façon dont il interagit avec les processus environnants. En général, la visualisation des logiciels est utilisée sur des systèmes complexes pour aider à découvrir les comportements ordinaires ou l'utilisation des ressources, ou pour voir des domaines d'une conception qui sont inutiles ou défectueux. La représentation visuelle réelle utilisée varie considérablement des blocs de texte interconnectés à deux dimensions (2D) Bar graphiques pour élaborer des objets tridimensionnels (3D) qui modifient la forme en fonction d'un programme.

Dans certains cas, il peut être utile d'utiliser la visualisation logicielle pour examiner le code source d'un programme. Grâce à l'utilisation de la coloration et de l'abstraction, des quantités massives de code écrit peuvent être visualisées immédiatement. L'intention pourrait être de déterminer la quantité de code utilisée dans quel but ou, alternativement, l'affichage pourrait être lié à un profileur ou un débogueur qui met en évidence des blocs de code qui prennent beaucoup de temps à exécuter ou qui sont exécutés fréquemment.

Les langages de programmation orientés objet peuvent utiliser la visualisation logicielle pour déterminer les relations entre les différentes bibliothèques, classes et méthodes d'un programme. Cela aide à déterminer les dépendances entre les différents domaines d'un programme, dont certains pourraient être involontaires. Il peut également montrer des classes ou des méthodes dans un programme qui ne est jamais appelé ouLa logique du programme est inaccessible. Visuellement, une dépendance ou un graphique de relation peut ressembler à un réseau de toiles et de lignes, des sphères qui se chevauchent de tailles différentes, ou même les branches d'un arbre.

Une fois un programme en cours d'exécution, la visualisation logicielle en temps réel peut montrer une représentation abstraite de la façon dont le programme s'exécute, de la façon dont différentes files d'attente sont gérées et de la façon dont les entrées et les sorties circulent. Cela peut aider les développeurs à voir des pointes ou des lacunes dans les performances et les domaines qui reçoivent une activité exceptionnellement élevée. Ces types de visualisations peuvent ressembler à presque n'importe quoi, des blocs colorés et des formes d'onde en mouvement à la modification des cartes topographiques qui représentent les segments de code exécutés. En général, cependant, la visualisation est maintenue assez basique afin que les événements anormaux puissent être clairement vus et observés sans encombrement graphique excessif.

Il existe d'autres applications pour la visualisation des logiciels, dont l'une est l'inverse d'une application. En observant comment un programmeM interagit et fonctionne, différents segments du code peuvent être axés sur sans nécessiter une courbe d'apprentissage initiale abrupte. Une autre utilisation spécifique est dans le domaine de la sécurité informatique pour observer quelles zones d'un programme interagissent avec les processus extérieurs, ou quelles zones sont ouvertes pour attaquer.

DANS D'AUTRES LANGUES