Grin logo
de en es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Software

Konzept der Assertions und Prinzip von Design-by-Contract in einer kurzen Darstellung (Stand 2005)

Title: Konzept der Assertions und Prinzip von Design-by-Contract in einer kurzen Darstellung (Stand 2005)

Term Paper , 2005 , 16 Pages , Grade: 1

Autor:in: Martin Czygan (Author)

Computer Science - Software
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

Die vorliegende Ausarbeitung stellt das Konzept der Assertions vor. Assertions stellen eine Umsetzung des Design-by-Contract-Prinzips dar
und ermöglichen eine Überwachung von Code zur Laufzeit. Im folgenden sollen, ausgehend von David S. Rosenblums Paper “Toward a Method of Programming with Assertions” sowohl das Konzept der Assertions, als auch das Prinzip von Design-By-Contract vorgestellt werden. (Ergänzt wird dieser Text durch eine weitere Ausarbeitung im Rahmen des o.g. Seminars. Titel: Assertions in Java )

Excerpt


Inhaltsverzeichnis

1 Einleitung

2 Vorüberlegungen

2.1 Fehlerquellen

2.2 Fehlererkennung

3 Design-By-Contract

3.1 Grundprinzip

3.2 EIFFEL

3.3 Aspekte von Design-By-Contract

3.4 Vorteile von Design-By-Contract

4 Assertions

4.1 Einsatz von Assertions

4.2 APP, Ein Präpozessor für C

4.3 Assertions und Exceptions

4.4 Vorteile/Probleme

5 Zusammenfassung

Zielsetzung & Themen

Die vorliegende Arbeit untersucht das Konzept der Assertions als methodische Umsetzung des Design-by-Contract-Prinzips zur Überwachung von Software zur Laufzeit. Ziel ist es, ausgehend von wissenschaftlichen Grundlagen, die Funktionsweise, den praktischen Einsatz sowie die Vor- und Nachteile dieser Technik für die moderne Softwareentwicklung aufzuzeigen.

  • Grundlagen der Fehlerentstehung und Fehlererkennung in Softwaresystemen
  • Einführung in das Prinzip "Design-By-Contract" und die Programmiersprache EIFFEL
  • Anwendung von Assertions zur Absicherung kritischer Code-Passagen
  • Vorstellung von Werkzeugen wie dem Präprozessor APP für die Sprache C
  • Vergleich von Assertions und Exceptions sowie deren Grenzen und Auswirkungen auf das System

Auszug aus dem Buch

3.1 Grundprinzip

Design-By-Contract ist eine Client-Server Betrachtungsweise der Zusammenarbeit von Objekten. Dabei existieren Anbieter und Nutzer, wobei hier Funktionalität zur Verfügung gestellt, bzw. genutzt wird. Im Fall einer Interaktion werden - ähnlich einem realen Vertrag - für Nutzer und Anbieter Pflichten und Rechte vereinbart. Erfüllt der Nutzer die Auflagen des Anbieters, so ist die angebotene Leistung garantiert, umgekehrt gilt, dass die Nichterfüllung der Obligationen zum Verlust der Garantie führt.

Design-By-Contract wurde in zeitlicher und gedanklicher Nähe mit EIFFEL entwickelt.

Zusammenfassung der Kapitel

1 Einleitung: Diese Einleitung führt in das Konzept der Assertions ein und positioniert die Arbeit im Kontext des Design-by-Contract-Prinzips sowie der Literatur von David S. Rosenblum.

2 Vorüberlegungen: Es werden die Ursachen für Softwarefehler beleuchtet und Methoden zur Fehlererkennung, wie Modulares Design oder Testen, erläutert.

3 Design-By-Contract: Dieses Kapitel definiert das Client-Server-Prinzip des Design-By-Contract und stellt dessen Aspekte sowie Vorteile für die Robustheit von Software dar.

