Softwaretechnik 1

Softwaretechnik 1

Studienbereich

  • Bachelor-Studienabschnitt, Pflichtfach, Empfohlenes Semester: 3. / 4. Semester

Anzahl Leistungspunkte (LP)

  • 5 (= 150 Stunden Lernzeit)

Fach

  • Softwaretechnik

Modulbeauftragter

  • Prof. Dr. Helmut Balzert

Verwendung des Moduls

  • Bachelor-Studiengang: Web- & Medieninformatik (4. Semester)
  • Bachelor-Studiengang: Wirtschaftsinformatik (3. Semester)
  • Wissenschaftliche Informatik-Weiterbildung Online: Requirements Engineer, Software-Architekt

Lernergebnisse / Kompetenzen

  • In diesem Modul lernen die Studierenden die Basistechniken (Prinzipien, Methoden, Werkzeuge) und die Basiskonzepte der Softwaretechnik kennen. Sie erkennen, dass ein zu entwickelndes Softwaresystem unter folgenden drei Gesichtspunkten, Sichten oder Perspektiven beschrieben, spezifiziert, modelliert, analysiert, entworfen und programmiert werden kann: Statik, Dynamik und Logik. Um die verschiedenen Techniken und Konzepte zu veranschaulichen, werden eine eine kaufmännische Fallstudie "SemOrg" (für Seminarorganisation) und eine technische, eingebettete Fallstudie "Fensterheber" durchgängig verwendet und referenziert. Die Studierenden können anschließend die Unterschiede der verschiedenen Anwendungsdomänen erklären.
  • Soweit möglich wird als Notation im grafischen Bereich die UML 2 eingesetzt. Nach Durcharbeitung des Moduls besitzt der Studierende die Kenntnisse, die für das internationale Zertifikat OMG-Certified UML Professionals (Fundamental) erforderlich sind. Auf Wunsch des Studierenden wird eine Prüfung zu diesem Zertifikat vermittelt.
  • Der Studierende ist anschl. in der Lage, vorgegebene Szenarien mit den richtigen Basistechniken und Basiskonzepten zu modellieren.
  • Ein weiteres Lernziel besteht darin, die Arbeit im Team zu üben. Dazu ist eine Aufgabe in einem Team bestehend aus 3 bis 5 Teilnehmern gemeinsam zu bearbeiten. Jedes Teammitglied bearbeitet die Aufgabe entsprechend seiner Rolle. Über das W3L-Communication Center können die Teammitglieder gemeinsame Besprechungen abhalten.

Inhaltsübersicht

Inhaltsübersicht

I Die Wissenschaftsdisziplin Softwaretechnik

  • Was ist Software?
  • Warum ist Software so schwer zu entwickeln?
  • Was ist Softwaretechnik?

II Basistechniken

  • Prinzipien: Prinzip der Abstraktion, Prinzip der Strukturierung, Prinzip der Bindung und Kopplung, Prinzip der Hierarchisierung, Prinzip der Modularisierung, Geheimnisprinzip, Prinzip der Lokalität, Prinzip der Verbalisierung, Abhängigkeiten zwischen den Prinzipien
  • Methoden
  • Werkzeuge: Menschen, Methoden, Werkzeuge, Klassifikation von Werkzeugen, Integrierte Entwicklungsumgebungen, Modellgetriebene Entwicklung, Auswahlkriterien bei der Anschaffung von Werkzeugen, Evaluationsverfahren für die Anschaffung

III Basiskonzepte

  • Fallstudie: SemOrg - Die Spezifikation
  • Fallstudie: Fensterheber - Die Spezifikation
  • Statik: Funktionalität, Funktions-Strukturen, Daten, Daten-Strukturen
  • Dynamik: Kontrollstrukturen, Geschäftsprozesse und Use Cases, Zustandsautomaten, Petrinetze, Szenarien
  • Logik: Formale Logik, Constraints und die OCL in der UML, Entscheidungstabellen und Entscheidungsbäume, Regeln

Lehrformen/Prüfungen

Lehrformen/Prüfungen

Lehrformen

  • Die Inhalte stehen sowohl als Online-Kurs als auch als Lehrbuch zum Selbststudium zur Verfügung. Die einzelnen Konzepte werden Schritt für Schritt aufeinander aufbauend in kleinen, überschaubaren Wissensbausteinen/Kapiteln vermittelt. Besonderer Wert wird auf jeweils vollständige Beispiele gelegt, die selbst weiterentwickelt werden können. Zwei Fallstudien aus verschiedenen Anwendungsdomänen werden systematisch entwickelt. Eine Reihe von Animationen erläutern dynamische Vorgänge. Selbsttestaufgaben mit Musterlösungen erlauben es, die erworbenen Programmierfähigkeiten zu überprüfen.
  • Am Anfang und am Ende jedes Wissensbausteins können die bereits vorhandenen Fähigkeiten oder die im Wissensbaustein erworbenen Fähigkeiten anhand von Tests und Aufgaben überprüft werden.

Teilnahmevoraussetzungen

  • Formal: keine
  • Inhaltlich: Modul Grundlagen der Informatik 1 sollte absolviert sein.
  • Inhaltlich: Modul Grundlagen der Informatik 2 sollte absolviert sein.

Prüfungsformen

  • Zweistündige schriftliche Präsenzklausur, die bei Nichtbestehen zweimal wiederholt werden kann. Werden alle Aufgaben richtig gelöst, dann erhält man 100 Punkte. Um die Klausur zu bestehen sind 50 Punkte notwendig.
  • Hilfsmittel: Alle handschriftlichen oder gedruckten Unterlagen.

Voraussetzungen für die Zulassung zur Präsenzklausur

  • Folgende Voraussetzungen müssen für die Zulassung zur Präsenzklausur erfüllt sein: 70% aller Tests, die zu dem jeweiligen Modul gehören, müssen in der W3L-E-Learning-Plattform bestanden werden. Jeder Test kann beliebig oft wiederholt werden. Tests werden in der W3L-E-Learning-Plattform automatisch ausgewertet. Folgende Testformen stehen zur Verfügung: Single Choice, Multiple Choice, Fill In, Zuordnungstests, Anordnungstests, Hot-Spot-Tests. Zu den Tests gibt es Tipps und Begründungen für die jeweilige Lösung.
  • Ist die vorherige Voraussetzung erfüllt, dann wird automatisch ein Online-Abschlusstest freigeschaltet (Dauer 30 Minuten). Um den Abschlusstest zu bestehen, müssen 70 von 100 Punkten erreicht werden. Ein gutes Abschneiden bei dem Online-Abschlusstest wird mit Bonuspunkten belohnt. Wird der Abschlusstest dreimal nicht bestanden, dann ist ein Gespräch mit dem Leiter des Studiengangs und dem zugehörigen Autor erforderlich.

Literatur/Kurs

Literatur/Kurs

Literatur

  • Buch: Lehrbuch der Softwaretechnik - Basiskonzepte und Requirements Engineering von Helmut Balzert, 3. Auflage, Spektrum Akademischer Verlag, Heidelberg, 2009

Weiterführende Literatur

  • Sommerville, Ian; Software Enginneering, Addison-Wesley, Harlow, 8. Auflage, 2007
  • Pohl, Klaus; Requirments Engineering, dpunkt-Verlag, Heidelberg, 2. Auflage, 2008

Online-Kurs

  • Softwaretechnik 1

Wir beraten Sie gerne, rufen Sie uns an!

Mo. - Fr. 9:00 - 17:00 Uhr, Tel. 0231 / 61 804 - 126