INF2505 Entwicklung webbasierter Client-Server-Systeme

Modulverantwortliche
  • Prof. Dr. Klaus-Dieter Quibeldey-Cirkel
Lehrende
  • Prof. Dr. Klaus-Dieter Quibeldey-Cirkel
Notwendige Voraussetzungen zur Teilnahme

Keine

Empfohlene Voraussetzungen zur Teilnahme

Für Bachelor Informatik:

INF1006 Praktische Informatik 2

Für Bachelor Digital Media Systems:

INF1002 Webbasierte Programmierung 2

Kurzbeschreibung

Der Kurs vermittelt fundierte Kenntnisse und Fähigkeiten zur Entwicklung serverzentrierter Webanwendungen im Team. Dies umfasst die Integration moderner Technologien, Legacy-Systeme und KI-basierte Ansätze.

Inhalte
  • Clientseitige Programmierung mit Angular: Entwicklung von Benutzeroberflächen mit Angular und Material Design.
  • Serverseitige Programmierung mit Spring Boot: Implementierung robuster Backend-Services.
  • Datenbankmanagement mit PostgreSQL: Entwurf und Verwaltung von Datenbanken.
  • Echtzeit-Kommunikation mit WebSocket und Message Broker (wie RabbitMQ): Entwicklung von Echtzeit-Kommunikationsfunktionen.
  • Integration von Legacy-Systemen: Analyse bestehender Systeme und Entwicklung von Integrationsstrategien.
  • Versionskontrolle mit Git und GitLab: Einsatz von Git für Versionskontrolle und Kollaboration.
  • Qualitätssicherung mit SonarQube: Code-Qualitätsüberwachung und -analysen.
  • KI-Anwendungen in Webumgebungen: Einführung in KI-Technologien, insbesondere Chatbots und maschinelles Lernen, und deren Integration in Webanwendungen.
Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können moderne Web-Technologien wie Angular, Spring Boot und PostgreSQL effektiv analysieren und anwenden.
  • Sie können Legacy-Systeme evaluieren und Strategien für deren Integration in moderne Webumgebungen erarbeiten.
  • Sie können Git, GitLab und SonarQube zur Verbesserung der Code-Qualität und zur Förderung der Zusammenarbeit in Teams nutzen.
  • Sie können die grundlegenden Theorien und Entwicklungen im Bereich der Künstlichen Intelligenz beschreiben und Chatbots sowie maschinelles Lernen in Webanwendungen integrieren.
  • Sie können die Eignung verschiedener Webtechnologien und Entwurfsmuster kritisch bewerten und begründen.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden können spezifische Probleme und Herausforderungen in der Webentwicklung identifizieren und geeignete Lösungsansätze entwickeln.
  • Sie können Echtzeit-Kommunikationsfunktionen entwerfen und implementieren.
  • Sie können agile Methoden zur Planung und Durchführung von Webentwicklungsprojekten anwenden.
  • Sie können klare und umfassende Dokumentationen erstellen, die die Wartung und Skalierbarkeit von Webanwendungen unterstützen.

Sozialkompetenzen

  • Die Studierenden können effektiv in interdisziplinären Teams arbeiten und die Zusammenarbeit stärken.
  • Sie können technische Konzepte klar und effektiv kommunizieren.
  • Sie können Konflikte innerhalb des Teams identifizieren und lösen.
  • Sie können Projektergebnisse überzeugend präsentieren und verteidigen.

Selbstkompetenzen

  • Die Studierenden können Eigeninitiative entwickeln und unabhängige Problemlösungsansätze verfolgen.
  • Sie können kontinuierlich lernen und sich an neue Technologien und Herausforderungen anpassen.
  • Sie können ihre eigenen Fähigkeiten und Lernfortschritte kritisch reflektieren.
  • Sie können Aufgaben und Verantwortlichkeiten effizient organisieren und priorisieren.
ECTS-Leistungspunkte (CrP)
  • 9 CrP
  • Arbeitsaufwand 270 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 210 Std.
Lehr- und Lernformen
  • 4 SWS
  • Seminar 1 SWS
  • Praktikum 3 SWS
Studiensemester
  • Digital Media Systems (B.Sc. 2023)
  • Informatik (B.Sc. 2022)
Dauer
1 Semester
Häufigkeit des Angebots
Einmal im Jahr
Unterrichtssprache
Deutsch
Bonuspunkte

Ja

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung:

Übungsaufgaben (Anzahl wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben.)

Prüfungsleistung :

Projekt

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Bachelorstudiengänge der THM möglich.
Literatur, Medien
  • Malcher, F.; Koppenhagen, D.; Hoppe, J.: Angular: Das große Praxisbuch – Grundlagen, fortgeschrittene Themen und Best Practices. Inkl. RxJS, NgRx und a11y. dpunkt-Verlag.
  • Ullenboom, C.: Spring Boot 3 und Spring Framework 6. Das umfassende Handbuch zu professionellen Enterprise-Anwendungen mit Java – Einführung, Praxistipps, Design und Patterns. Rheinwerk.
  • Fröhlich, L.: PostgreSQL. Praxisbuch für Administratoren und Entwickler. Hanser.
  • Géron, A.: Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow. Konzepte, Tools und Techniken für intelligente Systeme. dpunkt-Verlag.

Rechtliche Hinweise