• Keine Ergebnisse gefunden

SS2009–¨Ubungsblatt2Ausgabe:4.Mai2009Abgabe:bissp¨atestens13.Mai2009inderVorlesung ProgrammingbyContract

N/A
N/A
Protected

Academic year: 2022

Aktie "SS2009–¨Ubungsblatt2Ausgabe:4.Mai2009Abgabe:bissp¨atestens13.Mai2009inderVorlesung ProgrammingbyContract"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

BERGISCHE UNIVERSIT ¨ AT WUPPERTAL

GAUSS-STRASSE 20 42119 WUPPERTAL TELEFAX (0202) 439-2901 TELEFON (0202) 439-0 WWW www.uni-wuppertal.de

Fachbereich C

MATHEMATIK UND NATURWISSENSCHAFTEN Fachgruppe Mathematik und Informatik

Programming by Contract

SS 2009 – ¨ Ubungsblatt 2 Ausgabe: 4. Mai 2009

Abgabe: bis sp¨atestens 13. Mai 2009 in der Vorlesung

Prof. Dr. Hans-J¨urgen Buhl Praktische Informatik / Numerik

E-Mail: buhl@math.uni-wuppertal.de

WWW: http://www.math.uni-wuppertal.de/∼buhl

Aufgabe 1. Programmverifikation

Beschreiben Sie den Nutzen der Programmverifikation (Quelle:

http://en.wikipedia.org/wiki/Program verification). Warum setzt die Programmverifikation eine (formale) Programmspezifikation voraus?

Erl¨autern Sie die Verifikation des GCD-Algorithmus

begin {a >0, b≥0}

x:=a;y:=b;

while y6= 0 do {gcd(a,b) = gcd(x,y) } begin r:=xmod y;

x:=y;

y:=r end

{x=gcd(a, b)}

end

(entnommen: Suad Alagi´c/Michael A. Arbib: THE DESIGN OF WELL-STRUCTURED AND CORRECT PROGRAMS, Springer- Verlag, New York, 1978)

in eigenen Worten.

”Reicht“ die Verifikation eines Programms als Qua- lit¨atssicherung aus?

Aufgabe 2. Software-G¨ute

Lesen Sie den Artikel:

http://en.wikipedia.org/wiki/Coding by exception

Beschreiben Sie in eigenen Worten (in deutscher Sprache) die dort ge- schilderten

”Anti-Pattern“.

1

(2)

Wie sind sie in Bezug auf produkt- und projektorientierte Qualit¨atsan- forderungen an Software einzuordnen?

Aufgabe 3. Magische Zahlen

Was versteht man beim Programmieren unter magischen Zahlen (http://en.wikipedia.org/wiki/Magic number (programming))?

Warum sind sie schlecht f¨ur die Software-G¨ute? Wie sollten sie vermie- den werden?

Welche Qualit¨atsanforderungen verletzt Code mit

”magic Pushbut- tons“ (http://en.wikipedia.org/wiki/Magic pushbutton)?

Aufgabe 4. eclipse mit lcov

Schreiben Sie in eigenen Worten einen kurzen Leitfaden zur Benutzung von lcovbei der Qualit¨atssicherung von Software. Welchen Vorteil hat lcovgegen¨ubergcov? Weshalb sollte in der Testdokumentation immer eine aktuelle lcov-Analyse vorhanden sein?

Fassen Sie die wichtigsten Argumente zur sorgf¨altigen Testplanung gem¨aß

http://en.wikipedia.org/wiki/Code coverage in einer ¨Ubersicht zusammen.

2

Referenzen

ÄHNLICHE DOKUMENTE

Im Conic ACE wird definiert, welche Objektklassen aus dem SMALLWORLD GIS In das Conic GIS übertragen werden sollen. Mit jeder der zu exportierenden Objektklassen

Schüler haben neben einer Identifikationsnummer einen Namen, eine Adresse und gehören einer einzigen Klasse an.. Klassen sind eindeutig durch ihre Klassennummer bestimmt und ihnen

Erg¨anzen Sie stringTo() der Klasse Wuerfel so, dass durch seine Be- nutzung in main() die funktionale Korrektheit der Implementierung ablesbar ist. Was ist ein Test-Orakel

Spezifikation durch Vertrag — eine Basistechnologie f¨ur eBusiness und beantworten Sie die folgenden Fragen ¨uber die dort vorgestellten Beispiel-Contracts:.. – Welches Attribut

Erl¨autern Sie, welche Software-G¨utekriterien-Mißachtungen zum Pro- blem ” Verwirrter Geldautomat zahlt doppelt

Erg¨anzen Sie simple stack0.cc durch einen weiteren Konstruktor mit zwei Parametern, einem Feld G[] und einem int f¨ur die L¨ange dieses Feldes. Das durch diesen Konstruktor

Spezifizieren Sie f¨ur die Klasse Polarkoordinaten eine Me- thode void set_x_y(double x, double y) sowie eine Methode void double_vector(), die die L¨ange des Exemplar-Vektors

Welche Anforderungen/Prinzipien auf Seite 17 und 18 der Material- sammlung beinflußt die schriftliche Niederlegung von Vor- und Nach- bedingungen sowie von Invarianten positiv?.