Übungen
Inhalt
Im Rahmen eines kleinen Software Projektes werden im 2 Wochen Rhythmus insgesamt sechs Übungen ausgegeben. Die Übungen werden in Gruppen bearbeitet. Anschliessend an die Abgabe findet eine Übungsbesprechung und die Rückgabe der korrigierten Lösungen statt.
Der Inhalt der Übungen ist integraler Bestandteil des Lernstoffes.
Die Übungen vertiefen und ergänzen den Stoff aus der Vorlesung. Sie tragen dazu bei, dass die Studierenden Grundfertigkeiten des Software Engineering anwenden können. Dazu gehören insbesondere Modellierung, Planung, Implementierung und Testen.
Nach erfolgreicher Absolvierung der Veranstaltung können die Studierenden:
- Anforderungen erfassen,
- ein einfaches System mit geeigneten Werkzeugen modellieren,
- Aufwandschätzungen durchführen und ein Projekt planen,
- Software implementieren
- und testen.
Voraussetzungen
Paralleler Besuch der Vorlesung Software Engineering
Organisation der Übungen
Betreuung: | Reinhard Stoiber, (Tobias Reinhard, Silvio Meier) |
Übungsbesprechung | Jeweils am Freitag nach der Übungsabgabe. |
Interviews: | Anschliessend an die Übungsbesprechung. |
Anwesenheit Besprechung: | Dringend empfohlen. |
Uebungen
Übung | Ausgabe | Abgabe | Besprechung |
1. Programmverstehen, Nachdokumentation: Aufgabenstellung, Source Code, Entwicklungsrichtlinien, Folien der Übungsbesprechung |
18.09.2007 | 30.09.2007 | 05.10.2007, 12:15 h, BIN 2.A.01 |
2. Anforderungsspezifikation: Aufgabenstellung, Folien der Übungsbepsrechung |
02.10.2007 | 14.10.2007 | 26.10.2007, 14:00 h, BIN 2.A.10, Achtung: eine Woche später. |
3. Softwareprozesse: Aufgabenstellung, Folien der Übungsbesprechung |
16.10.2007 | 28.10.2007 | 02.11.2007, 12:15 h, BIN 2.A.01 |
4. Architektur, Entwurf: Aufgabenstellung, Source Code, Folien der Übungsbesprechung |
30.10.2007 | 11.11.2007 | 16.11.2007, 12:15 h, BIN 2.A.10 |
5. Verträge, Aufwand- und Risikoschätzung: Aufgabenstellung, Folien der Übungsbesprechung |
13.11.2007 | 25.11.2007 | 30.11.2007, 12:15 h, BIN 2.A.10 |
6. Softwaretests: Aufgabenstellung, Folien der Übungsbesprechung |
27.11.2007 | 09.12.2007 | 14.12.2007, 12:15 h, BIN 2.A.01 |
Prüfungseinsicht
Zur Prüfungseinsicht sehen Sie bitte die Information auf der Vorlesungsseite.
Info zur Prüfung
Für die Prüfung in Software Engineering wird ein Hilfsblatt erlaubt sein, weitere Information dazu Siehe Vorlesungsseite unter Leistungsnachweis.
Punkteliste zu den Übungen
Ihre erreichten Punkte auf den einzelnen Übungen und die erreichten Gesamtpunkte finden Sie hier: Gesamtpunkteliste.
Vergessen Sie nicht Ihre vergangenen Übungen mit Korrekturen im Raum BIN 2.B.17 abzuholen, falls Sie diese noch nicht haben.
Zusätzliche (freiwillige) Übung
Für Studierende nach PPO01, die eine erweiterte Schlussklausur ablegen, gibt es noch eine zusätzliche Übung zu Formaler Verifikation: Aufgabenstellung, Lösung.
Format der Übungs-Abgaben
Bitte schicken Sie Ihre Übungsausarbeitungen bis spätestens zu dem jeweiligen Abgabedatum (24:00 Uhr) per E-Mail an: stoiber AT ifi.uzh.ch.
Bezeichnen
Sie die Gruppenmitglieder für jede Abgabe, indem Sie den Name, Vornamen
und Matrikelnummer der Gruppenmitglieder angeben. Zusätzlich ist zu
kennzeichnen, welches Gruppenmitglied an welcher Aufgabe mitgearbeitet
hat.
Die Einhaltung der folgenden Regeln für die abgegebenen Dokumente hilft uns zudem bei der Handhabung Ihrer Lösung:
- Geben Sie bitte nur PDF-Dateien und Text-Dateien (für Quellcode) ab.
- Wo Java-Quellcode verlangt ist können Sie zusätzlich auch die .class-Dateien mitabgeben.
- Mehrere Dateien sind als eine ZIP-Datei abzugeben.
- Der
Dateiname von ZIP-Dateien oder einzel abgebene Dateien sollte Ihre
Gruppennummer, Ihre Namen und die Uebungsnummer enthalten, zum Beispiel
nach folgendem Muster: "Mustermann_Hinterseer_Auerberg_Uebung1.zip".
- Bitte verwenden Sie keine Umlaute oder Sonderzeichen in den Dateinamen.
Bedingungen für das Bestehen der Übungen
Das Bestehen der Übungen ist ein Pflichtbestandteil des Leistungsnachweises. Mehr Informationen zum Leistungsnachweis siehe Vorlesungsseite.
Der Nachweis für das Bestehen der Übungen setzt sich aus dem Lösen von Übungsbeispielen und dem erfolgreichen Auftreten in einem oder evtl. mehreren Interviews zusammen.
Es müssen gesamthaft mindestens 60 Punkte (max. 120) in den Übungen erreicht werden.
Interviews
Zur Leistungskontrolle der abgegebenen Übungen können die Gruppen zu kurzen Interviews aufgeboten werden. Dabei müssen verschiedene Fragen zur abgegebenen Lösung beantwortet werden können. Das Abschneiden bei diesen Interviews fliesst in die Bewertung der jeweiligen Übungsaufgabe mit ein. Bei ungenügender Leistung im Interview kann die Aufgabe für die betreffende Person mit 0 Punkten gewertet werden.
Zusätzliche Informationen zum Lösen der Übungen
- Die Seite von Alistair Cockburn mit sehr guten Informationen zu Use Cases.
- Die Seite von Martin Fowler mit vielen interessanten Beiträgen. Auch mit einem Artikel speziell zu Use Cases. Empfehlenswert ist auch What's a Model For?.
- Formale Beschreibung wie SET-USE, USE-SET Beziehungen definiert sind (werden im Papier DEF-SET bzw. SET-DEF Beziehungen genannt).
- Anderes Papier (ppt) über das finden von Datenabhängigkeiten. Formale Beschreibung wie SET-USE, USE-SET Beziehungen definiert sind (werden im Papier DEF-SET bzw. SET-DEF Beziehungen genannt).
- Weitere Informationen zum Thema Abstrakter Syntax Baum, Abstrakte Grammatik und Parsing von Quellcode.
- K.B. Gallagher, J.R. Lyle. Using Program Slicing in Software Maintenance.
- S. Horwitz, T. Reps, D. Binkeley. Interprocedural Slicing using Dependence Graphs.
- M. Weiser. Program Slicing.
Literatur
- Shari L. Pfleeger, Joanne M. Atlee. Software Engineering, Theory and Practice , 3rd Edition, Pearson Education, ISBN 0131984616
Weiterführende und ergänzende Literatur (keine Pflichtlektüre):
- Alistair Cockburn. Writing Effective Use Cases , Addison Wesley, ISBN: 0201702258
- Peter Coad et al Java Design, 2nd Edition , Prentice Hall, ISBN:0139111816
-
Martin Fowler UML Distilled, 3rd Edition
, AWL Professional, ISBN: 0321193687