l Partner l Sitemap l Anmeldung l Downloads 
Kostenlose Beratung unter 0800-2222336

Module: Softwaretechnik

Die Entwicklung von Softwaresystemen erfolgt heute in Teams, um zeitgerecht komplexe Software fertigzustellen. Es lassen sich drei Bereiche unterscheiden:

Die eigentliche Software-Entwicklung findet in Phasen statt. Ausgehend von den Anforderungen des Auftraggebers wird über die Phasen Planung, Spezifikation, Entwurf und Implementierung ein Softwaresystem entwickelt, das nach der Abnahme gewartet, gepflegt und weiterentwickelt wird.

Eine Softwareentwicklung läuft jedoch nicht von sich aus ab. Softwaremanagement ist erforderlich, um den Entwicklungsprozess vorzugeben, zu planen und zu kontrollieren.

Ein neu entwickeltes Software-System muss heute von vornherein eine gute Qualität besitzen, da fehlerhafte Software zu beträchtlichen Schäden führen kann. Neben dem Softwaremanagement ist daher Software-Qualitätsmanagement erforderlich.

Da Softwaresysteme heute zunehmend auch Webanwendungen sind, ist es erforderlich, die entsprechenden Web-Techniken zu kennen und zu beherrschen.

Diese großen Themenbereiche werden in diesem Fachgebiet vermittelt:


Modul Softwaretechnik 1

Studienbereich
Bachelor-Studienabschnitt, Pflichtfach, Empfohlenes Semester: 3. Semester

Fach
Softwaretechnik

Anzahl LP
5

Ziele
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 erkennen so die Unterschiede der verschiedenen Anwendungsdomänen.

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 anschließend 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

  • 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

Verantwortlich
Prof. Dr. Helmut Balzert

Voraussetzungen & Vorkenntnisse
Modul Softwaretechnik 1
Modul Grundlagen der Informatik 3 (kann parallel belegt werden)

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

Hinweis
Voraussetzung für die Zulassung zur Präsenzklausur ist die erfolgreiche Bearbeitung der Teamarbeit.


Web-Programmierung

Studienbereich
Bachelor-Studienabschnitt, Pflichtfach, Empfohlenes Semester: 4. Semester

Fach
Webinformatik

Anzahl LP
5

Ziele
Das Modul gibt einen Überblick über Webtechniken. In die wichtigsten Webtechniken wird eingeführt und anhand kleiner Programmbeispiele ein »Gefühl« für die jeweilige Technik vermittelt. Zunächst werden die Basistechniken HTML, CSS und JavaScript vorgestellt. Dann wird auf die deklarative Sprache XML eingegangen. Die Programmiersprachen PHP, JSP und ASP.Net zeigen die verschiedenen Möglichkeiten, Web-Anforderungen zu realisieren.

Der Studierende ist anschließend in der Lage, die verschiedenen Webtechniken im Quervergleich mit ihren Möglichkeiten, Vor- und Nachteilen für bestimmte Anforderungen einzuschätzen.

Inhaltsübersicht

  • HTML
    • HTML-Dokument
    • HTML-Dokumente verlinken
    • Bilder in HTML-Dokumenten
    • HTML-Tabellen
    • HTML-Frames
    • HTML-Formulare
    • HTML-Elemente im Überblick
  • CSS
    • Einfache CSS-Formate
    • Weitere CSS-Formate
    • CSS-Klassen
    • CSS-Formate im Überblick
  • JavaScript
    • Was ist JavaScript?
    • Erstes JavaScript-Programm
    • JavaScript: Kontrollstrukturen
    • JavaScript: Funktionen
    • JavaScript: Formulare validieren
    • JavaScript: Rollover
    • JavaScript-Elemente im Überblick
  • XML
    • XML Terminologie
    • XML-Datei
    • DTD-Datei
    • XML-Parser
    • XML-Schema 1
    • XML-Schema 2
    • XSL-Stylesheet
    • XML-Elemente im Überblick
  • PHP
    • Was ist PHP?
    • Erstes PHP-Programm
    • PHP: Formular
    • PHP: Kontrollstrukturen
    • PHP: Funktionen
    • Dateiverarbeitung mit PHP
    • Gästebuch mit PHP
    • PHP-Elemente im Überblick
  • JSP
    • Was ist JSP?
    • Erstes JSP-Programm
    • Direktiven und implizite Objekte
    • Funktionen und Klassen in JSP
    • JSP: Kontrollstrukturen
    • JSP: Formulare
    • JSP: Formulare validieren
    • JSP-Dateien strukturieren
    • JSP: Gästebuch
    • Formular Gästebuch
    • JSP: Datenverwaltung
    • JSP: Gästebuch erstellen
    • Gästebuch & Haftung
    • JSP-Elemente im Überblick
  • ASP.NET
    • Was ist ASP.NET?
    • Erste ASP.NET- Web Form
    • C#: Funktionen und Klassen
    • C#: Kontrollstrukturen
    • Code Behind Technik
    • ASP.NET-Formulare
    • ASP.NET-Formulare validieren
    • C# und ASP.NET-Elemente im Überblick
  • Ajax

