Softwarekonstruktion
Vorlesung (2 SWS) und Übung (1 SWS)

Ankündigungen:

  • 16.04.2015 - Die Ergebnisse für die Klausur vom 25.03. stehen nun fest.
  • 17.02.2015 - Auf dem System für die Onlineübungen sind nun OCL-Aufgaben zur Klausurvorbereitung verfügbar.
Zeit und Ort der Vorlesung: Montags, 12:15-13:45, Otto-Hahn-Str. 14 - E23
Zeit und Ort der Übungen: Dienstags, 10:15 - 11:45, OH14/104 (Nina Harmuth) Gruppen 1 und 6

Mittwochs, 12:15 - 13:45, OH14/304 (Nina Harmuth) Gruppen 2 und 7

Mittwochs, 14:15 - 15:45, OH12/2.063 (Jens Bürger) Gruppen 3 und 8

Donnerstags, 08:15 - 09:45, OH12/1.056 (Janine Hemmers) Gruppen 4 und 9

Donnerstags, 10:15 - 11:45, OH14/104 (Jens Bürger) Gruppen 5 und 10

Überblick:

Die Vorlesung bietet einen Überblick über die Probleme der modernen Softwaretechnik. Sie befaßt sich mit den Prinzipien der Konstruktion von Programmsystemen und folgt dabei dem Lebenszyklus eines Programmsystems von der Analyse der Anforderungen über Spezifikation und Entwurf zu Implementierung und Test. Ein Schwerpunkt der Vorlesung besteht in der Vertiefung des objektorientierten Paradigmas. Es sollen insbesondere Fragestellungen der objektorientierten Modellierung und des Entwurfs behandelt werden, wobei UML vorausgesetzt und Logik-Annotationen als wichtiger Mechanismen eingeführt und Entwurfsmuster ausführlich diskutiert wird. Eine Verifikationstechnik (wie Model Checking oder modell-basiertes Testen) soll eingehender diskutiert werden.

Ein Schwerpunkt der Vorlesung sind dabei fortgeschrittene logische und algebraische Techniken für die o.g. Fragestellungen. Darauf aufbauend können weitere Aspekte von Softwarekonstruktion (z.B. praktische Aspekte der Softwarekonstruktion) in den darauf aufbauenden hier angebotenen Proseminaren, Seminaren und Fachprojekten vertieft werden.

Die Veranstaltung ist für Studierende gedacht, die ihre Kenntnisse der Softwaretechnik und insbesondere der objektorientierten Systemkonstruktion vertiefen wollen; sie zählt zu den Voraussetzungen für eine Abschlussarbeit und die Durchführung einer Hiwi-Tätigkeit am Lehrstuhl für Software Engineering.

Voraussetzungen

Die Veranstaltung Softwaretechnik und das Software-Praktikum sind Voraussetzung für den Besuch dieser Vorlesung. Da Teile der Vorlesung fortgeschrittene logische und algebraische Techniken verwenden (z.B. logik-basierte Spezifikation und Verifikation mit OCL), ist die sichere Beherrschung der Lerninhalte der Vorlesungen über mathematische Grundlagen der Informatik Voraussetzung für einen erfolgreichen Besuch der Vorlesung.

Dank für Unterstützung

Der Lehrstuhl 14 hat für die Vorlesung SWK ein Web-basiertes System für die Bearbeitung und automatische Bewertung von Übungsaufgaben entwickelt (ermöglicht auch durch teilweise Finanzierung durch "QVM-Mittel"), das in zwei Einsatzszenarien verwendet wird:
  • Zusätzliches Angebot für die freiwillige Bearbeitung von Übungsaufgaben, z.B. in Vorbereitung auf die Klausur.
  • Einsatz im Rahmen von 1-2 Übungsblättern am Ende des Semesters: Erlaubt das zusätzliche Angebot dieser Übungsblätter mit kurzfristigem Feedback durch das automatische System (wäre aus Resourcengründen sonst nicht realisierbar).

Vorlesungsfolien:

Die Vorlesungsfolien werden semesterbegleitend fortlaufend bereitgestellt, und zwar (planmäßig) spätestens um 23.00 Uhr am Vorabend eines Vorlesungstages. Im Anschluss daran kann es noch zu kleineren Änderungen kommen (z.B. das Hinzufügen der Antwort-Folien zu den während einer Vorlesung gestellten Diskussionsfragen). Die Foliensätze haben Anhänge mit zusätzlichem Material zum selbständigen Nacharbeiten.

Aus Urheberrechtsschutzgründen sind die Folien sind nur aus dem TUDo-Netz abrufbar. Von außerhalb des Campus kann dafür das VPN der TUDo genutzt werden.

