Wie sicher ist Open Source?

Software-Entwicklung für das Internet der Dinge

In Deutschland treiben insbesondere führende Unternehmen aus den Bereichen Telekommunikation, Logistik und Fertigung ihre Projekte im Bereich „Internet der Dinge“ voran. Der Softwarequalität fällt dabei für den Projekterfolg eine entscheidende Rolle zu. Wie kann sich Open Source hier beweisen?

Coding

Coding: 2015 ist das Jahr des Internet of Things – über den Erfolg entscheidet dabei nicht zuletzt die Softwarequalität.

2015 wird für Unternehmen mit Projekten im Bereich „Internet der Dinge“ (IoT) ein anstrengendes und lohnendes Jahr. Das IT-Marktforschungshaus Dimension Research veröffentlichte im Januar seinen Bericht zum Stand der IoT-Entwicklung, zu dem über 1.000 Entwickler und Entwicklungsleiter aus IoT-Projekten befragt wurden. Das Ergebnis: 2015 ist das Jahr der IoT-Entwicklung. Die Befragten gaben an, mehr als 75 Prozent der Projekte seien dieses Jahr in der aktiven Entwicklung.

Doch Software-Entwicklung für das Internet der Dinge ist besonders anspruchsvoll: Es gilt, Daten zwischen „Dingen“ und Servern zu bewegen, von mobilen Apps, Desktop-, Datenbank- und Cloud-Anwendungen zu steuern, in ihnen Interaktionstechniken wie Bluetooth, WiFi und andere Standards zu vereinen, sie in Cloud-Dienste zu integrieren und dabei multiple Betriebssysteme zu überbrücken. Noch hinkt die Entwicklung im Bereich IoT in Europa hinterher, doch der Druck wächst. Entwicklerteams müssen der Erwartung ihrer Unternehmen gerecht werden, um zeitnah Ergebnisse zu liefern – doch dabei darf die Qualität nicht leiden.

Dazu benötigen Entwickler Tools, die ihnen helfen, die geforderten Standards einzuhalten und mögliche Fehlerquellen in einem komplexen Netz aus interagierenden Dingen bereits früh zu erkennen und auszuschalten. So lassen sich Features schneller implementieren und die Effizienz und Vorhersagbarkeit der eigenen Entwicklung steigern. Die Methode des Development Testing ist dazu eine Schlüsseltechnologie. Sie nutzt statische Code-Analyse, um kritische Fehlerarten entwicklungsbegleitend zu identifizieren, indem sie dem Entwickler die Relevanz und Auswirkung eines Defekts klar aufzeigt.

Open Source vs. kommerzielle Software

Der übergreifende Ansatz des IoT mit mehreren Sprachen, Betriebssystemen und Standards ist ein traditioneller Vorteil von Open Source. Doch gerade im Internet der Dinge spielen Sicherheitslücken eine bedeutende Rolle – wie kann sich Open Source hier beweisen? Oder sollten Unternehmen für eine effiziente Entwicklung lieber auf kommerzielle Software setzen?

Die drei kritischen Sicherheitsvorfälle Shellshock, OpenSSL Heartbleed und GoToFail bei Open-Source-Code zeigen, dass die Entwickler ihren Code von Anfang an auf Sicherheit ausrichten müssen. Best Practices bei der sicheren Entwicklung von proprietären Anwendungen wie statische Analyse oder regelmäßige Sicherheitsprüfungen lassen sich auf die Open-Source-Welt übertragen. Ob diese nun weniger oder mehr Sicherheit verspricht als kommerzielle Software, ist jedoch eine müßige Frage. Ein Beispiel: Die Owasp-Top-10-Rangliste der zehn schwerwiegendsten Sicherheitsschwachstellen von Webanwendungen genießt unter Sicherheitsexperten einen hohen Stellenwert. Der Coverity-Scan-Service analysierte in 2014 etwa insgesamt 37 Open-Source-Projekte und entdeckte insgesamt 668 Schwachstellen in Java-Anwendungen, die den Owasp Top 10 zugeordnet werden können.

Betrachtet man zudem die Fehlerdichte in den gemessenen Projekten mit Java-Basis, so ergibt sich eine Fehlerdichte pro 1.000 Codezeilen von 2,72 – signifikant höher als eine durchschnittliche Fehlerdichte von 0,64 bei kommerzieller Software mit einer durchschnittlichen Größe von 7,5 Millionen Codezeilen. Ein klarer Sieg für kommerzielle Software in Sachen Sicherheit, oder? So einfach ist es leider nicht.

Zeit und Ärger sparen

Bisher wurden weitaus weniger Projekte mit Java-Basis analysiert als ihre C/C++-Kollegen. Coverity untersuchte 2014 alleine 741 Open-Source-Projekte mit C/C++-Basis und fand heraus, dass die Fehlerdichte von Open Source deutlich unter der von kommerziellem Code liegt: 0,59 gegenüber 0,72 Fehlern pro 1.000 Zeilen Code. Ein Report von Black Duck Software und North Bridge Venture Partners bestätigte zudem, dass Sorgen um die Qualität heute keine Hürde mehr darstellen, wenn es um die Adoption von Open Source in Unternehmen geht.

In der Entwicklung für das Internet der Dinge spielen Faktoren wie Entwicklungszeit oder -methode ebenfalls eine große Rolle – Open Source sollte daher nicht zum Auswahlkriterium werden. Vielmehr sollten Unternehmen sicherstellen, dass Testverfahren bereits während der Entwicklung implementiert sind, um eine effizientere Entwicklung und hohe Softwarequalität sicherzustellen. Dies erspart Unternehmen viel Zeit und Ärger und vor allem auch Kosten – erweist sich doch die Fehlerbeseitigung im Nachhinein als deutlich teurer. Gerade in diesem Jahr, wo es in die „heiße Phase“ der IoT-Entwicklung geht, sollten Unternehmen dies berücksichtigen.

 

„Internet of Things“-Projekte

•    In Europa sind erst 17 Prozent der IoT-Projekte veröffentlicht oder befinden sich in der Pilot- oder Beta-Phase (Nord- und Südamerika = 37 Prozent, APAC = 26 Prozent).
•    Die meisten IoT-Projekte sind für Geschäftszwecke konzipiert, nur 16 Prozent richten sich ausschließlich an den Endkunden.
•    18 Prozent der befragten Unternehmen planen keine IoT-Projekte, da die nötigen Qualifikationen fehlen.
•    71 Prozent der IoT-Daten werden zwischen lokalen Geräten und Remote-Servern bewegt werden.
•    97 Prozent der Projekte werden Daten aus alternativen Quellen wie Sensoren, GPS, Sprache, Blickrichtung und Bewegungen verarbeiten können.

Quelle: Dimensional Research, 2015


Bildquelle: Thinkstock/iStock

©2026Alle Rechte bei MEDIENHAUS Verlag GmbH

Unsere Website verwendet Cookies, um Ihnen den bestmöglichen Service zu bieten. Durch die weitere Nutzung der Seite stimmen Sie der Verwendung zu. Weitere Infos finden Sie in unserer Datenschutzerklärung.

ok