Fehler

Nichterfüllung einer Anforderung
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 16. August 2004 um 02:03 Uhr durch BWBot (Diskussion | Beiträge) (Bananeweizen - Robot: Orthographie (Verläßlichkeit->Verlässlichkeit)). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Ein Fehler ist eine Abweichung von einem optimalen oder normierten Zustand oder Verfahren. Bei Produkten ist die Abwesenheit von Fehlern ein Qualitätsmerkmal.

Bestimmte physiologische Mängel können bei Lebewesen rezeptive Fehler verursachen (Sehfehler, Hörfehler, Lesefehler. siehe Dyskalkulie)

Auch im Bereich von Ästhetik und Kunst wird von Fehlern gesprochen. Ein in seiner Originalität einzigartiges neues Kunstwerk kann - da abweichend vom Kanon - als fehlerhaft empfunden werden und in die Kritik geraten. Doch lässt sich in diesem Bereich angemessen eher nur von Unkorrektheiten z.B. einer Aufführung reden. Die Rede vom Fehler stößt in diesem Bereich an ihre Grenze.

Statistischer Fehler

Als statistischen Fehler bezeichnet man die Abweichung des Mittelwerts einer Stichprobe von dem Erwartungswert. Der relative statistische Fehler läßt sich durch Erweiterung der Stichprobe verringern. Er verschwindet im Grenzfall, dass die Stichprobe die Grundgesamtheit umfaßt.

Ein einfaches Beispiel soll dies erläutern: Hat man in einem uneinsehbaren Kasten sieben schwarze und drei weiße Kugeln und entnimmt blind einzelne Kugeln, dann erhält man ein zuverlässig fehlerfreies Ergebnis nur, wenn man alle Kugeln entnimmt. Entnimmt man weniger (z. B. nur drei Kugeln), dann können drei (100%), zwei (67%), eine (33%) oder keine (0%) schwarze Kugeln in der Stichprobe sein. Die Stichprobe weicht somit mehr oder weniger vom Erwartungswert (70%) ab. Diese Abweichung bezeichnet man als statistischen Fehler.

In der Praxis ist aber der Erwartungswert nicht bekannt. Stattdessen muß von den Ergebnissen einer Stichprobe (z. B. Wahlumfrage, Verhaltensuntersuchungen an Kindern, Aufmerksamkeitsstudien bzgl. Werbung usw.) aus abgeschätzt werden, wie groß der statistische Fehler ist, d. h. wie weit der "wirkliche" Wert von dem Ergebnis der Stichprobe unter Berücksichtigung der erwünschcten Verlässlichkeit der Aussage abweichen kann.

Siehe auch: Irrtumswahrscheinlichkeit

Physikalische Fehler

Bei physikalischen Größen bezeichnet der Fehler die maximal zu erwartende Abweichung vom Sollwert. Er kann absolut (z.B. Länge  ) oder relativ (in Prozent) angegeben werden. Der Fehler im physikalischen Sinn wird auch als Messunsicherheit bezeichnet. Die Größe des Fehlers wird mit Hilfe der Fehlerrechnung ermittelt.

Softwarefehler

In der Softwaretechnik wird zwischen folgenden Typen von Fehlern in Programmen unterschieden:

Syntaxfehler sind Verstöße gegen die grammatikalischen Regeln der benutzten Programmiersprache. Ein Syntaxfehler verhindert bei einigen Programmiersprachen bereits die Kompilierung des fehlerhaften Programms.

Laufzeitfehler (Bugs) sind alle Arten von Fehlern die auftreten, während das Programm abgearbeitet wird. Da diese Fehler die Programmlogik und damit die Bedeutung des Programmcodes betreffen, spricht man hier auch von semantischen Fehlern. Ihre Ursache liegt in den allermeisten Fällen in unrichtiger Implementierung der gewünschten Funktionalität im Programm. Gelegentlich tritt als Ursache auch eine ungeeignete Laufzeitumgebung auf (z. B. eine falsche Betriebssystem-Version).

Laufzeitfehler können sich auf die unterschiedlichsten Arten zeigen. Oftmals zeigt das Programm ungewünschtes Verhalten, in anderen Fällen wird die Ausführung des Programms abgebrochen ("Absturz"), oder das Programm geht in einen Zustand über, wo es keine Benutzereingaben mehr akzeptiert ("Einfrieren").

Designfehler sind Fehler im Grundkonzept, entweder bei der Definition der Anforderungen an die Software, oder bei der Entwicklung des Softwaredesigns, auf dessen Grundlage das Programm entwickelt wird. Fehler bei der Anforderungsdefinition beruhen oft auf mangelnder Kenntnis des Fachgebietes, für das die Software geschrieben wird, oder auf Missverständnissen zwischen Nutzern und Entwicklern. Fehler direkt im Softwaredesign hingegen sind in hingegen oft auf mangelnde Erfahrung der Softwareentwickler oder auf Folgefehler durch Fehler in der Anforderungsspezifikation zurückzuführen. In anderen Fällen ist das Design historisch gewachsen und wird mit der Zeit unübersichtlich, was wiederum zu Designfehlern bei Weiterentwicklungen des Programms führen kann. Vielen Programmierern ist das Softwaredesign auch lästig, sodass oftmals ohne richtiges Konzept direkt entwickelt wird, was dann insbesondere bei steigendem Komplexitätsgrad der Software unweigerlich zu Designfehlern führt. Sowohl für Fehler in der Anforderungsdefinition als auch im Softwaredesign kommen darüber hinaus vielfach Kosten- oder Zeitdruck in Frage.

Die Abwesenheit von Softwarefehlern kann im allgemeinen Fall nicht mathematisch bewiesen werden, sondern sie muss soweit wie möglich durch aufwändige Tests belegt werden. Tests können jedoch praktisch niemals alle Fehler einer Software finden.

In Spezialfällen ist ein Beweis der Fehlerfreiheit eines Programms möglich. Diese Technik findet in der Praxis aufgrund des immensen Aufwandes jedoch äußerst selten Anwendung. Des weiteren birgt sie das Problem, dass die Korrektheit eines Programms nur gegen eine entsprechend formalisierte Spezifikation beweiesen werden kann. Eine solche Spezifikation zu erstellen kann jedoch im Einzelfall ähnlich kompliziert und Fehlerträchtig sein, wie die Programmierung des Programms selbst. Dadurch wird das Problem der Fehlervermeidung folglich lediglich von der Software auf die Spezifikation verlagert.

Software-Experten sind sich darüber einig, dass praktisch jedes nicht-triviale Programm Fehler enthält. Deshalb wurden Techniken entwickelt, mit Fehlern innerhalb von Programmen tolerant umzugehen. Zu diesen Techniken gehören defensives Programmieren, Redundanz und Überwachung von Programmen (z. B. Watchdog Timer).

Spielfehler

Bei einem Spiel ist ein Fehler ein Spielzug bzw. eine Handlung, die normalerweise einen Verlust bzw. eine Minderung des Gewinns verursacht. Ein Fehler kann spielentscheidend sein, aber oft auch durch andere Handlungen ausgeglichen werden.

Recht

Im Recht ist ein Fehler je nach Gebiet unterschiedlich definiert. So gibt es Verfahrensfehler, Fehler, die eine Gefährdung von Gesundheit oder Eigentum bilden, Fehler, die den ordnungsgemäßen Gebrauch verhindern und andere.


Siehe auch: Fauxpas, Fehler 1. und 2. Art, MTBF