You can edit almost every page by Creating an account. Otherwise, see the FAQ.

TiCS

Aus EverybodyWiki Bios & Wiki
Wechseln zu:Navigation, Suche

TiCS

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Entwickler TIOBE Software B.V.
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Aktuelle Version 2019.4.1[1]
(Dezember 2019)
Betriebssystem plattformunabhängig
Programmiersprache Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Kategorie Entwicklungswerkzeug
Lizenz Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
www.tiobe.com

Das Tiobe Coding Standard Framework (TiCS) ist ein proprietäres, plattformunabhängiges Framework des niederländischen Softwarehauses TIOBE Software B.V. zur statischen Code Analyse von Quelltext, mit dem Ziel einer objektiven, einheitlichen Bewertung von Softwarequalität.[2] Hierbei werden die Ergebnisse unterschiedlicher Testwerkzeuge einzelnen Softwaremetriken zugeordnet und diese zueinander gewichtet. Grundlage der Bewertung sind die im ISO-Standard 25000, hier besonders IS0/IEC 25010, angegebenen Qualitätsfaktoren.[3]

In der Version 8.5 vom Februar 2017 ist die Bewertung von Code in den Sprachen C, C++, C-Sharp, Go, Java, JavaScript, JSP, Matlab, Objective-C, PL/SQL, Python, Scala, Swift, TypeScript, VB.net und XAML möglich. Neben den in TiCS integrierten TIOBE-eigenen Testwerkzeugen sind ca. 50 weitere Testwerkzeuge von über 30 Anbietern in TiCS eingebunden.[4] Nach Angaben des Herstellers werden täglich über 1 Milliarde Zeilen Software mit TiCS bewertet (Stand: 03/2020).[5]

Grundlagen[Bearbeiten]

Qualitätsfaktoren der ISO-Norm[Bearbeiten]

Gemäß ISO/IEC 25010 wird die Qualität einer Software von acht Faktoren bestimmt: [6]

  • Funktionalität – der Grad, zu dem die Funktionen der Software die festgelegten Bedarfe abdeckt.
  • Zuverlässigkeit – der Grad, zu dem die Software spezifische Funktionen unter festgelegten Bedingungen über einen festgelegten Zeitraum liefert.
  • Effizienz – die Performance in Relation zu eingesetzten Ressourcen.
  • Benutzbarkeit – die Verständlichkeit, Erlernbarkeit und Attraktivität für den Nutzer.
  • Sicherheit – der Grad an Schutz der Informationen vor unberechtigtem Zugriff und Zugänglichkeit für berechtigten Zugriff.
  • Kompatibilität – der Grad der Austauschbarkeit von Daten zwischen Systemen oder Komponenten bzw. der Funktionalität mehrerer Systeme in derselben Umgebung.
  • Wartbarkeit – der Grad, zu dem das System leicht und wirksam verändert werden kann
  • Portierbarkeit – die Möglichkeit, das System in andere Hardware-, Software- oder Netzwerkumgebungen zu transferieren.

Obwohl die ISO-Norm Ansatzpunkte zur Beurteilung von Softwarequalität liefert, bietet sie keine Anleitung zur objektiven Messung der Qualitätsattribute. Kriterien wie „Attraktivität“ als Teil der Benutzbarkeit sind per Definition subjektiv und entziehen sich einer allgemeingültigen Messung. Zudem ist selbst bei den Attributen, zu denen eine objektive Messung möglich ist, wie z. B. die Response-Zeit als Teil der Effektivität, aufgrund unterschiedlicher Anforderungen an eine Software nur eine relative Bewertung der Ergebnisse („besser als…“ / „schlechter als…“) und keine absolute Zuordnung („gut“ / „schlecht“) möglich.[7]

Softwaremetriken[Bearbeiten]

TiCS nutzt acht der am häufigsten auf Software angewandten Metriken, um die Ergebnisse von eingesetzten Testwerkzeugen zu bewerten.[8] Die folgende Aufstellung zeigt die gemessenen Metriken und die ISO/ICE 25010 Qualitätsattribute, für die diese Metriken relevant sind. Hier ist zu beachten, dass keine der Metriken Bezug auf die Qualitätsattribute Benutzbarkeit und Portierbarkeit nimmt, die mittels statischer Codeanalyse nicht messbar sind.

Mittels verschiedener mathematischer Algorithmen werden Testergebnisse zu den Metriken in numerische Werte umgewandelt. Diese Werte bilden die Basis für die Berechnung des TIOBE Quality Index (TQI).[9]

TQI[Bearbeiten]

Nach Berechnung der Einzelwerte für die Metriken werden diese in TQI-Werte zwischen 0 und 100 auf Basis empirisch ermittelter Formeln umgerechnet. Grundlage der Formeln ist die tägliche Analyse von über 400 Millionen Programmzeilen aus ca. 1.300 Projekten mit TiCS (Stand 07/2016). Abhängig vom ermittelten TQI-Wert wird dem geprüften System zu jeder Metrik eine Note von „A – Herausragend – TQI-Wert >= 90%“ bis „F – Schlecht – TQI-Wert <40%“ erteilt. Zur Ermittlung einer Gesamtnote werden die ermittelten QI-Werte der Einzelmetriken zueinander gewichtet.[10]

Komponenten[Bearbeiten]

Das TiCS Framework besteht aus drei Komponenten, dem TiCS Analyzer zur sofortigen Anzeige von Verletzungen der Programmierstandards während der Entwicklung, der TiCS Datenbank zur Konsolidierung und Historisierung von neuentwickeltem Quelltext und dem TiCS Viewer zur Anzeige zusammenfassender Informationen zu allen oder einzelnen Projekten. Durch Kombination der Komponenten ist so ein aktueller Informationsstand für die Ebenen Management, Projektleitung und Entwickler mit Drill-Down zu einzelnen Codezeilen möglich.[11]

Empfohlene Qualitätslevel[Bearbeiten]

Es werden vom Hersteller Empfehlungen zur anzustrebenden Gesamtnote abhängig vom Einsatzbereich bzw. von den zu erwartenden Konsequenzen eines schwerwiegenden Systemfehlers abgegeben. TIOBE empfiehlt TQI-Note A für Anwendungen, bei denen ein schwerwiegender Fehler den massiven Verlust von Menschenleben bedeuten kann (z. B. in der Luftfahrt) während für rein administrative Software Note D als ausreichend genannt wird.[12]

Literatur[Bearbeiten]

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]


Diese artikel "TiCS" ist von Wikipedia The list of its authors can be seen in its historical and/or the page Edithistory:TiCS.



Read or create/edit this page in another language[Bearbeiten]