Der Weg zur sicheren Software: Herausforderungen im Software Engineering

18.12.2024
Prof. Dr. Sabine Radomski & Dr. Serda Hauser

In der heutigen digitalen Welt ist Softwareentwicklung der Kern, auf dem technologische Innovationen aufbauen. Doch die Entwicklung sicherer und stabiler Software stellt Entwickler immer wieder vor komplexe Herausforderungen. Jede Phase des Softwareentwicklungsprozesses – von der Voruntersuchung bis zur Wartung – birgt spezifische Risiken und Probleme. In diesem Beitrag werden die verschiedenen Entwicklungsphasen und die damit verbundenen Herausforderungen näher beleuchtet, insbesondere im Kontext neuer Technologien wie Cloud Computing und Big Data.

Der Entwicklungsprozess beginnt mit der Voruntersuchung, die als Ausgangspunkt für alle weiteren Schritte dient. Hier werden Anforderungen erfasst, Stakeholder identifiziert und der Rahmen des Projekts abgesteckt. Ein unklarer oder unvollständiger Anforderungskatalog kann schwerwiegende Folgen für das gesamte Projekt haben und führt oft zu Missverständnissen oder zusätzlichen Anpassungen in späteren Phasen.

Die Analysephase ist entscheidend, um die Anforderungen detailliert zu beschreiben und ein vollständiges Verständnis des Projekts zu gewährleisten. In dieser Phase müssen alle funktionalen und nicht-funktionalen Anforderungen (Qualitätsanforderungen) präzise dokumentiert werden. Eine Herausforderung ist hierbei die Anpassung an ständig wechselnde technologische Trends und Marktanforderungen.

Während der Designphase liegt der Fokus auf der Entwicklung einer stabilen Softwarearchitektur. Eine gut konzipierte Architektur legt den Grundstein für die spätere Implementierung und Wartbarkeit der Software. Der zunehmende Einsatz von Cloud-Technologien erfordert beispielsweise Architekturen, die nicht nur skalierbar, sondern auch widerstandsfähig gegenüber Angriffen sind.

Die Implementierung stellt die praktische Umsetzung der entworfenen Architektur dar. Entwickler müssen sicherstellen, dass sie sauberen und sicheren Code schreiben, der frei von Schwachstellen ist. Die Verwendung moderner Programmiersprachen und Frameworks kann helfen, typische Sicherheitslücken zu vermeiden, stellt jedoch auch neue Anforderungen an die Entwicklerteams. Testen und Qualitätssicherung sind kritische Punkte im Entwicklungsprozess, denn hier zeigt sich, ob die geplanten Funktionen den Anforderungen entsprechen und ob die Software sicher ist. Besonders bei Projekten, die Big Data verarbeiten, sind umfassende Tests erforderlich, um sicherzustellen, dass die Software nicht nur leistungsfähig, sondern auch datenschutzkonform ist.

Die Wartung ist eine Phase, die oft unterschätzt wird. Dabei zeigt sich hier, wie gut die vorherigen Phasen des Entwicklungsprozesses durchgeführt wurden. Software, die nicht regelmäßig aktualisiert und gewartet wird, ist anfällig für Sicherheitslücken und technische Schulden. Ein besonderes Augenmerk sollte auf die Anpassung der Software an neue Anforderungen und Technologien gelegt werden, um langfristig wettbewerbsfähig zu bleiben.

Der Weg zur sicheren Software ist voller Herausforderungen, die fundiertes technisches Wissen, strategische Planung und eine flexible Anpassung an neue Entwicklungen erfordern. Nur ein durchdachter, auf Qualität bedachter Entwicklungsprozess kann gewährleisten, dass die Software den hohen Anforderungen der modernen digitalen Landschaft gerecht wird.

 

