• Technischer Support
  • Kontakt
  • Blog
  • Deutsch
    • English
    • Français
    • Italiano
    • Português
    • Español
    • 简体中文
  • Tools
    • STATISCHE ANALYSE
      • QA-MISRA
        Detaillierte Tiefenanalyse für C/C++-Code
      • Cantata Test Architect
        Software-Architektur: verstehen, definieren und kontrollieren
      • Source-Code-Metriken
        Automatisierte Source-Code-Metriken für C/C++
      • Get a demo
    • Softwaretests
      • Cantata
        Automatisierte Unit- und Integrationstests für C/C++-Code
      • Cantata Team Reporting
        Add-on für die Zusammenarbeit von verteilten Teams
      • AdaTEST 95
        Automatisierte Unit- und Integrationstests für Ada-Code
      • Why Pay for Unit Test Tool?
  • LÖSUNGEN
    • BRANCHEN
      • Automotive
      • Energie
      • Medizintechnik
      • Industrielle Automatisierun
      • Bahntechnik
      • Luft-/Raumfahrttechnik und Verteidigun
      • Geschäftskritische Branchen
      • E
      • E
      • Get a demo
    • SICHERHEITSSTANDARDS
      • ISO 26262
      • IEC 60880
      • IEC 62304
      • IEC 61508
      • EN 50128 / 50657
      • DO-178C
      • MISRA
      • AUTOSAR
      • CERT
      • Why bother to unit test?
  • Akademie
    • Seminare
    • Trainings
    • Webinare
    • Referenten
    • Programm 2022
  • Unternehmen
    • Über uns
    • Management Team
    • Partner
    • Newsletter & Pressemitteilungen
    • Events
    • Karriere
    • Get a demo
  • Ressourcen
  • Porsche
  • Deutsch
    • Englisch
    • Französisch
    • Italienisch
    • Portugiesisch, Portugal
    • Spanisch
    • Vereinfachtes Chinesisch
  • Tools
    • Statische Analyse
      • QA-MISRA
      • Cantata Test Architect
      • Source Code Metriken
    • Softwaretests
      • Cantata Team Reporting
      • Adatest 95
      • Cantata
  • Lösungen
    • Branchen
      • Automotive
      • Energie
      • Medizintechnik
      • Industrielle Automatisierung
      • Bahntechnik
      • Luft-/Raumfahrttechnik & Verteidigung
      • Geschaeftskritische Branchen
    • Sicherheitsstandards
      • IEC 60880
      • IEC 62304
      • IEC 61508
      • ISO 26262
      • EN 50128/50657
      • DO 178
      • MISRA
      • Autosar
      • CERT
  • Akademie
    • SEMINARE
    • TRAININGS
    • WEBINARE
    • REFERENTEN
  • Unternehmen
    • Über Uns
    • Management Team
    • Newsletter & Pressemitteilungen
    • Karriere
    • Events
  • Ressourcen
  • Kontakt
  • Blog
QA Systems > Tools > Adatest 95 > Statische Codemetriken

AdaTEST 95 Statische Codemetriken können als eigenständige Analyse oder integriert in AdaTEST 95 genutzt werden. Das Tool misst hochautomatisiert die Codequalität, die Wartbarkeit und den zu erwartenden Testerfolg.

Mit AdaTEST 95 Statische Analyse wird Vieles einfacher. Zum Beispiel

  • Das Festlegen, wie die geforderten Qualitätsmetriken gemessen werden
  • Die Diagnose und das Testen von Metriken
  • Das Erstellen von Reports und Zertifizierungsnachweise
Play button

Wobei unterstützen mich AdaTEST 95 statische Metriken?

BEIM DEFINIEREN VON CODEMETRIKEN

 

AdaTEST 95 erstellt mehr als 100 statischen Codemetriken. Sowohl in der Ada-95-Syntax (Ada Language Reference Manual) als auch im Metriksatz des Industriestandards. Bei der Auswahl der gewünschten Metriken hilft der Analysen-Wizard und die statischen Analyseregelsätze.

So werden nicht nur die geforderten statischen Codemetriken definiert, sondern auch die Prüfungen der zulässigen Werte für jede Metrik, die in die dynamischen Tests von AdaTEST 95 eingebunden werden sollen.

METRIKEN DIAGNOSTIZIEREN UND DURCHSETZEN

 

Für eine umfangreiche Diagnose werden die Metriken als .CSV-Dateien erstellt und im HTML Result Viewer angezeigt.

Der AdaTEST 95 HTML Ergebnisüberblick zeigt die Prüfhistorie beim Durchsetzen von Werten für statische Metriken zur Trendanalyse.

