Zum Inhalt

Software-Fehler erkennen und vermeiden

  • 2024
  • Buch

Über dieses Buch

​Das Lehrbuch befasst sich mit Fehlern in der Software: Wie kann man diese Bugs und Programmfehler erkennen, benennen, erfassen und transparent machen? Ziel ist es, aus Fehlern zu lernen, um sie in der Zukunft zu vermeiden.Neben Grundlagen und der Definition von „Golden Rules“ werden Fehler anhand konkreter Praxisbeispiele aufgezeigt. Das Buch kann als Ergänzung zu Vorlesungen im Themenbereich C/C++ bzw. Einführung in die Informatik genutzt werden. Damit ist das Lehrbuch sowohl für Studierende der Informatik und verwandter Studiengänge geeignet als auch für Berufseinsteiger*innen.

Inhaltsverzeichnis

  1. Frontmatter

  2. Kapitel 1. Entwicklungsumgebungen

    Dieter Duschl
    Zusammenfassung
    In diesem Kapitel wollen wir ganz kurz Entwicklungsumgebungen vorstellen, mit denen die beschriebenen Fehler begangen wurden. Dabei wird durchaus das Ziel verfolgt – bei den üblichen, modernen Entwicklungsumgebungen – Fehler zu reproduzieren. Die folgenden Entwicklungsumgebungen bzw. Sprachen spielen dabei eine Rolle.
  3. Kapitel 2. Hallo Welt

    Dieter Duschl
    Zusammenfassung
    In diesem Kapitel soll für die skizzierten Sprachen das Programm „Hello world“ vorgestellt werden. Es geht dabei um zwei Dinge.
  4. Kapitel 3. International bekannte Software-Fehler

    Dieter Duschl
    Zusammenfassung
    In diesem Kapitel wollen wir uns mit international bekannten Problemen, die durch Software-Fehler hervorgerufen wurden, beschäftigen. Dabei werden die Auswirkungen und die Folgen für Mitarbeiter, Material und weitere Betroffene skizziert. Außerdem werden Hinweise über Software-Fehler und Fehlerdichten beschrieben.
  5. Kapitel 4. Einfache Software-Fehler in der industriellen Praxis

    Dieter Duschl
    Zusammenfassung
    In diesem Kapitel wollen wir drei einfache Probleme der industriellen Praxis vorstellen. Dabei handelt es sich um Speicher-Ausfälle (Festplatten), ungenügende Abfragen auf freie Speicherkapazitäten und ein Y2K-Problem (Y2K-Problem: Software-Probleme, die mit dem Jahreswechsel von 1999 nach 2000 erwartet wurden). All diese Probleme sind tatsächlich aufgetreten.
  6. Kapitel 5. Testen von Software, Fehleridentifikation und Fehlermanagement

    Dieter Duschl
    Zusammenfassung
    In den vorherigen Kapiteln wurde über Fehler in der Software berichtet. Besonders im Abschn. 4.6 Im Therac-25 Problem wurde deutlich, dass definitiv belastbare Tests gefehlt haben; ein Mangel, der Menschenleben kostete. Die Bedeutung von Software-Tests ist mittlerweile so stark gewachsen, dass sich ganze Heerscharen von Autoren mit Test-Management und Test-Philosophien beschäftigen.
  7. Kapitel 6. Umgang mit Fehlern

    Dieter Duschl
    Zusammenfassung
    Bisher müssen wir einsehen, dass Software-Fehler wohl immer vorkommen können. Da sie sich nicht vermeiden lassen und da Software-Fehler Bestandteil der Entwicklung sind, muss man lernen, mit solchen Fehlern zu leben und sie gescheit zu behandeln. In diesem Kapitel werden Beispiele der industriellen Praxis vorgestellt.
  8. Kapitel 7. Nutzung der KI zur Fehlervermeidung

    Dieter Duschl
    Zusammenfassung
    Die Nutzung der KI in der Softwareentwicklung ist ein weites Feld. Und man muss sagen, dass dieses Feld bisher lediglich in den Kinderschuhen steckt. Trotzdem wollen wir uns in diesem Kapitel damit beschäftigen; wohlwissend, dass man hier nur an der Oberfläche kratzt. Wir beginnen mit der menschlichen Intelligenz und versuchen dann die KI zu beleuchten. Abschließend werden KI-Beispiele in der Softwareentwicklung skizziert.
  9. Kapitel 8. Managementprozesse

    Dieter Duschl
    Zusammenfassung
    Die Managementprozesse haben alle Methoden und Vorgehensweisen zur geregelten Durchführung eines Software-Projekts zu beachten. Die hier beschriebenen Modelle sollten vor allem in dem Kontext der Fehlerreduktion gesehen werden. Die Software-Entwicklung sollte „ruhiger“, nachvollziehbarer und planbarer ablaufen. Mit diesen Attributen bestückt, sollte das Resultat der Entwicklung auch deutlich fehlerärmer werden.
  10. Kapitel 9. Best Practices und Golden Rules

    Dieter Duschl
    Zusammenfassung
    In diesem Kapitel wollen wir uns mit generellen Praktiken, die sich in der Softwareentwicklung bewährt haben und mit speziellen Code-Beispielen beschäftigen, die eine Fehlerhäufung verhindern soll. Ohne Beschränkung der Allgemeinheit werden wir uns bei den Code-Beispielen vor allem auf die C-Sprachfamilie beschränken. All diese Hinweise sind Empfehlungen und keine ehernen Gesetze. Sie sind erweiterbar und sie sind veränderbar. In diesem Sinne: alles Irdische ist nicht von stoischer Konstanz; alles unterliegt Veränderungen. Alles gilt nur zu bestimmten Zeiten und an bestimmten Orten. Trotzdem ist es klug, sich mit solchen Empfehlungen und Hinweisen zu beschäftigen.
  11. Kapitel 10. Zusammenfassung und abschießende Bemerkungen

    Dieter Duschl
    Zusammenfassung
    Wir sind damit am Ende des Buches angelangt. Ursprünglich sollte das Buch nur über Software-Fehler berichten. In Abstimmung mit dem Verlag wurden auch Themen, die eine generelle Vermeidung von Software-Fehlern beinhalten, mit in das Buch aufgenommen. Und das ist auch gut so. Es muss allerdings erwähnt werden, dass sich viele solcher Themen in ständiger Veränderung befinden. Das ist nicht unnormal und zeigt lediglich, dass man sich sehr intensiv mit der Verbesserung der Qualität der Software beschäftigt. Dieser Drang nach Qualitätssteigerung ist vor allem der Berechenbarkeit der Kosten der Softwareentwicklung geschuldet. Und das ist in der industriellen Praxis unumgänglich.
  12. Backmatter