Kapitel 0: Einleitung und Grundlagen
  • Teil 0.0 (Einleitung): Folien (v. 17.10.2014; geändert: Folie 8)
Kapitel 1: Modellbasierte Softwareentwicklung Kapitel 2: Qualitätsmanagement
  • Teil 2.0: Einführung Qualitätsmanagement: Folien, Notizen (v. 08.12.2014; inkl. Antworten)
  • Teil 2.1: Grundlagen der Softwareverifikation: Folien, Notizen (v. 08.12.2014; inkl. Antworten)
  • Teil 2.2: Softwaremetriken: Folien, Notizen (v. 08.12.2014; inkl. Antworten)
  • Teil 2.3: Black Box Test: Folien, Notizen (v. 26.12.2014; inkl. Folien 45-51)
  • Teil 2.4: White Box Test: Folien, Notizen (v. 20.02.2015; geändert: Folie 33; Zweigüberdeckungsgrad beträgt 75% anstatt 66%)
  • Teil 2.5: Testen im Softwarelebenszyklus: Folien, Notizen (v. 08.02.2015)
Kapitel 9: Schluss
  • Teil 9.0: Schluss: Folien (v. 08.02.2015)

Vorlesungstermine:

  • 06.10.2014: Teil 0, 1.0 (bis Folie 7)
  • 13.10.2014: Teil 1.0 (ab Folie 7)
  • 20.10.2014: Teil 1.1 (bis Folie 46)
  • 27.10.2014: Teil 1.1 (ab Folie 43), 1.2 (bis Folie 8)
  • 03.11.2014: Teil 1.2 (ab Folie 8 bis Folie 51)
  • 10.11.2014: Teil 1.2 (ab Folie 51), 1.3
  • 17.11.2014: Teil 1.4 (bis Folie 55)
  • 24.11.2014: Teil 1.4 (ab Folie 45)
  • 01.12.2014: Teil 1.5, 2.0 (bis Folie 27)
  • 08.12.2014: Teil 2.0 (ab Folie 27), 2.1, 2.2 (bis Folie 14)
  • 15.12.2014: Teil 2.2 (ab Folie 15), 2.3
  • 05.01.2015: Teil 2.3 (ab Folie 45), 2.4 (bis Folie 49)
  • 12.01.2015: Teil 2.4 (ab Folie 49 bis Folie 93)
  • 19.01.2015: Teil 2.4 (ab Folie 93 bis Folie 128)
  • 26.01.2015: Teil 2.4 (ab Folie 128 bis Folie 159)
  • 02.02.2015: Teil 2.4 (ab Folie 159), 2.5, 9.0

Skripte:

Die folgenden beiden Skripte wurden dankenswerterweise von Teilnehmern der Vorlesung in den genannten Semestern aufgrund ihrer persönlichen Aufzeichnungen erstellt. Verbesserungs- und Korrekturhinweise sind willkommen.

Literatur:

Allgemein: Kapitel 1:
  • V. Gruhn, D. Pieper, C. Röttgers: MDA - Effektives Software-Engineering mit UML2 und Eclipse, Xpert.press / Springer-Verlag, 2006 Unibibliothek
  • J. Seemann, J.W. Gudenberg: Software-Entwurf mit UML 2, Xpert.press / SpringerVerlag, 2006 Unibibliothek
  • Bernd Bruegge, Allen H. Dutoit: Object-Oriented Software Engineering: Using UML, Patterns and Java
  • MOF Specification
  • J. Warmer, A. Kleppe: The Object Constraint Language: Getting Your Models Ready for MDA, Addison-Wesley Longman Publ. & Co., Inc., 2003. Unibibiliothek, Unibibliothek
  • Object Management Group: OCL 2.4
  • J.Becker, C.Mathas, A. Winkelmann: Geschäftsprozessmanagement. Springer Verlag, 2009. Unibibliothek: E-Book.
  • H.Reisig: Petrinetze. Vieweg, 2010. Unibibliothek: E-Book. Teil I.
  • D. Steinberg: Eclipse Modeling Framework, Addison-Wesley, 2008
Kapitel 2:
  • Andreas Spillner, Tilo Linz: Basiswissen Softwaretest. 4., überarbeitete Auflage, dpunkt.verlag, 2010, 308 Seiten, 39 Euro (D), ISBN 987-3-89864-642-0. Unibibliothek.
  • Bei Engpässen in der Ausleihe alternativ ähnliche Inhalte als e-Book: A. Spillner, T. Linz, H. Schaefer: Software Testing Foundations, 3. Auflage, Rocky Nook, 2011, 296 Seiten, Print ISBN-13: 978-1-933952-78-9. Unibibliothek (e-Book).
  • Eike Riedemann: Testmethoden für sequentielle und nebenläufige Software-Systeme. Teubner, Stuttgart, 512 S., 1997. PDF-Dateien hier herunterladbar. Unibibliothek.
  • Einige relevante Werkzeuge für Testüberdeckungskriterien.
  • Acht beliebte Irrtümer zu Testüberdeckungskriterien.

