htw saar QR-encoded URL
Zurück zur Hauptseite Version des Moduls auswählen:
Lernziele hervorheben XML-Code

Software Engineering

Modulbezeichnung:
Bezeichnung des Moduls innerhalb des Studiengangs. Sie soll eine präzise und verständliche Überschrift des Modulinhalts darstellen.
Software Engineering
Studiengang:
Studiengang mit Beginn der Gültigkeit der betreffenden ASPO-Anlage/Studienordnung des Studiengangs, in dem dieses Modul zum Studienprogramm gehört (=Start der ersten Erstsemester-Kohorte, die nach dieser Ordnung studiert).
Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021
Code: DBWINFO-220
SAP-Submodul-Nr.:
Die Prüfungsverwaltung mittels SAP-SLCM vergibt für jede Prüfungsart in einem Modul eine SAP-Submodul-Nr (= P-Nummer). Gleiche Module in unterschiedlichen Studiengängen haben bei gleicher Prüfungsart die gleiche SAP-Submodul-Nr..
P730-0011
SWS/Lehrform:
Die Anzahl der Semesterwochenstunden (SWS) wird als Zusammensetzung von Vorlesungsstunden (V), Übungsstunden (U), Praktikumsstunden (P) oder Projektarbeitsstunden (PA) angegeben. Beispielsweise besteht eine Veranstaltung der Form 2V+2U aus 2 Vorlesungsstunden und 2 Übungsstunden pro Woche.
-
ECTS-Punkte:
Die Anzahl der Punkte nach ECTS (Leistungspunkte, Kreditpunkte), die dem Studierenden bei erfolgreicher Ableistung des Moduls gutgeschrieben werden. Die ECTS-Punkte entscheiden über die Gewichtung des Fachs bei der Berechnung der Durchschnittsnote im Abschlusszeugnis. Jedem ECTS-Punkt entsprechen 30 studentische Arbeitsstunden (Anwesenheit, Vor- und Nachbereitung, Prüfungsvorbereitung, ggfs. Zeit zur Bearbeitung eines Projekts), verteilt über die gesamte Zeit des Semesters (26 Wochen).
6
Studienjahr: 2
Pflichtfach: ja
Arbeitssprache:
Deutsch
Prüfungsart:
Klausur (120 Minuten, davon 80 Min. für Methoden der Softwareentwicklung und 40 Min. für Werkzeuge der Softwareentwicklung)
Pro Bearbeitungsminute ist ein Punkt zu vergeben.

[letzte Änderung 06.10.2021]
Verwendbarkeit / Zuordnung zum Curriculum:
Alle Studienprogramme, die das Modul enthalten mit Jahresangabe der entsprechenden Studienordnung / ASPO-Anlage.

DBWINFO-220 (P730-0011) Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021 , 2. Studienjahr, Pflichtfach
Arbeitsaufwand:
Der Arbeitsaufwand des Studierenden, der für das erfolgreiche Absolvieren eines Moduls notwendig ist, ergibt sich aus den ECTS-Punkten. Jeder ECTS-Punkt steht in der Regel für 30 Arbeitsstunden. Die Arbeitsstunden umfassen Präsenzzeit (in den Vorlesungswochen), Vor- und Nachbereitung der Vorlesung, ggfs. Abfassung einer Projektarbeit und die Vorbereitung auf die Prüfung.

Die ECTS beziehen sich auf die gesamte formale Semesterdauer (01.04.-30.09. im Sommersemester, 01.10.-31.03. im Wintersemester).
Der Gesamtaufwand des Moduls beträgt 180 Arbeitsstunden.
Empfohlene Voraussetzungen (Module):
Keine.
Als Vorkenntnis empfohlen für Module:
Modulverantwortung:
Prof. Dr. Dieter Hofbauer
Dozent/innen: Prof. Dr. Dieter Hofbauer

[letzte Änderung 01.09.2021]
Lernziele:
Methoden der Softwareentwicklung:
 
Die Studierenden kennen grundlegende Probleme, Ziele und Methoden der Softwareentwicklung.
Die wesentlichen Tätigkeiten, Vorgehensweisen und Rollen im Softwarelebenszyklus sind bekannt.
Die Studierenden sind in der Lage, Softwareentwicklungsprojekte mit Hilfe aktueller objektorientierter Analyse- und Entwurfsmethoden durchzuführen und die Rolle objektorientierter Konzepte in
der Praxis zu bewerten. Die Studierenden sind mit verschiedenen Entwicklungsmodellen vertraut;
Vor- und Nachteile wesentlicher Modelle für unterschiedliche Einsatzbereiche sind verstanden. Sie
sind in der Lage, die Modellierungssprache UML in der Softwareentwicklung sinnvoll einzusetzen.
Instanzen wesentlicher UML-Diagrammarten können sowohl gelesen als auch erstellt werden. Die
Studierenden haben wichtige Entwurfsmuster kennengelernt und können sie auf neue Problemstellungen übertragen.
  
Werkzeuge der Softwareentwicklung:
 
