• Keine Ergebnisse gefunden

oder per email an c.markmann@uni-wuppertal.de

N/A
N/A
Protected

Academic year: 2022

Aktie "oder per email an c.markmann@uni-wuppertal.de"

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

WS 2005/2006 – ¨ Ubungsblatt 2 Ausgabe: 3. November 2005

Abgabe: bis sp¨atestens 10. November 2005 in der Vorlesung

oder per email an c.markmann@uni-wuppertal.de

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

e-mail: Hans-Juergen.Buhl@math.uni-wuppertal.de WWW: http://www.math.uni-wuppertal.de/buhl

Aufgabe 1. Software-G¨ute

Lesen Sie die drei Artikel:

http://en.wikipedia.org/wiki/Coding by exception http://en.wikipedia.org/wiki/Creeping featurism http://en.wikipedia.org/wiki/Accidental complexity

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

”Anti-Pattern“.

Wie sind sie in Bezug auf die in der Vorlesung besprochenen produkt- und projektorientierten Qualit¨atsanforderungen einzuordnen?

Aufgabe 2. Magische Zahlen

Was versteht man beim Programmieren unter magischen Zahlen

(http://en.wikipedia.org/wiki/Magic number %28programming%29#Magic numbers in code)?

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

Welche Qualit¨atsanforderungen der Vorlesung verletzt Code mit

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

Aufgabe 3. Hard coding

Welche Software-G¨utekriterien verletzt dashard coding (http://en.wikipedia.org/wiki/Hard code)?

Aufgabe 4. Anti-structured Programming

Welche Auswirkungen auf die Software-G¨ute hat http://en.wikipedia.org/wiki/Spaghetti code, welche http://en.wikipedia.org/wiki/Ravioli code?

1

(2)

Stellen Sie diese beiden Anti-Pattern in Zusammenhang mit struktu- rierter und unstrukturierter Programmierung!

Aufgabe 5. Abstraction Inversion

Welchen grunds¨atzlichen Fehler macht ein Softwaredesign bei Abstrak- tionsumkehr (http://en.wikipedia.org/wiki/Abstraction inversion)?

2

Referenzen

ÄHNLICHE DOKUMENTE

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem

Kursteilnehmer, die diesen Kurs erfolgreich abschließen, können die internen Komponenten eines Computers beschreiben, ein Computersystem zusammenbauen, ein Betriebssystem