|
Was wird mit Testwell CMT++ bzw. Testwell CMTJava gemessen?Basierend auf einer statischen Analyse Ihrer Anwendungen gibt Testwell CMT++ bzw. CMTJava eine Einschätzung dafür wie fehlerhaft Ihr Programm wahrscheinlich ist, wieviel Zeit notwendig ist um den Code zu verstehen, was das logische Volumen der Software ist usw.
Da Projektteams in der Regel nicht die Zeit haben 100% der Applikation zu testen, helfen Komplexitätsmesstools fehlerträchtige Module zu lokalisieren, die bei den Softwaretests besondere Berücksichtigung finden sollten.
Testwell CMT++ und Testwell CMTJava helfen Ihnen den Codeumfang und die Codequalität zu messen. Dies ist insbesondere für Firmen interessant, die die Softwareentwicklung bei anderen Unternehmen beauftragen.
Als Auftragnehmer für die Entwicklung von Software können Sie Ihren Kunden die Qualität Ihrer Entwicklung hinsichtlich der Komplexität nachweisen.
Testwell CMT++ und CMTJava zeigen die folgenden Softwaremetriken an:
a) Zeilenmetriken/Lines-of-code (LOC) Metriken
|
| LOCbl
| Anzahl leerer Programmzeilen
|
|
| LOCcom
| Anzahl der Programmierzeilen mit Kommentaren
|
|
| LOCphy
| Gesamtanzahl der Zeilen (number of physical lines)
|
|
| LOCpro
| Anzahl der Zeilen mit Programmcode | weitere Informationen
b) Halstead-Metriken
|
| B
| geschätzte Fehleranzahl (estimated number of errors)
|
|
| D
| Schwierigkeitsgrad, Fehlerträchtigkeit (difficulty level, error proneness)
|
|
| E
| Implementierungsaufwand (effort to implement)
|
|
| L
| Programmniveau, Abstraktionsniveau des Programms (program level, abstraction level of the program)
|
|
| N
| Programmlänge
|
|
| N1
| Gesamtanzahl der Operatoren
|
|
| N2
| Gesamtanzahl der Operanden
|
|
| n
| Vokabulargröße (unterschiedliche Operatoren + unterschiedliche Operanden)
|
|
| n1
| Anzahl unterschiedlicher Operatoren
|
|
| n2
| Anzahl unterschiedlicher Operanden
|
|
| T
| Implementierungszeit / Zeit um einen Programmteil zu verstehen
|
|
| V
| Programmvolumen bzw. Informationsgehalt des Programms bzw. eines Algorithmus | weitere Informationen über Halstead Metriken
c) McCabe Cyclomatic Number v(G)
Die Cyclomatic Number v(G) beschreibt die Komplexität des Steuerflusses einer Anwendung.
weitere Informationen über McCabe Metriken
d) Wartungsaufwand (Maintainability Index)
Der Wartungsaufwand einer Software wird aus verschiedenen Werten der Zeilenmetriken, McCabe- und Halstead-Metriken errechnet.
Der Wartungsindex zeigt Ihnen u.a. an, wann es kostengüstiger bzw. einfacher ist Programmteile neu zu schreiben anstatt bestehenden zu komplexen Code zu modifizieren.
weitere Informationen über den Wartbarkeitsindex
Alarmlimits können an Projektanforderungen angepaßt werdenDie von Testwell CMT++ bzw. Testwell CMTJava vorgegebenen Alarmlimits basieren auf langjährigen Erfahrungen mit Softwareprojekten, deren Qualität und Wartbarkeit als vorbildlich gilt.
Testwell Softwarekomplexitätsmeßtools verwenden weltweit anerkannte Metriken (Industriestandards), die in Forschungsprojekten in den USA erstellt worden sind (Software Engineering Institute of Carnegie Mellon University).
Die "akzeptierbare Codekomplexität" kann allerdings je nach Projekt unterschiedlich sein. Testwell CMT++ und CMTJava erlauben dem Nutzer daher eine Anpassung der Alarmdefinitionen an die jeweiligen Projektanforderungen im Control-Panel des Tools.
Testwell CMT++/CMTJava Highlights :
- analysiert ursprüngliche nicht präprozessierte Dateien und Projekte
- extrem schnelle Analyse: komplette, selbst umfangreiche Projekten werden in wenigen Minuten analysiert
- arbeitet problemlos mit vielen und großen Dateien
- verschiedene Ausgabeformate (Text, XML, HTML, ...)
- Weiterverarbeitung der Metriken in Ihrer Umgebung (z.Bsp. mit Excel)
- GUI-Integration in Visual C++ Developer Studio
- verfügbar für verschiedenen Plattformen: Windows, Linux, HP, Solaris
|
|
Verybench: Grafisches Frontend für Testwell CMT++/CMTJavaVerybench ist ein grafisches Frontend, welches die Metriken der Testwell-Tools in verschiedenen Ausgabeformen präsentiert. Da die am Softwareentwicklungsprozeß beteiligten Nutzer verschiedene Informationen benötigen, liefert Verybench verschiedene Sichten für Management, Entwicklung, Review und "Controlling".
Weitere Informationen: Verybench
|
Weitere InformationenÜbersicht über die letzten CMT++/CMTJava Releases
Präsentation (61 Slides, 1,1 MB)
technische Produktbeschreibung Testwell CMT++ (englisch) (Link auf www.testwell.fi)
technische Produktbeschreibung Testwell CMTJava (englisch) (Link auf www.testwell.fi)
Komplexität und Qualität von Software (738 KB, Artikel aus MSCoder über die Berechnung der einzelnen Metriken)
Softwaremetriken gezielt einsetzen (738 KB, Vortrag von Prof. Dr. Daniel Fischer auf dem ESE Kongress 2009)
last updated: 30 Jan 2012
© 2005-2012 Verifysoft Technology GmbH
CTA++, CTC++, CMT++ and CMTJava are products of Testwell Oy, Tampere (Finland)
Verybench is a product of Verifysoft Technology GmbH
all other trademarks of this site are the property of their respective owners. |