Modul Verteilte Systeme 1 und Mensch-Maschine-Kommunikation, Informatik (Bachelor) (SPO 8)

Englische Sprache
Kompakte Schrift

Farbschema

Modulübersicht

Verteilte Systeme 1 und Mensch-Maschine-Kommunikation

INFB330

Prof. Dr. Christian Zirpins

/

3. Semester

keine

keine

Die Studierenden erwerben fundierte Kenntnisse über Techniken und Konzepte verteilter Systeme, insbesondere im Kontext von Web-Anwendungen. Sie verstehen die allgemeine Architektur des Internets und des Web und können Anforderungen an Web-Anwendungen präzise analysieren. Sie sind in der Lage, interaktive Web-Anwendungen mit HTML, CSS und clientseitigem JavaScript zu entwickeln sowie serverseitigen Code für Anwendungsdienste zu erstellen, einschließlich Authentifizierung, Cookies und Sessions. Zudem erkennen sie potenzielle Sicherheitsprobleme wie Cross-Site-Scripting und SQL-Injection und können geeignete Schutzmaßnahmen umsetzen. Diese Fähigkeiten versetzen die Studierenden in die Lage, komplexe und sichere Web-Anwendungen zu konzipieren, zu entwickeln und produktiv zu betreiben.


Darüber hinaus erwerben die Studierenden Kompetenzen in der Gestaltung benutzungsfreundlicher Benutzeroberflächen. Sie kennen die Anforderungen der Software-Ergonomie sowie die Prinzipien der Gebrauchstauglichkeit im Nutzungskontext und sind mit einem nutzerzentrierten Entwurfsprozess vertraut. Dieser Prozess wird durch praktische Übungen und Hausarbeiten vertieft. Sie können die Gebrauchstauglichkeit eines Produkts durch Tests und Befragungen bewerten, die Ergebnisse kritisch analysieren und Verbesserungen gezielt umsetzen. Die Relevanz und der Inhalt von Style-Guides sowie typografische Gestaltungsprinzipien sind ihnen bekannt und werden systematisch bei der Gestaltung angewendet. Durch die Zusammenarbeit in Projektgruppen erwerben die Studierenden zudem diskursive Kompetenzen, die eine effektive Teamarbeit und professionelle Kommunikation im Entwicklungsprozess fördern.

Einzelprüfungen
Lehrveranstaltung Mensch-Maschine-Kommunikation

INFB333

Vorlesung

M.A. Daniel Hepperle

deutsch

2/2

60 Stunden gesamt, davon 30 Stunden Kontaktstudium.

Klausur/mündl. Prüfung 90/20 Min. (benotet)

Software Ergonomie, Regeln für benutzergerechtes Design (Style-Guides, Typographie), Methodischer Entwurf von Benutzungsschnittstellen: Analyse, Design, Implementierung, Testen der Brauchbarkeit, Befragungstechniken.

  • Skript
  • Style-Guides
  • Übungsaufgaben
  • Sammlung alter Klausuren und deren Lösungen
  • Markus Dahm, "Grundlagen der Mensch-Computer-Interaktion", Pearson Studium, 2005, ISBN: 3827371759
  • Ivo Wessel, "GUI- Design", Hanser Fachbuch, 2002, ISBN: 3446219617

Seminaristischer Unterricht, Übungen.

Lehrveranstaltung Mensch-Maschine-Kommunikation Übung

INFB334

Übung

B.Sc. Valeria Zitz

deutsch

2/1

60 Stunden gesamt, davon 15 Stunden Kontaktstudium.

Hausarbeit 1 Semester (nicht benotet)

Die in der Vorlesung Mensch-Maschine-Kommunikation erlernten Kenntnisse werden in Gruppenarbeit vertieft und praktisch geübt. Insbesondere der soziale Prozess des benutzerzentrierten Entwurfes sollen erfahren und dessen Probleme verstanden werden. Die Konfliktlösungskompetenz zur Lösung sich widersprechender Meinungen und Zielvorgaben wird eingeübt.

Die hohen Qualitätsanforderungen seitens der Benutzer werden anerkannt und in der praktischen Arbeit erfolgreich umgesetzt.

Es wird eine - der Praxis entstammende - Aufgabe der MMK analysiert und bis einschließlich zum Papierprototyp auch entworfen. Dieser Prototyp wird, gegebenenfalls mehrfach, einem Test der Brauchbarkeit unterworfen bis die vorgegebenen Qualitätsziele erreicht sind.

  • Skript
  • JoAnn T. Hackos, Janice C. Redish, "User and Task Analysis for Interface Design", John Wiley & Sons, 1998, ISBN: 0471178314
  • Jeffrey Rubin, Dana Chisnell, "Handbook of Usability Testing: Howto Plan, Design, and Conduct Effective Tests", Wiley, 2008, ISBN: 0470185481
  • Susan Weinschenk, Pamela Jamar, Sarah C. Yeo, "GUI Design Essentials", Verlag John Wiley & Sons, 1997, ISBN: 0471175498

Betreute Gruppenarbeit mit Präsentation und Diskussion; Test der Gebrauchstauglichkeit des Prototyps, Aufbereiten eines Testberichts mit Verbesserungsvorschlägen.

Lehrveranstaltung Verteilte Systeme 1

INFB331

Vorlesung

Prof. Dr. Christian Zirpins

deutsch

2/2

60 Stunden gesamt, davon 30 Stunden Kontaktstudium.

Klausur 60 Min. (benotet)