Dieser Artikel ist Teil des Buches “Softwarequalität ist wie Schönheit” von Prof. Dr. Sabine Radomski und Dr. Serda Hauser.
In ihrem neuesten Werk werfen die Autorinnen einen skeptischen Blick auf die aktuelle Softwarelandschaft und warnen vor den weitreichenden Folgen minderwertiger Softwarequalität in einer digitalisierten Gesellschaft. Sie betonen die Unzulänglichkeiten vieler Unternehmen und Einzelpersonen im Umgang mit Sicherheitslücken und zeigen auf, wie selbst eine einzige veröffentlichte Schwachstelle das gesamte System gefährden kann. Mit scharfer Kritik an der mangelnden Sensibilisierung für Datenschutzrisiken und der weit verbreiteten Sammlung und Übertragung von Big Data, machen die Autorinnen deutlich, dass die Sicherheit und Qualität von Software von entscheidender Bedeutung ist. Das Buch liefert keine einfachen Lösungen, sondern fordert zum Umdenken und zur dringenden Umkehr in der Software-Nutzung und -Produktion auf. Es zeigt auf, dass die Menschheit nicht nur vor der digitalen Transformation, sondern auch vor einer möglichen Katastrophe in Form eines Qualitätsdesasters steht.

Die Autorinnen:

Profn. Radomski, ist verheiratet und hat zwei Töchter, studierte von 1984 – 1988 Informationsverarbeitung an der Ingenieurhochschule Dresden und promovierte 1995 an der TU Dresden im Informatik Zentrum. Nachdem sie als Systemadministrator in verschiedenen Firmen tätig war wurde sie 2000 Professorin im Fachbereich Nachrichtentechnik der Hochschule für Telekommunikation Leipzig. Ihr Lehrangebot umfasste Verteilte Systeme, Softwareengineering und Software Management. Sie ist BITKOM Experte im AK Cloud Computing und Outsourcing (CCO), AI (Künstliche Intelligenz), IT-Sicherheit sowie Qualitätsmanagement und wurde als Professor des Jahres 2015 von der Zeitschrift Unicum ausgezeichnet. 2024 wurde das Buch „Softwarequalität ist wie Schönheit“ von Sabine Radomski und Serda Hauser im epubli Verlag mit der ISBN 9783759881847 veröffentlicht.
Dr. Serda Hauser ist eine Deutsch-Amerikanerin und arbeitet als Service Delivery Manager bei der Deutschen Telekom Technik GmbH in Ulm. Von 2008 bis 2017 studierte sie Telekommunikationsinformatik im Bachelor of Engineering und Wirtschaftsinformatik im Masterstudiengang an der Hochschule für Telekommunikation in Leipzig (HfTL). 2023 promovierte sie an der Universität Leipzig zum Dr.-Ing. Von 2000 bis 2015 arbeitete sie für die Deutsche Telekom AG als Requirements Engineer, Projektmanagerin und Systemmanagerin. Seitdem ist sie für die Deutsche Telekom Technik AG tätig. Ihr Fachwissen liegt im Bereich Software-Engineering, einschließlich Requirements Engineering (RE). Im Rahmen ihrer Promotion entwickelte sie ein RE-Tool (Product Requirement Infomation Management System (PRIMS)) mit maschinellen Lernmethoden, das sich auf die Qualität spezifischer Anforderungen konzentriert. PRIMS wird demnächst bei T-Systems zur Analyse von IT-Anforderungen eingesetzt.

    Was ist eine der einzigartigen Eigenschaften von Software im Vergleich zu physischen Produkten?

    Welcher technologische Trend stellt besondere Anforderungen an die Softwarearchitektur?

    Wie wird die Ästhetik von Software definiert und was trägt dazu bei, dass Software als „schön“ empfunden wird?

    Was bedeutet das „Whisky-Syndrom“?

    Welche Eigenschaften müssen KI-Systeme haben, damit sie Vertrauen bei Nutzer:innen erwecken?

    Name *

    E-Mail *

    Mit Teilnahme am Gewinnspiel erkläre ich mich mit den Teilnahmebedingungen einverstanden.
    Der Rechtsweg und die Auszahlung des Gewinnes sind ausgeschlossen. Die MitarbeiterInnen des ASQF e. V. sowie sämtliche am Gewinnspiel beteiligten Personen sind von der Teilnahme ausgeschlossen.

     

    0 Kommentare

    Einen Kommentar abschicken

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

    ASQF e.V.