Software Diagnostics Transparency PlatformDie Software Diagnostics Transparency Platform ist ein Werkzeug, welches effizient Softwaresysteme analysiert und visualisiert, um ein besseres Verständnis über komplexe Softwaresysteme zu erhalten.
Software Diagnostics Transparency Platform extrahiert und fusioniert dazu Daten aus den Implementierungen, dem Configuration Management Systemen und Daten über das Systemverhalten zur Laufzeit.
Das Tool agiert als eine Art "Software Tomograph". Die automatisiert generierten "Softwarekarten" bieten grundlegende Einblicke in die Struktur, Dynamik und Entwicklungsprozesse eines Softwaresystems. Sie lassen sich interaktiv konfigurieren und ermöglichen so, präzise Antworten zum Entwicklungszustand des Systems, der abgelaufenen Entwicklungsschritte und zum Systemverhalten zu liefern. Dadurch können die tatsächliche Entwicklungssituation besser erfasst, die Qualität von Systembestandteilen anhand von Metriken bewertet oder problematische Entwicklungssituationen schneller aufgedeckt werden.
Software Diagnostics Transparency Platform liefert so erfassbare, integrative Aussagen auf der Grundlage objektiver Systemdaten und damit Antworten auf viele entwicklungsrelevante Fragen.
Das Werkzeug vereinfacht den Zugang zu komplexen Informationen über IT-Systeme und hilft damit, den Wartungsaufwand besser zu beherrschen, die nicht immer einfache Kommunikation zwischen Management und Entwicklern zu überbrücken sowie die nachhaltige, stabile Entwicklung zu fördern. Mit der Software Diagnostics Transparency Platform steht ein Werkzeug bereit, um die Software-Qualität zu erhöhen, Projektentscheidungen zu beschleunigen, Entwicklungsressourcen besser einzusetzen, Maßnahmen zur Fehlerbehebung zu bewerten sowie den zeitlichen und finanziellen Rahmen der Softwareentwicklung sicherer einzuhalten.
Technologie
- Automatisierte Analyse der Systemimplementierung (z.B. Source Code) durch Extraktion der Software-Strukturdaten und Metriken.
- Automatisierte Analyse des Software Repository durch Extraktion von Informationen über die Evolution des Systems.
- Automatisierte Analyse der Systemdynamik zur Laufzeit durch Extraktion von Trace-Daten.
- Interaktive 2D/3D-Visualisierung in Form von leistungsfähigen, konfigurierbaren Softwarekarten.
Die Software Diagnostics Transparency Platform richtet sich an alle Beteiligten in der Softwareentwicklung, wie Projektmanager, Softwarearchitekten, Software-Ingenieure, Softwareentwickler und Tester. Sie kann als Instrument bei IT-Systemintegratoren oder IT-Beratern eingesetzt werden. Die Software Diagnostics Transparency Platform ist universell für jede Art von Softwaresystem einsetzbar, zum Beispiel für Desktop-Anwendungen, Server-Anwendungen oder eingebettete Systeme.
Die Darstellung in Software-Lagekarten ermöglicht es IT-Managern, Teamleaders und Entwicklern, einen Einblick in den technischen Zustand ihrer Anwendungssysteme zu gewinnen und dadurch proaktiv möglichen Problemsituationen gegenzusteuern.
Darüber hinaus werden Manager in die Lage versetzt, verborgene Potentiale durch effizientere Steuerung der Entwicklungsprojekte zu heben und Investitionen in die Geschäftsanwendungen zu sichern.
Softwarekarten über Entwicklungsvorgänge
- Schaffen eine Kommunikationsbasis aufgrund genauer und objektiver Information über die Systementwicklung.
- Einsatz als "Frühwarnsystem" für Qualitätsprobleme, z.B. verursacht durch zu verstreute Entwicklungsaktivitäten.
- Bewerten der Qualität und Aktivitäten innerhalb von verteilten Entwicklungsteams oder bei Outsourcing.
- Beschleunigtes Einarbeiten neuer Entwickler in komplexe Systembereiche.
Veränderte Dateien des letzten Releases in Bezug auf die gesamte Codebasis. Die Höhen geben die Anzahl der veränderten Codezeilen an. Die Farbe steht für die Anzahl der beteiligten Entwickler.
Softwarekarten über Softwareprüfung
- Aufzeigen der Bereiche der Implementierung, die durch Tests oder Systemläufe tatsächlich abgedeckt werden.
- Prüfung, ob kürzlich modifizierte Codes richtig getestet werden.
Teile des Codes, die nicht durch Tests ausgeführt wurden, werden aufgezeigt.
Softwarekarten über Systemmodifikationen
- Darstellung von Entwicklungsverzögerungen, hervorgerufen durch häufige Veränderungen von Code-Teilen.
- Anzeigen potentiell risikobehafteter Systembereiche aufgrund von Modifikationen an stark verteilter Systemfunktionalität.
- Identifikation unveränderter Systembereiche seit dem letzten Release.
Softwarekarten für neue Mitarbeiter
- Erstellung einer soliden Basis für präzise, visuelle Kommunikation der "implementierten Realität" über den gesamten Entwicklungszeitraum.
- Erhöhung der Produktivität und Qualität aller Mitarbeiter innerhalb der Softwareentwicklung.
Softwarekarten über Qualitäts-Metriken
- Erkennen von arbeitsaufwendigen Code-Elementen mit geringer Qualität.
Softwarekarten über hinzugekaufte Software
- Gewährleistung eines umgehenden Verständnisses der Struktur und Qualität der Implementierung von erworbenen IT-Systemen und Anwendungen.
Softwarekarten über die Software-Architektur
- Hierarchische Visualisierung modularer Systemstrukturen.
- Visualisierung von Abhängigkeiten zwischen Code-Elementen.
- Effektive Ermittlung von monolithischen Code-Elementen.
- Verdeutlichen von riskanten und breit angelegten Schnittstellen von Modulen.
- Genaue Bestimmung von Störungen gegen Software-Architektur-Richtlinien.
Softwarekarten über Entwicklungsaufwände
- Erkennen von Elementen des Codes, die den höchsten Aufwand bei Entwicklung, Tests und Projektmanagement benötigen.
Technische VoraussetzungenUnterstützte Plattformen: Windows XP, Windows Vista, Windows 7, Mac OS X, Linux (32-bit und 64-bit)
Minimale Systemanforderungen: 1 GHz CPU (x86 oder SPARC), 1 GB RAM, 150MB Festplattenkapazität, Grafikkarte mit OpenGL 1.4 Support
Adapter für CMS: Subversion, CVS, Team Foundation Server, Perforce, ClearCase, CSV-Import zum Anbinden weiterer CMS und Metrik-Tools
|
|
|
| In der Code Change Map werden Dateien nach der Größe (Grundfläche), der Veränderungshäufigkeit (Höhe) und der Anzahl der Entwickler (Farbe) unterschieden. Dadurch ist es möglich potenzielle Probleme frühzeitig aufzudecken und unnötige Entwicklungskosten einzusparen.
|
|
| Die Developer Activity Map beurteilt die Qualität mit Code-Metriken. Die Grundfläche stellt die Zahl der Funktionen pro Datei dar, die Höhen geben die Anzahl der veränderten Codezeilen an und die Farbe steht für die Komplexität des Codes. Problematische Situationen im Entwicklungsprozess werden sichtbar.
|
|
| Teile des Codes, die nicht durch Tests ausgeführt wurden, werden aufgezeigt.
|
|
| Die Software Architecture Map analysiert die modularen Strukturen und Aufrufbeziehungen von Softwaresystemen. Die Strukturen werden als verschachtelte Ringe gezeigt und Abhängigkeiten als Pfeile dargestellt. Aufrufende Funktion (grün) und aufgerufene Funktion (rot) werden veranschaulicht.
|
|
| Der Treemap View stellt Entwicklungsaktivitäten dar und lässt etwa Hot-Spots mit hoher Komplexität erkennen.
|
|
| 28 Tage Entwicklungsaktivität beim Code von Software Diagnostics (400kLOC).
|
| Inhouse-Workshop: Qualitätsanalyse Ihres Projekts
Produktblatt (513 KB)
Software Diagnotics Tools (2,3 MB)
Kundenerfolge
|
|

| |