Titel
Software-Fehler erkennen und vermeiden
Verfasst von
Dieter Duschl
Copyright-Jahr
2024
Electronic ISBN
978-3-658-44337-5
Print ISBN
978-3-658-44336-8
DOI
https://doi.org/10.1007/978-3-658-44337-5

Informationen zur Barrierefreiheit für dieses Buch folgen in Kürze. Wir arbeiten daran, sie so schnell wie möglich verfügbar zu machen. Vielen Dank für Ihre Geduld.

    Bildnachweise
    AvePoint Deutschland GmbH/© AvePoint Deutschland GmbH, ams.solutions GmbH/© ams.solutions GmbH, Wildix/© Wildix, arvato Systems GmbH/© arvato Systems GmbH, Ninox Software GmbH/© Ninox Software GmbH, Nagarro GmbH/© Nagarro GmbH, GWS mbH/© GWS mbH, CELONIS Labs GmbH, USU GmbH/© USU GmbH, G Data CyberDefense/© G Data CyberDefense, Vendosoft/© Vendosoft, Kumavision/© Kumavision, Noriis Network AG/© Noriis Network AG, tts GmbH/© tts GmbH, Asseco Solutions AG/© Asseco Solutions AG, AFB Gemeinnützige GmbH/© AFB Gemeinnützige GmbH, Ferrari electronic AG/© Ferrari electronic AG, Doxee AT GmbH/© Doxee AT GmbH , Haufe Group SE/© Haufe Group SE, NTT Data/© NTT Data, Bild 1 Verspätete Verkaufsaufträge (Sage-Advertorial 3/2026)/© Sage, IT-Director und IT-Mittelstand: Ihre Webinar-Matineen in 2025 und 2026/© amgun | Getty Images