4 Assertions: Der Hauptteil beschreibt den praktischen Einsatz von Assertions, die Funktionsweise des C-Präprozessors APP und diskutiert die Abgrenzung zu Exceptions.

5 Zusammenfassung: Hier werden die Ergebnisse resümiert und die Bedeutung von Assertions für die Softwarequalität im Kontext von Hoares Vision eines verifizierenden Compilers bewertet.

Schlüsselwörter

Assertions, Design-by-Contract, Softwarequalität, Laufzeitüberwachung, Programmverifikation, APP Präprozessor, Fehlererkennung, Precondition, Postcondition, Klasseninvariante, Software-Test, Debugging, Imperative Programmierung, Eiffel, Fehlerbehandlung

Häufig gestellte Fragen

Was ist das grundlegende Ziel dieser Arbeit?

Die Arbeit untersucht, wie Assertions als Werkzeug eingesetzt werden können, um die Zuverlässigkeit und Korrektheit von Softwaresystemen durch Laufzeitüberprüfungen zu steigern.

Welches sind die zentralen Themenfelder?

Die Schwerpunkte liegen auf den Prinzipien des Design-by-Contract, der Anwendung formaler Zusicherungen im Quellcode und dem methodischen Vergleich mit anderen Fehlerbehandlungskonzepten.

Was ist die Forschungsfrage der Arbeit?

Die Arbeit analysiert, wie durch die explizite Formulierung von Verträgen zwischen Programmkomponenten und deren Überprüfung mittels Assertions eine systematische Steigerung der Softwarequalität erreicht werden kann.

Welche wissenschaftliche Methode wird primär verwendet?

Es handelt sich um eine Literaturanalyse, die theoretische Konzepte (insb. Rosenblum) mit praktischen Implementierungsbeispielen für die Sprache C verknüpft.

Was wird im Hauptteil der Arbeit behandelt?

Der Hauptteil konzentriert sich auf die technische Umsetzung von Assertions, die Vorstellung des APP-Präprozessors und die Differenzierung zwischen Assertions und Exceptions.

Was charakterisiert die in der Arbeit genannten Schlüsselwörter?

Die Schlüsselwörter spiegeln die Schnittmenge zwischen objektorientiertem Design, formalen Spezifikationsmethoden und praktischen Qualitätssicherungstechniken im Software-Engineering wider.

Was ist der spezifische Unterschied zwischen einer Precondition und einer Postcondition?

Eine Precondition ist eine Bedingung, die vom Aufrufer vor Ausführung eines Dienstes erfüllt sein muss, während eine Postcondition eine Zusicherung ist, die nach Abschluss des Dienstes garantiert wird.

Warum sollte man laut der Arbeit Assertions nicht für alle Fehlerfälle nutzen?

Assertions dienen der Testphase und der Überprüfung von Annahmen über den korrekten Programmzustand; sie sind kein Ersatz für die Behandlung von erwarteten Ausnahmesituationen (Exceptions) in der Release-Version einer Software.

Excerpt out of 16 pages  - scroll top

Details

Title
Konzept der Assertions und Prinzip von Design-by-Contract in einer kurzen Darstellung (Stand 2005)
College
University of Leipzig  (Institut für angewandte Telematik)
Course
Wegweisende Arbeiten in der Softwaretechnik II. WS 2004/2005.
Grade
1
Author
Martin Czygan (Author)
Publication Year
2005
Pages
16
Catalog Number
V126910
ISBN (eBook)
9783640329809
ISBN (Book)
9783640331611
Language
German
Tags
Konzept Assertions Prinzip Design-by-Contract Darstellung
Product Safety
GRIN Publishing GmbH
Quote paper
Martin Czygan (Author), 2005, Konzept der Assertions und Prinzip von Design-by-Contract in einer kurzen Darstellung (Stand 2005), Munich, GRIN Verlag, https://www.grin.com/document/126910
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  16  pages
Grin logo
  • Grin.com
  • Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint