Fortgeschrittene Konzepte verteilter Datenbanken - Programming Database Web Applications

Offered To


  • Module Number: IN2140
  • Credits: 4

Date of First Meeting

The course will start online this semester on Zoom. If the COVID situation permits, we will switch to on-site teaching during the semester. Please register on TUM Online as the links for the Zoom meeting will be sent to registered participants via e-mail. You may still de-register yourself from the course until 31st October.

  • Date - 19th October, 2021
  • Time - 10:00 A.M.
  • Room - Zoom Meeting

Date of Second Meeting

  • Date - 26th October, 2021
  • Time - 10:15 A.M.
  • Room - Zoom Meeting


Registration and De-Registration

Registrations are now open on TUM Online

  • De-Register By - 23:59 P.M. 31st October, 2021
  • Note - The students who fail to de-register by the aforementioned date will be issued grade 5.0 automatically.


Web applications are structured in the following way: The user interface runs within a web browser on the client’s machine and most of the business logic runs within a web service on a server. The application is divided into three layers: Client, server and database. This course teaches implementation techniques for all three layers:

  • Client: JavaScript, VBScript, Flash, OpenLaszlo
  • Server: Java (Struts, Spring MVC, JSF), Ruby, PHP, Python, Perl
  • Database: O/R mapping, SQL, XQuery
These techniques are often either agile and support fast prototyping, which allows the rapid release of new versions or they are systematic, which allows for careful design but requires longer release cycles.

Intended Learning Outcomes

After having successfully completed this module, the students have gained the knowledge to plan, design and implement web applications. In addition, they are able to identify valuable business models for web applications. After the course, they have gained experience with the three layers of a web applications (client, server and database). Each student has gained hand-on experience in implementing a web application in a sample project. This praxis oriented approach allows the students to get a deep insight into the technology. This way the students are able to identify and explain the same technologies in different architectures.
Finally, the students learn about user centric, iterative project management by using it in a small team. This helps the students in improving their soft skills within a team.

Explanation of the grading system

Each student is assigned to a group. Each group is self managed and develops their own web application. The overall grade is composed of four project parts and their presentation. The parts of the project are as follows:

  • In the beginning of the course, the students develop their own business ideas for a web application within their assigned group. These ideas have to differ from existing concepts. This step includes an analysis of the current market situation, to allow the students to assess the practicability and the profitability of the idea.
  • Once the business idea is found, the students have to plan the realization of the project and document the progress with artifacts (UML diagrams, project plan, mock-ups). The groups should focus on a user centric iterative project management.
  • Based on the mock-ups, a first prototype of the web application has to be developed. To achieve this, the groups should use modern technologies to realize the three-layered architecture (client, server, database). The selected technologies and their usage should be justified.
  • In this last step, the final version of the web application, including the results of the previous steps must be presented in front of an audience. A demonstration of the developed prototype is part of the presentation. The correct functionality of the developed software is a critical part of the work. Each student should be part of the presentation and be capable of answering questions about the project (the developed system, the project plan and the design documents). In addition, the project management and communication within the group is important.


  • IN0001: Einführung in die Informatik 1
  • IN0006: Einführung in die Softwaretechnik
  • IN0008: Grundlagen: Datenbanken

Reading List

  • Bauer, G.: Architekturen für Web-Anwendungen: Eine Praxisbezogene Konstruktions-Systematik (ISBN: 3834805157)
  • Zillgens, Ch.: Responsive Webdesign: Reaktionsfähige Websites gestalten und umsetzen (ISBN: 3446430156)
  • Saternos, C.: Client-Server Web Apps with JavaScript and Java (ISBN: 1449369332)
  • Purewal, S.: Learning Web App Development (978-1-4493-7019-0)
  • Manuale online