Die Vorlesung bietet eine praktische Einführung in die Konzepte und Paradigmen verteilter Systeme am Beispiel von Web Technologien und der Anwendungsentwicklung im Web. Dies beinhaltet zunächst eine Vorstellung des World Wide Web mit Basisprotokollen wie HTTP und weiteren Standards im Kontext des Internets. Es folgt eine Einführung in den Entwurf und die Konstruktion von Web Anwendungen. Dazu gehört zum einen die Frontend-Entwicklung mit HTML5, CSS3 und clientseitigem JavaScript und zum anderen die Backend-Entwicklung mit serverseitigem JavaScript auf der Node.js Plattform. Zur Interaktion zwischen Frontend und Backend werden moderne REST/HTTP und AJAX Techniken behandelt. Zudem werden auch Mechanismen zur Personalisierung mit Cookies und Sessions sowie zur Authentifizierung von Nutzern vorgestellt. Schließlich erfolgt eine eingehende Diskussion von Sicherheitsaspekten.

In dieser Vorlesung erwerben die Studierenden praktische Fähigkeiten in der Entwicklung und Bereitstellung von Webanwendungen, die auf einem Verständnis verteilter Systeme und Webtechnologien basieren. Sie lernen den kompetenten Einsatz von HTML5, CSS3 und JavaScript für die Frontend-Entwicklung, sowie die serverseitige Entwicklung mit Node.js und verbessern so ihre Fähigkeit, dynamische Full-Stack-Webanwendungen zu erstellen. Darüber hinaus erwerben die Studierenden Kenntnisse in der Implementierung moderner REST/HTTP- und AJAX-Techniken für eine effiziente Frontend-Backend-Kommunikation sowie in der Anwendung von Cookies, Sessions und Authentifizierungsstrategien zur Personalisierung und zur Gewährleistung der Anwendungssicherheit. Diese umfassenden Fähigkeiten bereiten die Studierenden auf eine breite Palette von Aufgaben in der Webentwicklung und im Anwendungsdesign vor und rüsten sie mit den notwendigen Werkzeugen aus, um aktuelle und zukünftige Herausforderungen in diesem Bereich zu bewältigen.

  • Semmy Purewal, "Learning Web App Development", O’Reilly, 1. Auflage, 2014
  • David Gourley, Brian Totty, "HTTP: The Definite Guide", O’Reilly, 2002
  • Mark Pilgrim, "HTML5 Up and Running", O’Reilly, 2010 (Online: http://diveintohtml5.info)
  • Marijn Haverbeke, "Eloquent JavaScrip", No Starch Press, 2014 (Online: http://eloquentjavascript.net)
  • Oliver Ochs, "JavaScript für Enterprise-Entwickler, Professionell programmieren im Browser und auf dem Server", dpunkt, 2012
  • Peter Gasston, "The Book of CSS3 - A Developer’s Guide to the Future of Web Design", 2nd Edition, No Starch Press, 2014
  • Andy Budd, Emil Björklund, "CSS Mastery", Third Edition, Apress, 2016 (Online verfügbar im Hochschulnetz)
  • Ethan Brown, "Web development with Node and Express", O’Reilly, 2014
  • Robert Prediger, Ralph Winzinger, "Node.js : Professionell hochperformante Software entwickeln", Hanser, 2015 (Online verfügbar im Hochschulnetz)
  • Weitere Literatur wird in der Vorlesung bekanntgegeben.

Als Vorbereitung auf einzelne Vorlesungseinheiten wird das Selbststudium grundlegender Inhalte mittels der Begleitliteratur vorausgesetzt (relevante Kapitel werden in der Veranstaltung angekündigt). Weitere eigenständige Arbeitsanteile betreffen die Nachbereitung der Vorlesungsinhalte und die Klausurvorbereitung.

Lehrveranstaltung Verteilte Systeme 1 Labor

INFB332

Labor

Prof. Dr. Christian Zirpins

deutsch

2/1

60 Stunden gesamt, davon 15 Stunden Kontaktstudium.

Laborarbeit 1 Semester (nicht benotet)

Im VS1-Labor erfolgt die praktische Anwendung verschiedener grundlegender Web Technologien. Die Auswahl folgt den Themen der VS1-Vorlesung. Im Labor wird in mehreren Schritten eine komplette Web Anwendung erstellt. In jedem Schritt wird jeweils ein Bereich von Web Technologien genauer betrachtet. Dadurch werden gezielt Kompetenzen bezüglich Verständnis und Anwendung von Web Technologien gefördert, u.a. in den Bereichen deklarativer Sprachen wie HTML, CSS, und JSON, der Programmierung mit JavaScript auf Client- und Serverseite sowie spezieller Technologien für Single-Page-Anwendungen und REST-Architekturen.

  • Semmy Purewal, "Learning Web App Development", O’Reilly, 1. Auflage, 2014
  • David Gourley, Brian Totty, "HTTP: The Definite Guide", O’Reilly, 2002
  • Mark Pilgrim, "HTML5 Up and Running", O’Reilly, 2010 (Online: http://diveintohtml5.info)
  • Marijn Haverbeke, "Eloquent JavaScrip", No Starch Press, 2014 (Online: http://eloquentjavascript.net)
  • Oliver Ochs, "JavaScript für Enterprise-Entwickler, Professionell programmieren im Browser und auf dem Server", dpunkt, 2012
  • Peter Gasston, "The Book of CSS3 - A Developer’s Guide to the Future of Web Design", 2nd Edition, No Starch Press, 2014
  • Andy Budd, Emil Björklund, "CSS Mastery", Third Edition, Apress, 2016 (Online verfügbar im Hochschulnetz)
  • Ethan Brown, "Web development with Node and Express", O’Reilly, 2014
  • Robert Prediger ; Ralph Winzinger, "Node.js : Professionell hochperformante Software entwickeln", Hanser, 2015 (Online verfügbar im Hochschulnetz)
  • Weitere Literatur wird in der Vorlesung bekanntgegeben.