Übungen:

Übungsanmeldung:

Übungsablauf:

  • Eine Übungsgruppe umfasst max. 30 Studierende; die Übungen finden 14-tägig im Wechsel statt.
  • Insgesamt werden 6 Übungszettel veröffentlicht. Jeder Übungszettel enthält eine Hausübung. 1-2 Hausübungen werden über ein Onlinesystem durchgeführt, zu dem sich über Moodle angemeldet werden kann. Voraussichtlich wird dies die Hausübungen 5 und 6 betreffen.
  • Die Übungszettel werden 14-tägig veröffentlicht. Diese sollen von den Studierenden innerhalb der Präsenzübung gelöst werden. Eine entsprechende Vor- und Nachbereitung der Vorlesungsinhalte wird dabei vorausgesetzt. Bei jeder Übung steht ein Tutor für Fragen und Hilfestellungen zur Verfügung. Am Ende der Übung stellen Studierende ihre Lösungen vor und alle Übungsteilnehmer diskutieren sie in der Gruppe unter Anleitung des Übungsleiters.
  • Zu den meisten Präsenzübungen wird ein Lösungsvorschlag veröffentlicht.
  • Hausübungen sollen bis zum entsprechenden Termin gelöst und abgegeben werden. Die Aufgaben müssen (inhaltlich wie konzeptionell) in Gruppen bearbeitet werden. Die Gruppengröße beträgt mindestens 2 und maximal 3 Studierende, die ihre Lösung zusammen ausarbeiten und abgeben. Die Zusammenarbeit ist entsprechend auf den Abgaben zu vermerken.
  • Die Abgabe kann in der Übung oder durch Einwurf in den entsprechenden Briefkasten in der OH 12 bis zum entsprechenden Stichtag abgegeben werden. Eine Abgabe per Mail, Hauspost, persönlich bei Mitarbeitern oder im Sekretariat ist nicht möglich.
  • Auf der Abgabe sind Name, Matrikelnummer und die Übungsgruppe zu vermerken. Besteht die Gruppe aus Teilnehmern mehrerer Übungsgruppen, so ist die Gruppe in der die korrigierte Übung zurückgegeben werden soll entsprechend hervorzuheben. Nicht abgeholte Übungszettel liegen dann im Sekretariat zur Abholung bereit.
  • Bei Abgabe von Duplikaten erhät keine der beteiligten Gruppen Punkte.
  • Die Zahl der pro Hausübung zu erreichenden Punkte kann von Übungsblatt zu Übungsblatt variieren. Weitere Angaben zu Punkten sind bei den Kriterien zum Erreichen der Studienleistung aufgeführt.
  • Die Abgaben werden korrigiert und die Gruppe erhält die korrigierte Lösung zurück.

Onlineübung

  • Die Anmeldung zu den Onlineübungen (Hausübungen 5 und 6) via Moodle ist jetzt freigeschaltet. Details entnehmen Sie bitte den Informationen zur Registrierung und Einschreibung in den Moodle-Kurs.
  • Hinweis zu den OCL-Aufgaben zur Klausurvorbereitung: Sollten sich Zweifel bzgl. der Korrektheit der Bewertungen ergeben, gelten immer die Aussagen aus Vorlesung und Übungsgruppen. Fragen können im Inpud-Forum gestellt werden. Wir können allerdings nicht zusichern, innerhalb eines bestimmten Zeitraums zu antworten.
  • Bei der Abgabe der Onlineübungen sind keine Gruppen vorgesehen, d.h. jeder Studierende gibt seine Bearbeitung einzeln in Moodle ein. Allerdings dürfen die Aufgaben gerne in den üblichen Gruppen diskutiert und besprochen werden.

Übungszettel:

Terminplan Übungen

Übungsgruppen: Die Übungen finden 14-tägig im Wechsel statt und dauern deswegen 90 statt 45 Minuten.
 
VL-Woche KW Woche vom Übung Gruppe Bemerkung
1 41 06.10.2014 - -
2 42 13.10.2014 - -
3 43 20.10.2014 - -
4 44 27.10.2014 1 1 - 5
5 45 03.11.2014 1 6 - 10
6 46 10.11.2014 2 1 - 5
7 47 17.11.2014 2 6 - 10
8 48 24.11.2014 3 1 - 5
9 49 01.12.2014 3 6 - 10
10 50 08.12.2014 4 1 - 5
11 51 15.12.2014 4 6 - 10
Weihnachtspause
12 2 05.01.2015 5 1 - 5
13 3 12.01.2015 5 6 - 10
14 4 19.01.2015 6 1 - 5
15 5 26.01.2015 6 6 - 10
16 6 02.02.2015 - -
 
 
 
