Middlewaresystem-Entwicklung - MWE
Modulbeschreibung | |
Titel: | Middlewaresystem-Entwicklung |
Englischer Titel: | Development of Middleware Systems |
Typ: | Modul |
Kürzel / Modulnr: | MWE / 70521 |
SWS / LP: | 2S+3Pj / 16LP |
Vorbesprechung und Themenvergabe: | Mittwoch 19.04.2017, 08.30 Uhr - 10.00 Uhr, O27-331 |
Einordnung in die Studiengänge: | Informatik, M.Sc.: Projekt Informatik, Lehramt: Wahlfach Medieninformatik, M.Sc.: Projekt Software-Engineering, M.Sc.: Projekt Informationssystemtechnik, M.Sc.: Wahlpflicht Informatik, Projekt Informatik, M.Sc. (PO 2010): Projektmodul Medieninformatik, M.Sc. (PO 2010): Projektmodul |
Verantwortlich: | Prof. Dr.-Ing. Franz J. Hauck |
Unterrichtssprache: | Deutsch |
Turnus / Dauer: | jedes Semester / ein oder zwei Semester |
Voraussetzungen (inhaltlich): | Programmiererfahrung in Java, Grundkenntnisse in Rechnernetzen und Verteilten Systemen |
Voraussetzungen (formal): | - |
Grundlage für (inhaltlich): | Masterarbeit |
Lernergebnisse: | Die Studierenden sollen im Bereich Middleware-Systeme in das selbständige wissenschaftliche Arbeiten eingeführt werden. Ein jeweils semesteraktuelles Themengebiet wird theoretisch und vor allem praxisorientiert ausgearbeitet. Die Studierenden sollen vertiefte Kenntnisse im jeweiligen Themengebiet erlangen. Daneben werden ausgewählte und themenabhängige Schlüsselqualifikationen vermittelt wie das Schreiben wissenschaftlicher Memoranden, die Evaluation von Messergebnissen, das Arbeiten in Kleingruppen und die Organisation von Softwareprojekten. Die Handhabung eines konkreten Middlewaresystems und die Lösung einer konkreten Problemstellung wird geübt. |
Inhalt: | Ein semesteraktuelles Themengebiet wird zunächst durch ein einführendes Seminar erschlossen. Durch Selbststudium, Literaturstudium und geleitete Projektarbeiten wird ein individuelles oder in einer kleinen Gruppe zu bearbeitendes Teilthema weiter vertieft, indem konkrete Problemstellungen bearbeitet werden. Beispielhafte Teilthemen sind:
|
Literatur: | - |
Lehr- und Lernformen: | Multimedia- und Internetsysteme, 2S, 4 LP, Pflicht, jedes Semester Multimedia- und Internetsysteme im Eigenbau, 3Pj, 12 LP, Pflicht, jedes Semester Seminar und Projektseminar können parallel oder hintereinander abgelegt werden. Vereinzelte Themen erfordern den Beginn mit dem Seminar. |
Bewertungsmethode: | Die Vergabe der Leistungspunkte erfolgt für je eine Modulteilprüfung im Seminar und Projektseminar. Die Modulteilprüfung Seminar erfordert Anwesenheit und enthält Ausarbeitung, Vortrag und Mitarbeit (Gewichung wird zu Beginn jeweils bekannt gegeben). Die Modulteilprüfung Projektseminar erfordert Anwesenheit und Mitarbeit und enthält Ausarbeitung und Abschlusspräsentation sowie eine Bewertung der praktischen Problemlösung (Gewichtung jeweils abhängig vom Thema und wird zu Beginn bekannt gegeben). |
Notenbildung: | nach Leistungspunkten gewichtete Note der Modulteilprüfungen |
Arbeitsaufwand: | Präsenzzeit Seminar, Projektseminar: 75h Vortrag, Ausarbeitung im Seminar: 90h Selbststudium, Projektarbeit, Abschlusspräsentation und Ausarbeitung im Projektseminar: 315h Summe: 480h |
Themen | |
in.Crease: DevOps Pipeline und Entwicklungsumgebung Betreuer: Franz J. Hauck | Projektanteil: Für das Lehrprojekt eines Studieninformationssystems wurde in einer Masterarbeit ein weitgehendes Konzept für das so genannte Continious Delivery erstellt, d.h. ein Entwickler kann eine neue Version erstellen, die dann automatisch getestet und mit vorhandener Software kombiniert wird sowie auf Knopfdruck direkt produktiv gehen kann. In diesem Projekt, das eventuell sogar Raum für zwei zusammen arbeitende Studierende geben könnte, soll die gesamte Umgebung dokumentiert und weiter ausgebaut werden. Insbesondere soll ein Entwicklungskonzept für Angular2 integriert werden. Je nach Ausgestaltung sollte Interesse an Systemsoftware, Software-Entwicklung, Java- bzw. Angular2-Programmierung vorhanden sein. Das Projekt kann mit 8LP oder 16LP belegt werden. Seminaranteil: Das Seminar kann ausgewählte Aspekte von DevOps, Continous Delivery und beteiligter Software zur Einarbeitung betrachten(z.B. Angular2, Jenkins, NPM + Node.js). |
Topologieerkennung mit JTomato Betreuer: Franz J. Hauck | Projektanteil: JTomato ist eine Software des Instituts, die verschiedene IP-Pakete mit genauen Timings absenden und empfangen kann (ICMP u.ä.). Aus einer Masterarbeit ist ein Konzept zur Topologieermittlung des Internets entstanden, das Eigenheiten von IPv6 ausnutzt. Leider wurde die Evaluation nur rudimentär ausgeführt. Thema des Projekts ist das Reimplementieren des Konzepts mit JTomato und eine Durchführung praktischer Messungen. Interesse an Netzwerkprotokollen sowie an der Programmierung in Java und C++ (wenig) wäre hilfreich. Das Thema kann mit 8 oder 16 LP bearbeitet werden. Seminaranteil: Als Seminar könnten je nach Vorkenntnissen Aspekte von IPv6, der Topologieerkennung und von JTomato behandelt werden. |
PriPlus: Userfriendly Privacy Betreuer: David Mödinger | Projektanteil: PriCloud ist ein Projekt mit dem Ziel einen Privatsphäre erhaltenden Cloudspeicher zu erhalten. Hierfür wird im Insitut an einem Prototypen in Python gearbeitet. Dieser bietet jedoch nur Konsolenzugriff auf die Subsysteme des Prototypen. Ziel des Projektes ist es ein fundiertes und geeignetes User Interface zu entwerfen und dieses praktisch zu erstellen. Das Thema kann nur mit 8 LP bearbeitet werden. |
NetVision: Simple Visualization of Distributed Algorithms Betreuer: David Mödinger | Projektanteil: In der Lehre steht man häufig vor der Herausforderung ein Problem geeignet zu visualisieren. Findet man eine geeignete Darstellung ist diese jedoch meist statisch, auf eine einzige Probleminstanz beschränkt und nicht interaktiv für die Studierenden. Ziel dieser Arbeit ist es ein Werkzeug zu erstellen um verteilte Algorithmen interaktiv zu visualisieren und so Studierenden die Möglichkeit zu geben damit zu experimentieren. Als erster Schritt muss hierfür ein Konzept erstellt werden (bestimmung geeigneter Einschränkungen für eine einfache Darstellung und Interaktion) sowie eine grafische Interaktion für die Modellierung des Algorithmus und des zu visualisierenden Netzes. Zuletzt gilt es diese Erkenntnisse in einer Java oder Web Applikation umzusetzen. Der genaue Umfang des Projekts richtet sich nach den gewählten Leistungspunkten und im Konzept ermittelten Herausforderungen und Einschränkungen. Das Thema kann mit 8 oder 16 LP bearbeitet werden. |