Das Durchsetzen von statischen Codemetriken funktioniert vollautomatisch. Die Prüfungen sind in AdaTEST 95 Testskripte integriert. Dadurch werden dynamische und statische Tests komplett synchronisiert.

Die statischen Metriken von AdaTEST 95 werden für alle instrumentierten Verfahren, Funktionen, geschützten Sub-Programme/Entries und ausgeführten Tasks erstellt. Und mehr: Metriken für Package-Spezifikationen und Package Bodies sind in einer Textlistendatei verfügbar – zusätzlich zum Verfahren, der Funktion und den Task Bodies.

REPORTS ERSTELLEN

 

Mit AdaTEST 95 erstellen Sie ganz einfach zertifizierungsreife ASCII-Text-Reports, wie sie von den Sicherheitsstandards für die Codeabdeckung gefordert werden.

Diese Reports, wie auch die Nachweise für die Zertifizierung, zeigen auf, ob und inwieweit die Ziele bei den geforderten Abdeckungsmetriken erreicht wurden.

Wie funktioniert AdaTEST 95 statische Analyse?

AdaTEST 95 arbeitet mit einer Kopie des Source Codes. Die statischen Metriken werden sowohl in CSV und für die HTML-Grafikdiagnose, als auch für die zertifizierungsreifen Nachweise in ASCII-Text erfasst.

 

Die statische Analyse kann innerhalb von AdaTEST-95-Tests genutzt werden. So werden Metrikwerte in einer bestimmten Bandbreite geprüft. Gleichzeitig erfolgt eine Analyse von Kontroll- und Datenfluss mit Pfadkennzeichnung und dynamischen Assertions.

Noch einfacher ist die Analyse mit Regelsätzen zur Abdeckung. Diese automatisieren die gesamte Codeinstrumentierung, die Datenreports und die geforderte Metrikprüfung.

Welche Codemetriken unterstützt AdaTEST 95?

AdaTEST 95 erstellt über 100 Metriken in der Ada95-Code-Syntax, wie sie im Ada-95-Referenz-Handbuch Annex P definiert sind.

 

 

 

Statische Metriken sind in drei Gruppen aufgeteilt:

  • gezählte Metriken
  • errechnete Metriken
  • informelle Metriken

Gezählte und errechnete Metriken werden als Fließkommawerte, informelle Metriken als Stringwerte angezeigt.

Zusätzlich zu den Grafen der Ada-95-Syntax werden folgende Industriestandardmetriken unterstützt:

Zusätzlich zu den Grafen der Ada-95-Syntax werden folgende Industriestandardmetriken unterstützt:

  • McCabe’s Cyclomatic Complexity Measure
  • Myers’ extension to McCabe’s measure
  • Essential McCabe
  • Halstead’s Software Science
  • Hansen’s measure of Program Complexity by the Pair

ABORT_STATEMENTS

ACCEPT_STATEMENTS

ACCESS_ATTRIBUTES

ACCESS_DISCRIMINANTS

ACCESS_TO_SUBPROGRAM_TYPES

ADA_CODE_LINES

ALIASED_OBJECT_DECLARATIONS

ALLOCATORS

ASSIGNMENT_STATEMENTS

ASYNCHRONOUS_SELECTS

BINARY_ADDING_OPERATORS

BLANK_LINES

BLOCK_DECLARATIVE_PARTS

BLOCK_STATEMENTS

BODY_STUBS

CASE_ALTERNATIVES

CASE_STATEMENTS

CLASS_WIDE_TYPES

CODE_STATEMENTS

COMMENT_LINES

COMMENTS

COMPILATION_UNITS

CONDITIONAL_ENTRY_CALLS

CONTROLLED_TYPES

DATA_ASSERTIONS

DECLARATIVE_STATEMENTS

DELAY_STATEMENTS

DERIVED_TYPE_DEFINITIONS

DYNAMIC_ASSERTIONS

FILE_CHECKSUM

FOR_LOOPS

GENERAL_ACCESS_TYPES

GENERIC_DECLARATIONS

GENERIC_INSTANTIATIONS

GENERIC_SPECIFICATIONS

GOTO_STATEMENTS

HALSTEAD_DIFFICULTY

HALSTEAD_EST_LEVEL_ABSTRACTION

HALSTEAD_ESTIMATED_ERRORS

HALSTEAD_EXPECTED_LENGTH

HALSTEAD_INTELLIGENCE_CONTENT

HALSTEAD_LANGUAGE_LEVEL

HALSTEAD_LENGTH

HALSTEAD_LEVEL_OF_ABSTRACTION

HALSTEAD_NUM_UNIQUE_OPERANDS

HALSTEAD_NUM_UNIQUE_OPERATORS

HALSTEAD_POTENTIAL_VOLUME

HALSTEAD_PROGRAM_EFFORT