Verantwortlich
Prof. Dr. Heide Balzert

Voraussetzungen & Vorkenntnisse
Modul Grundlagen der Informatik 1

Literatur

  • Buch: Basiswissen Web-Programmierung von Heide Balzert, W3L-Verlag, Herdecke, 2008

Ergänzende Literatur

  • S. Münz, Professionelle Websites, Addison Wesley, München, 2005
  • H. Vonhoegen, Einstieg in XML, Galileo Press, Bonn, 2005
  • H. Vonhoegen, Einstieg in JavaServerPages 2.0, Galileo Press, Bonn, 2004
  • C. Wenz et al., Jetzt lerne ich ASP.NET, Markt + Technik, München, 2004

Online-Kurse

  • Basiswissen Web-Programmierung

Modul Softwaretechnik 2

Studienbereich
Bachelor-Studienabschnitt, Pflichtfach, Empfohlenes Semester: 4. Semester

Fach
Softwaretechnik

Anzahl LP
5

Ziele
Im Mittelpunkt dieses Moduls steht das Requirements Engineering. Zu wissen, was der Kunde will, und dies zu ermitteln, zu beschreiben, zu spezifizieren, zu analysieren und in Form einer fachlichen Lösung zu modellieren ist die Aufgabe des Requirements Engineering - im Deutschen auch als Systemanalyse bezeichnet. Die Studierenden lernen, dass im Requirements Engineering die Grundlagen für den Erfolg oder Misserfolg einer Softwareentwicklung gelegt werden.

Der Studierende ist anschließend in der Lage auf der Grundlage von Basistechniken und Basiskonzepten systematisch ein Requirements Engineering durchzuführen und Anforderungen in fachliche Lösungen unter Einsatz der UML überzuführen.

Ein weiteres Lernziel besteht darin, die Arbeit im Team zu üben. Dazu ist eine Aufgabe aus dem Themenbereich »Requirements Engineering« in einem Team bestehend aus 3 bis 5 Teilnehmern gemeinsam zu bearbeiten. Der Tutor teilt den Teammitgliedern Rollen zu (Projektleiter, Systemanalytiker 1 bis 3, Qualitätssicherer). Das Team erhält die Aufgabe, die verbalen Anforderungen eines Auftraggebers mit Methoden des »Requirements Engineering« in ein Lastenheft, Pflichtenheft, Glossar und ein OOA-Modell umzusetzen. Jedes Teammitglied bearbeitet die Aufgabe entsprechend seiner Rolle. Über das W3L-Communication Center können die Teammitglieder gemeinsame Besprechungen abhalten.