Die Studierenden kennen die grundlegenden Ziele und Aufgaben einer Werkzeugunterstützung
und können sie in alle relevanten Softwareentwicklungsprozesse einordnen; insbesondere verstehen sie die Relevanz von Verfahren und Werkzeugen zur kontinuierlichen Integration (CI) für agile
Prozessmodelle. Die Studierenden kennen aktuelle Werkzeuge zur Automatisierung von Buildprozessen und können Buildskripte zur Unterstützung wesentlicher Entwicklungsschritte (Compilierung, Dokumentation, Archivierung, Deployment) erstellen. CI-Werkzeuge sind ihnen über praktische Übungen bekannt. Sie sind mit verschiedenen Modellen und ausgewählten Werkzeugen aus dem Bereich Versionsverwaltung bzw. Sourcecode-Management vertraut. Die Studierenden verstehen das Konzept der testgetriebenen Entwicklung und können automatisierte Tests unter Verwendung von Unit-Tests durchführen. Ihre Fähigkeit zum Einsatz der behandelten Werkzeuge in einer integrierten Entwicklungsumgebung ist durch praktische Übungen vertieft.

[letzte Änderung 06.10.2021]
Inhalt:
Methoden der Softwareentwicklung:
 
1. Probleme, Ziele und Tätigkeiten in der Softwareentwicklung
2. Ausgewählte Vorgehens- und Prozessmodelle
  2.1. Wasserfallmodell
  2.2. V-Modell 97, V-Modell XT
  2.3. Prototyping
  2.4. Spiralmodell
  2.5. Agile Modelle: Agiles Manifest, Extreme Programming, Scrum
 
3. Requirements Engineering
4. Objektorientierter Softwarelebenszyklus
5. Statische Konzepte der objektorientierten Analyse35
  5.1. OO-Basiskonzepte
  5.2. Klassen- und Objektdiagramme
 
6. Dynamische Konzepte der objektorientierten Analyse
  6.1. OO-Basiskonzepte
  6.2. Anwendungsfälle und Use-Case-Diagramme
  6.3. Aktivitätsdiagramme
  6.4. Szenarios und Sequenzdiagramme
  6.5. Zustandsautomaten
  6.6. Ablauf des Analyseprozesses
 
7. Entwurfsphase
  7.1. Einführung in den objektorientierten Entwurf
  7.2. Architekturmuster
  7.3. Ausgewählte Entwurfsmuster
 
Werkzeuge der Softwareentwicklung:
 
1. Werkzeugunterstützung im Entwicklungsprozess (CASE-Tools); Einordnung in ausgewählte Softwareentwicklungsmodelle
2. Softwaretests
  2.1. Zielsetzung; Testarten und -kategorien (Unit-Tests, Integrationstests, Akzeptanztests, Lasttests)
  2.2. Testautomatisierung: Testspezifikation, -implementierung, -ausführung
  2.3. Unit-Tests mit JUnit: Zielsetzung und Verwendung; Testklassen und -methoden
  2.4. Test Driven Development
  2.5. Test-Management; Issue-Tracking-Systeme
 
3. Werkzeugunterstützung bei Reengineering und Refactoring
4. Versionsverwaltung und Sourcecode-Management-Systeme (SCM)
  4.1. Ziele und Konzepte
  4.2. Beispiele für SCM-Werkzeuge (Subversion, Git)
 
5. Build-Management am Beispiel (Apache Ant versus Apache Maven)
  5.1. Voraussetzung für den Einsatz; IDE-Unterstützung
  5.2. Typische Tasks für Java-Builds
  5.3. Repository-Konzept; Abhängigkeitsverwaltung
 
6. Continuous Integration
  6.1. Einordnung in den Buildprozess
6.2. Arbeitsweise von CI-Werkzeugen am Beispiel von Jenkins

[letzte Änderung 06.10.2021]
Weitere Lehrmethoden und Medien:
Vorlesung, praktische Übungen

[letzte Änderung 06.10.2021]
Literatur:
Methoden der Softwareentwicklung:
 
• Balzert, Heide: Lehrbuch der Objektmodellierung – Analyse und Entwurf mit der UML 2; Spektrum Akademischer Verlag; Heidelberg
• Gamma, Erich/Helm, Richard/Johnson, Ralph E./Vlissides, John: Entwurfsmuster – Elemente wiederverwendbarer objektorientierter Software; mitp; Frechen
• Geirhos, Matthias: Entwurfsmuster – Das umfassende Handbuch; Rheinwerk; Bonn
• Ludewig, Jochen/Lichter, Horst: Software Engineering – Grundlagen, Menschen, Prozesse,
Techniken; dpunkt; Heidelberg
• Oestereich, Bernd, Scheithauer, Axel: Analyse und Design mit der UML 2.5 – Objektorientierte
Softwareentwicklung; Oldenbourg; München
• Rupp, Chris/Queins, Stefan/Sophisten, die: UML 2 glasklar – Praxiswissen für die UML-Modellierung; Hanser; München
• Sommerville, Ian: Software Engineering; Pearson; München
Werkzeuge der Softwareentwicklung:
• Inden, Michael: Der Weg zum Java-Profi – Konzepte und Techniken für die professionelle
Java-Entwicklung; dpunkt; Heidelberg
• Osherove, Roy: The Art of Unit Testing; mitp, Frechen
• Popp, Gunther: Konfigurationsmanagement mit Subversion, Maven und Redmine – Grundlagen für Softwarearchitekten und Entwickler; dpunkt; Heidelberg
• Spillner, Andreas/Linz, Tilo: Basiswissen Softwaretest – Aus- und Weiterbildung zum Certified
Tester; dpunkt; Heidelberg
• Wolff, Eberhard: Continuous Delivery – Der pragmatische Einstieg; dpunkt; Heidelberg

[letzte Änderung 06.10.2021]
[Sat Apr 20 08:29:31 CEST 2024, CKEY=asea, BKEY=aswwinf, CID=DBWINFO-220, LANGUAGE=de, DATE=20.04.2024]