HALSTEAD_PURITY_RATIO

HALSTEAD_TIME_ESTIMATE

HALSTEAD_TOTAL_NUM_OPERANDS

HALSTEAD_TOTAL_NUM_OPERATORS

HALSTEAD_VOCABULARY

HALSTEAD_VOLUME

HANSEN_CYCLOMATIC_NUM

HANSEN_OPERATOR_COUNT

HIGHEST_PRECEDENCE_OPERATORS

IF_STATEMENTS

IGNORE_ON_SWITCHES

INNER_USE_PACKAGE_CLAUSES

LINES_IN_SOURCE_FILE

LOGICAL_OPERATORS

LOOP_STATEMENTS

MAXIMUM_STATEMENT_NESTING

MCCABE

MEMBERSHIP_TESTS

MULTIPLYING_OPERATORS

MYERS_MCCABE_LOWER

MYERS_MCCABE_UPPER

OVERLOAD_COUNT

PACKAGE_BODIES

PACKAGE_SPECIFICATIONS

PARAMETERS

PRAGMAS

PROCEDURE_ENTRY_CALL_STMTS

PROTECTED_ENTRY_BODIES

PROTECTED_OBJECT_DEFINITIONS

PROTECTED_TYPE_DEFINITIONS

RAISE_STATEMENTS

RELATIONAL_OPERATORS

REPRESENTATION_CLAUSES

REQUEUE_STATEMENTS

REQUEUE_WITH_ABORTS

RETURN_STATEMENTS

SELECT_STATEMENTS

SELECTIVE_WAIT_ALTERNATIVES

SELECTIVE_WAITS

SHORT_CIRCUIT_CONTROL_FORMS

SUBPROGRAM_BODIES

SUBPROGRAM_SPECIFICATIONS

SUBUNITS

TAGGED_TYPES

TERMINATES

TEST_CODE_STMTS

TIMED_ENTRY_CALLS

TOTAL_LINES

TOTAL_UNITS_IN_SOURCE_FILE

TYPE_EXTENSIONS

UNARY_ADDING_OPERATORS

UNCHECKED_ACCESSES

UNCHECKED_CONVERSIONS

UNCHECKED_DEALLOCATIONS

UNPROCESSED_BEXES

UNREACHABLE_CODE

USE_PACKAGE_CLAUSES

USE_TYPE_CLAUSES

USER_STRING (user defined)

WHILE_LOOPS

WITH_CLAUSES

XOR_OPERATORS

ZURÜCK ZU ADATEST 95

QA Systems GmbH
Roggenstrasse 11
71334 Waiblingen | Germany

© 2022 QA SYSTEMS GMBH

Die Produktnamen Cantata und QA-MISRA sind eingetragene Marken der QA Systems GmbH.

„MISRA“ und „MISRA C“ sind eingetragene Marken der MISRA Consortium Limited.
QA-MISRA ist ein unabhängiges Werkzeug von QA Systems und steht nicht in Verbindung mit der MISRA Consortium Limited.

Phone: +49 (0)711 138183 -0
Fax: +49 (0)711 138183 -10
E-Mail: [email protected]

  • Imprint
  • Privacy Policy
  • Contact
  • Resources

Newsletter

Get the latest technology news updates, product releases plus tips and tricks:

Anmeldung zum Newsletter
  • Folgen
  • Folgen

Newsletter

Get the latest technology news updates, product releases plus tips and tricks:

Anmeldung zum Newsletter
  • Folgen
  • Folgen

Phone: +49 (0)711 138183 -0
Fax: +49 (0)711 138183 -10
[email protected]

  • Imprint
  • Privacy Policy
  • Contact
  • Resources

QA Systems GmbH
Roggenstrasse 11
71334 Waiblingen Stuttgart | Germany

© 2021 QA SYSTEMS GMBH

Start
Trial
×

Login

Passwort vergessen?

Oder

Konto erstellen

Anmeldung für den Zugriff auf die Premium-Inhalte

Registrieren Sie sich für vollen Zugriff auf unsere umfangreiche Ressourcen-Bibliothek. 

  • This field is for validation purposes and should be left unchanged.

×

Statische Codemetriken

Akademie Anmeldeformular

  • Kontaktdaten des Teilnehmers

  • QA Systems reserviert im jeweiligen Seminarhotel – in der Regel zu Sonderkonditionen – eine begrenzte Zimmeranzahl als Abrufkontingent. Die Reservierung sowie die Abrechnung der Zimmer sind von den Teilnehmern direkt mit dem Hotel abzuwickeln. Wenn Sie die Hotelinformationen erhalten möchten, bitte hier entsprechend markieren:
  • This field is for validation purposes and should be left unchanged.