Inhaltsübersicht

  • Requirements Engineering
    • Problem vs. Lösung
    • Bedeutung, Probleme und Best Practices
    • Aktivitäten und Artefakte
    • Der Requirements Engineering-Prozess
    • Anforderungen und Anforderungsarten
      • Visionen und Ziele
      • Rahmenbedingungen
      • Kontext und Überblick
      • Nichtfunktionale Anforderungen
      • Qualitätsmerkmale nach ISO/IEC 9126 -1
      • Abnahmekriterien
    • Anforderungen an Anforderungen
    • Anforderungsattribute
    • Natürlichsprachliche Anforderungen
    • Anforderungsschablonen
      • Anforderungsschablone der IEEE 830 -1998
      • Anforderungsschablonen im V-Modell XT
      • Schablonen für Lastenheft, Pflichtenheft und Glossar
      • Schablonen für agile Entwicklungen
    • Anforderungen ermitteln und spezifizieren
    • Anforderungen analysieren, validieren und abnehmen
    • Schätzen des Aufwands
      • Voraussetzungen und Einflussfaktoren
      • Warum ist das Schätzen des Aufwands wichtig?
      • Warum eine Aufwandsschätzung schwierig ist?
      • Schätzverfahren
      • Die Function-Points-Methode
      • Object Points/Application Points
      • COCOMO II
      • Bewertung und weitere Aspekte
    • Anforderungen priorisieren
    • Anforderungen modellieren
      • Beispiel: Objektorientierte Analyse
      • Domänenspezifische Sprachen
    • Fallstudie: SemOrg V1.0 - Die fachliche Lösung
    • Fallstudie: Fensterheber - Die fachliche Lösung
    • Modellierte Anforderungen analysieren, verifizieren und abnehmen

Verantwortlich
Prof. Dr. Helmut Balzert

Voraussetzungen & Vorkenntnisse
Modul Softwaretechnik 1
Modul Web-Programmierung (kann parallel belegt werden)

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 2

Hinweis
Voraussetzung für die Zulassung zur Präsenzklausur ist die erfolgreiche Bearbeitung der Teamarbeit.


Modul Software-Management 1

Studienbereich
Bachelor-Studienabschnitt, Pflichtfach, Empfohlenes Semester: 5. Semester

Fach
Softwaretechnik

Anzahl LP

5

Ziele
Ziel dieses Moduls ist es, einen Überblick über Prozess- und Qualitätsmodelle der Softwaretechnik zu geben. Als Softwaremanager stellt sich die Frage, wie man die eigene Softwareentwicklung und das Qualitätsmanagement organisiert. Es werden daher Prozess- und Qualitätsmodelle definiert, vorgestellt, klassifiziert und bewertet. Der Studierende kann anschließend für seinen Bereich die richtige Auswahl für ein Prozess- und Qualitätsmodell treffen.

Ein weiteres Lernziel besteht darin, die Arbeit im Team zu üben. Dazu ist eine Aufgabe aus dem Themenbereich »Manuelle Prüfmethoden« in einem Team bestehend aus 3 bis 5 Teilnehmern gemeinsam zu bearbeiten. Der Tutor teilt den Teammitgliedern Rollen zu. Das Team erhält eine Review-Aufgabe, die jedes Teammitglied entsprechend seiner Rolle bearbeiten muss. Anschließend findet über die W3L-Plattform eine moderierte Review-Sitzung statt.

Inhaltsübersicht

  • Prozess­ und Qualitätsmodelle
    • Was ist ein Prozessmodell?
    • Was ist ein Qualitätsmodell?
    • Qualitätsmanagement
    • Manuelle Prüfmethoden (mit Aufgabe in Teamarbeit)
    • Basismodelle
    • Rahmenmodelle
    • Monumentale Modelle
    • Agile Modelle
    • Vergleich, Trends, Auswahl

Verantwortlich
Prof. Dr. Helmut Balzert

Voraussetzungen & Vorkenntnisse
Modul Grundlagen der Informatik 3

Literatur

  • Buch: Lehrbuch der Software-Technik - Softwaremanagement von Helmut Balzert, Spektrum Akademischer Verlag, Heidelberg, 2008, 2. Auflage

Online-Kurs

  • Softwaremanagement - Prozess- & Qualtitätsmodelle

Hinweis

  • Bei der Präsenzklausur sind keine Hilfsmittel zugelassen.
  • Voraussetzung für die Zulassung zur Präsenzklausur ist die erfolgreiche Bearbeitung der Teamaufgabe.