Understand

SciTools Understand, das „Schweizer Taschenmesser“ der Software-Entwickler zur Pflege, Messung und Visualisierung des Quellcodes Ihrer Anwendung

Understand bietet eine einzigartige Lösung für das Verständnis von komplexem oder schlecht dokumentiertem Legacy-Code. Visualisieren Sie die Struktur von komplexem Legacy-Code, führen Sie Auswirkungsanalysen durch und erhalten Sie genaue Messungen Ihrer Anwendung.

Verstehen Sie Ihren Code

SciTools Understand kann direkt über einen Browser aufgerufen werden und bietet einen umfassenden und intuitiven Überblick über Ihre Software. Mit einer breiten Palette von Metriken, anpassbaren Berichten, Diagrammen, Tools zur Abhängigkeitsanalyse und erweiterten Suchfunktionen können Sie sich schnell einen detaillierten Überblick über Ihren Quellcode verschaffen. Darüber hinaus ist SciTools Understand mit seiner flexiblen und umfassenden Programmierschnittstelle der ideale Editor für die Codewartung und ein tiefgreifendes Verständnis…

Code Graphs

Generieren Sie mit Hilfe von Understand eine Reihe von Graphen. Diese können auf der Grundlage graphen-spezifischer Parameter, wie Verschachtelungsebene oder Codeanzeige, oder durch Erweiterung/Reduzierung von Entitäten dynamisch neu generiert werden.

Control Flow
Calls and/or Called By
UML Sequence

Code Metrics

  • Kontextsensitive Metriken, die als Teil der Standard-Projektanalyse erstellt werden
  • Überprüfung von Metriken auf Projektebene oder auf granularer Ebene nach Ordner, Datei oder Funktion
  • Konfigurieren Sie Architekturen, um Metriken für benutzerdefinierte Code-Komponenten/Module anzuzeigen
  • Melden Sie mit CodeCheck definierte Grenzverletzungen von Metriken

Benutzerdefinierte Architekturen

Konfigurieren Sie mit Understand benutzerdefinierte Architekturen, die den Anforderungen der Projektstruktur oder einer anderen Anforderung entsprechen. Die Gruppierungsoptionen können nach Entwicklungsteams, Herkunft des Codes (Code von Drittanbietern, OSS, Bibliothek), Sicherheitsstufe oder anderen Schwerpunkten erfolgen.

  • Erstellen von Diagrammen zur Hervorhebung von Abhängigkeiten zwischen Knoten, einschließlich Aufrufen, Einschlüssen und Verwendungen
  • Anzeigen von Metriken pro Architekturknoten
  • Konfigurieren Sie die CodeCheck-Analyse pro Architekturknoten

CodeCheck

  • Hervorhebung von Codierungs- und Syntaxverstößen
  • Unterstützung bei der Erkennung von Verstößen gegen gängige Codierungsstandards
  • Konfigurieren und Melden von Grenzverletzungen der Metriken
  • Entwicklung benutzerdefinierter Tests, welche benutzerdefinierte Codierungsrichtlinien unterstützen können

Bug Hunter

In Understand ist nun eine statische Analyse für C und C++ verfügbar, die Nulldivisionen, Nullzeiger, Speicherlecks und die Verwendung von nicht initialisierten Werten aufspürt….

Wandering pointer
Memory leak
Stack address leak
Nicht initialisierter Wert

Division durch Null
Dereferenzierung eines Nullzeigers
Undefinierter Aufruf
Virtueller Aufruf

Understand Bug Hunter identifiziert nicht nur genau die Stellen, an denen ein kritischer Verstoß auftreten kann, sondern bietet auch eine detaillierte Schritt-für-Schritt-Analyse des Weges durch den Code, der zu diesem Zustand führt.

Control flow version diff
(Added content in green, deleted in red)

Gegenüberstellung

  • Vergleichen Sie Entitäten innerhalb eines Projekts und zeigen Sie die Unterschiede in einer Diff-Ansicht an.
  • Vergleich von Dateien/Ordnern, Überprüfung von geänderten, hinzugefügten oder entfernten Dateien und Anzeige eines Diffs der geänderten Dateien
  • Vergleichen Sie Quellcode-Revisionen, erzeugen Sie Diff-Ansichten geänderter Elemente oder Diagramme, die die Änderungen zwischen den Revisionen anzeigen

Code-Verständnis dank der KI von Understand.


Understand nutzt das Potenzial der künstlichen Intelligenz, um das Verständnis von Code weiter zu revolutionieren.

Die KI von Understand ermöglicht die automatische Generierung von Entitätsbeschreibungen und liefert so kurze und informative Zusammenfassungen von Klassen, Funktionen und anderen Code-Elementen.

Dieser Ansatz bietet enorme Möglichkeiten für das Verständnis von veraltetem und unzureichend dokumentiertem Code.

Um die Vertraulichkeit Ihrer Anwendungen zu gewährleisten, wird diese Funktion vollständig lokal generiert.