Hausübungen:
 
Übungs-Nr. Ausgabe Abgabe
1 Montag, 27.10.2014 Donnerstag, 13.11.2014, 16:00 Uhr
2 Montag, 10.11.2014 Donnerstag, 27.11.2014, 16:00 Uhr
3 Montag, 24.11.2014 Donnerstag, 11.12.2014, 16:00 Uhr
4 Montag, 08.12.2014 Donnerstag, 08.01.2015, 16:00 Uhr
5 Montag, 05.01.2015 Donnerstag, 22.01.2015, 6:00 Uhr
6 Montag, 19.01.2015 Mittwoch, 04.02.2015, 6:00 Uhr

Leistungsnachweis:

  • Diplom-Studierende nach DPO 2001 erhalten einen unbenoteten Schein durch erfolgreiche Teilnahme an der Abschlussklausur.
  • Die Teilnahme an den Übungen und die Abgabe von Hausübungen sind freiwillig.

Studienleistung:

  • Bachelor-Studierende benötigen für die Zulassung zur Klausur einen Leistungsnachweis über die erfolgreiche Teilnahme an den Übungen.
  • Zum Nachweis der erfolgreichen Teilnahme an den Übungen sind 50% der möglichen Punkte aus den Hausübungen 1 bis 6 (insgesamt 50 von 100 Punkte), dabei aber mindestens jeweils 30% der möglichen Punkte aus den Hausübungen 1+2+3 (15 von 50 Punkte) und 4+5+6 (15 von 50 Punkte) zu erreichen.

Abschlussklausur

  • Erster Prüfungstermin: Mittwoch, 25.02.2015 15:00-16:30 Uhr, Audimax
    • Die vorläfigen Ergebnisse für die Klausur stehen fest.
    • Die Noten sowie die Notenskala stehen fest.
    • Die Einsicht wird am Freitag, den 13. März von 14 bis 16 Uhr in Raum OH14/104 stattfinden.
  • Zweiter Prüfungstermin: Mittwoch, 25.03.2015 16:00-17:30 Uhr, Audimax
    • Die vorläfigen Ergebnisse für die Klausur stehen fest.
    • Die Noten sowie die Notenskala stehen fest.
    • Die Einsicht wird am Freitag, den 24. April von 10 bis 12 Uhr in Raum OH12/2.013 stattfinden.
  • Bearbeitungsdauer der Klausur: 60 Minuten. Es sind keine Hilfsmittel erlaubt (weitere Informationen dazu).

Organisation für Bachelor Informatik und Angewandte Informatik

  • Erst nach erfolgreichem Abschluss der Studienleistung ist eine Anmeldung für die Klausur über BOSS möglich.
  • Für die Studienleistung ist keine gesonderte Anmeldung über BOSS notwendig.
  • Die Studienleistungen werden verbucht sobald die Studienleistung erfolgreich abgeschlossen ist. Diejenigen, die die Studienleistung bereits mit dem 5. Übungsblatt bestanden haben, tragen wir ab dem 22.01.2015 im BOSS ein. Diejenigen, die erst mit dem 6. Übungsblatt bestanden haben, tragen wir ab dem 4.02.2015 im BOSS ein.
  • Für die erste Klausur gelten z. Zt. keine gesonderten An- und Abmeldefristen.
  • Für die zweite Klausur gilt: An- und Abmeldung sind bis zum 19.3. möglich.

Organisation für Diplom Informatik und Angewandte Informatik

  • Für die Teilnahme an der Klausur ist keine Studienleistung erforderlich. Studierende die an der Klausur teilnehmen wollen, melden sich über POS bzw. BOSS an.

Organisation für Bachelor/Master (Lehramt) Informatik

  • Diese Veranstaltung kann nicht im Bachelor (Lehramt) Informatik angerechnet werden.
  • Diese Veranstaltung kann im Master (Lehramt) Informatik nur auf Antrag
    der Studierenden an den Prüfungsausschuss im Modul BMI angerechnet werden.

Feedback:

Wir haben großes Interesse an veranstaltungsbegleitendem Feedback, um auf Änderungswünsche gleich (und nicht erst im nächsten Semester) eingehen zu können.
Bitte äußern Sie entsprechende Hinweise im Anschluss an eine Vorlesung oder per E-mail, oder über unser anonymes Kontaktformular (bitte Vorlesung SWK ankreuzen). Vielen Dank !

Abschlussarbeiten, Hiwi-Jobs:

Im Zusammenhang mit den in der Vorlesung behandelten Themen werden auch Abschlussarbeiten betreut und Hiwi-Jobs vergeben.

Kontakt