Module summary
Module name:
Internal number:
Coordinator:
Extent:
Semester:
Pre-requisites with regard to content: none
Pre-requisites according to the examination regulations:
none
Competencies:

The students acquire knowledge about techniques and concepts of distributed systems using the example of web applications. In particular, they acquire skills to explain the general architecture of the Internet and the Web, to analyze requirements of a Web application, to create an interactive Web application with HTML, CSS and client-side JavaScript, to identify security issues in a Web application and to develop server-side code for application services with authentication, cookies and sessions.

Assessment:
Individual exams
Course: Distributed Systems 1
Internal number: INFB2317 Type/mode: Lecture
Lecturer:
Prof. Dr. Christian Zirpins
Language of instruction:
German
Credits (ECTS): 2 Contact hours: 2
Workload: 90 hours (30 hours presence, 60 hours self-contained work) Assessment: Written Exam 90 Min. (graded)
Content:

The course provides a practical introduction to the concepts and paradigms of distributed systems using the example of web technologies and application development on the web. This initially involves an introduction of the world wide web with basic protocols such as HTTP and other standards in the context of the Internet. After that an introduction to the design and construction of web applications is provided. This includes firstly the frontend development with HTML5, CSS3 as well as client-side JavaScript and secondly the backend development with server-side JavaScript on the Node.js platform. Interactions between frontend and backend follow modern REST/HTTP and AJAX techniques. In addition, mechanisms for personalization with cookies and sessions as well as to authenticate users are presented. The course closes with a detailed discussion of web application security.

Recommended reading:
  • 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)
  • 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)
  • Additional literature will be announced during the lecture
Comments:

In preparation for individual lecture units, the self-study of basic content is required by means of the accompanying literature (relevant chapters will be announced in the event). Further independent work concerns the follow-up of the lecture contents and the exam preparation.

Course: New Lecture
Internal number: INFB2327 Type/mode: Laboratory
Lecturer:
Prof. Dr. Christian Zirpins
Language of instruction:
German
Credits (ECTS): 2 Contact hours: 1
Workload: 60 hours (15 hours presence, 45 hours self-contained work); Assessment: Exercise 1 Semester (not graded)
Content:
Recommended reading:
Comments: