Hier Informationen und Texte zu Beiträgen aus
Computer:Club²-Audio und Computer:Club²-TV


CC2-Audio 422: Softwareentwicklung und ihre Macher

MRT Bild
Die Magnetresonanztomographie misst Veränderungen des Blut-Sauerstoffgehalts im Gehirn, woraus Rückschlüsse auf die Aktivität einzelner Hirnregionen gezogen werden können. Ergebnis: Das Lernen ein. (Quelle: Leibniz Institut)

Um zu untersuchen, was beim Programmieren im Kopf vorgeht, hat ein internationales Team von Passauer, Magdeburger und amerikanischen Wissenschaftlerinnen und Wissenschaftlern Programmierer während ihrer Programmierarbeit in einem Magnetresonanztomographen beobachtet. Magnetresonanztomographie misst Veränderungen des Blut-Sauerstoffgehalts im Gehirn, woraus Rückschlüsse auf die Aktivität einzelner Hirnregionen gezogen werden können. Durch die Zusammenarbeit mit den MRT-Experten des Leibniz Instituts für Neurobiologie ergab sich die Möglichkeit zu dieser für die Informatik neuartigen Studie. Die Ergebnisse zeigen, dass beim Verstehen von Computerprogrammen u.a. dieselben Hirnregionen aktiviert werden, die auch beim Verstehen von natürlicher Sprache beteiligt sind.

 

Die Wissenschaftler haben nun erstmals Belege, dass das Lernen einer Programmiersprache mit dem Lernen einer Fremdsprache eng verwandt ist.  Die Ergebnisse zeigen neue Wege auf, die Ausbildung von Programmiererinnen und Programmierern langfristig zu verbessern.

 

Zudem könnten auf Basis der Ergebnisse Softwarewerkzeuge und Programmiersprachen entwickelt werden, die Programmiererinnen und Programmierern in ihrer natürlichen Arbeitsweise zukünftig mehr entgegen kommen – und sie dadurch effektiver arbeiten lassen: Das Ergebnis könnte zukünftig fehlerfreiere Software sein, bei der weniger Kosten für die Entwicklung und Wartung entstehen. Inzwischen machen die Wartungskosten, u.a. zum Vermeiden und Beheben von Programmfehlern wie dem berühmt- berüchtigten Heartbleed-Fehler, rund 80 Prozent der Kosten des gesamten Software-Lebenszyklus aus.“, so Janet Siegmund.

 

Seit 2006 existiert der sogenannte Coverity Scan Report, mit dem die Qualität von Software bestimmt werden kann. Der Report wurde erstmals 2006 durchgeführt Initiator war das U.S. Department of Homeland Security, dessen Arbeit von 2008 an Coverity fortsetzte. Im Rahmen der Untersuchung werden die Vollständigkeit und Qualität quelloffener und proprietärer Software durchleuchtet. Dafür wird der Source-Code mit speziellen Algorithmen untersucht. Mit dem für Open-Source-Projekte kostenlosen Dienst können Anwender den Status der Projekte verfolgen und sich Einblick in die Softwarequalität verschaffen. Als Maßzahl dienen die entdeckten Fehler pro 1000 Zeilen Programmcode. Eine Fehlerdichte unter 1,0 gilt als Industriestandard für eine hohe Qualität.

 

Basis der neusten Analysen sind mehr als 1500 Softwareprojekte, darunter 700 quelloffene C/C++-, wie NetBSD, FreeBSD, LibreOffice und Linux und eine nicht genannte Zahl an Unternehmensprojekten. Erstmals wurde auch Java-Software durchleuchtet. Coverity spricht hier von etwa 100, wobei die Apache-Projekte Hadoop, HBase, Cassandra, CloudStack sowie die Eclipse-Projekte Hudson und Code Recommenders zu den bekannteren zählen.

 

Die Ergebnisse sind erstaunlich. Der Report gibt eine Fehlerdichte von durchschnittlich 0,59 bei quelloffenen C/C++-Projekten fest, verglichen mit einer durchschnittlichen Fehlerdichte von 0,72 für proprietären Code in Unternehmensprojekten. Nicht nur dass der quelloffene Code im Durchschnitt bessere Werte erhielt, er war offenbar erstmals in allen Kategorien (< 100.000, 100.000 bis 499.999, 500.000 bis eine Million, > eine Million) qualitativ hochwertiger. In der letztjährigen Auflage hieß es noch, dass die Codequalität bei quelloffenen Projekten tendenziell leide, wenn deren Software mehr als eine Million Zeilen Code umfasst. Bei proprietärer Software hingegen würde die Qualität ab so einer Projektgröße prinzipiell besser werden. Linux zum Beispiel weist in seinen ca. 8,8 Millionen Codezeilen eine Fehlerdichte von 0,61 auf. Im vergangenen Report lag die Quote noch bei 1,0. Den Entwicklergemeinden von den vielen Open Source Projekten ist also ein großes Lob auszusprechen und wir werden weiterhin auf Software hinweisen, die uns als Empfehlenswert erscheint.

 

Siehe auch:

http://www.infosun.fim.uni-passau.de/cl/publications/docs/SKA+14.pdf

http://softwareintegrity.coverity.com/register-for-scan-report-2013.html

Zum Computer:Club² Audioarchiv:

http://www.cczwei.de/index.php?id=issuearchive

Zurück

Zum Computer:Club² Audioarchiv:
http://www.cczwei.de/index.php?id=issuearchive