Code-Review bescheinigt Python hohe Qualität

Ferdinand Thommes
47 Kommentare

Der Code-Scan-Service der Firma Coverity untersucht regelmäßig den Code von Open-Source-Projekten und kommerzieller Software auf Fehler und vergleicht die Qualität der Produkte. Software mit weniger als einem Fehler pro tausend Zeilen Quellcode gilt als industrieweiter Standard für gute Software-Qualität.

Zum wiederholten Male testete Coverity im Rahmen des Coverity-Scan den Code des Python-Interpreter auf Fehler. Dabei fanden die Experten des Unternehmens, Python habe eine neue Stufe an Qualität bei Open-Source-Projekten erreicht. Dies geht aus dem jetzt veröffentlichten „Spotlight“ hervor. Neben dem jährlichen „Coverity Scan Report“ werden seit letztem Jahr aufgrund gestiegener Nachfrage monatliche Spotlights veröffentlicht, die jeweils nur ein Projekt auswerten.

Die sogenannte Fehlerdichte im jetzigen Scan von Pythons Code beträgt 0,005, dies bedeutet lediglich 0,005 Fehler pro tausend Codezeilen bei einem Umfang von 400.000 untersuchten von insgesamt über 860.000 Zeilen. Der letzte Scan im Jahr 2006 hatte 996 potentielle Probleme in Python gefunden, von denen seither 860 behoben wurden, wobei keiner der verbleibenden Fehler als schwerwiegend gelte.

Der Service von Coverity, der im Jahr 2006 in Zusammenarbeit mit dem U.S. Department of Homeland Security ins Leben gerufen wurde, zielt auf zwei Punkte ab: Er macht Werbung für die Qualität der Werkzeuge des Unternehmens und hilft Entwicklern, Fehler in ihren Projekten zu entdecken und zu beheben. Darüber hinaus wird der gute Ruf von Open-Source, was die Code-Qualität betrifft, weiter gesteigert. Der Coverity-Scan-Report 2012 (PDF), für den insgesamt über 68 Millionen Zeilen Open-Source-Code und 380 Millionen proprietärer Code von 118 Open-Source- und 250 proprietären Software-Projekten untersucht wurden, weist für Open-Source-Projekte insgesamt eine Fehlerdichte von 0,69 aus und bescheinigt Open-Source-Software generell eine mindestens gleich gute und oft höhere Qualität als kommerzieller Software. Proprietäre Software schnitt 2012 fast gleichauf mit einem Wert von 0,68 ab. Der größte zu erkennende Unterschied liegt darin, dass die Fehlerzahl bei freier Software ab einer Million Zeilen Code ansteigt, während proprietärer Code mit zunehmender Zeilenzahl fehlerfreier wird, bis 500.000 Zeilen Code aber mehr Fehler aufweist als freier Code.

Insgesamt wurden mit Coverity-Scans bisher rund 300 Open-Source-Projekte analysiert, darunter der Linux-Kernel, Apache, PHP, Open-LDAP und Samba. Neben C/C++-Code kann seit 2012 auch Java-Code untersucht werden. Entwickler können auf der Webseite von Coverity ihre Projekte zum Test anmelden.