Software Engineering for Business Applications - Master's Course: Web Application Engineering (IN2087)
Lecturer (assistant) | |
---|---|
Number | 0821081676 |
Type | lecture with integrated exercises |
Duration | 4 SWS |
Term | Sommersemester 2025 |
Language of instruction | English |
Position within curricula | See TUMonline |
Dates | See TUMonline |
- 28.04.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 30.04.2025 14:15-15:45 Online: Videokonferenz / Zoom etc.
- 05.05.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 12.05.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 14.05.2025 14:15-15:45 Online: Videokonferenz / Zoom etc.
- 19.05.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 26.05.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 02.06.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 04.06.2025 14:15-15:45 Online: Videokonferenz / Zoom etc.
- 16.06.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 23.06.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 30.06.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 07.07.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 14.07.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
- 21.07.2025 14:00-16:00 102, Hörsaal 2, "Interims I"
Admission information
Objectives
Description
1. Web Site Genres
2. Web Site Design Process & Patterns
3. Developing Single-Page Web Applications
4. Building Single-Page Applications with a Specific Web Application Framework
5. Building REST-enabled Back-End Services
6. Advanced Topics in Web Application Engineering
7. High Performance Web Applications
Prerequisites
Module IN0006
Examination
- Assessment based on presentations, (written) deliverables, and answers to questions to topics presented in the lecture, team work, etc.
- There is no final written exam
Links
Course Registration
- Please register regularly for the course via TUMonline, later on all information will be provided via Moodle.
- The registration on TUMonline will be open from 03.03. until 18.04. There is no FCFS.
- Course allocations will be announced until 18.04.
- Deadline for team registrations is the 04. of Mai (see Organization of the Module below).
- Information Systems M.Sc. students receive a gurranteed place. Students from all other study programs will receive the remaining places (if there are any).
In the past years only a tiny percentage of non Information Systems M.Sc. students received a place! - If you've just finished your bachelor degree and about to start your Information Systems, M.Sc. but are not officially enrolled yet on TUMonline, please send an email to seba-master.sebis(at)tum.de with your letter of admission.
Organization of the Module
The lectures will be held onsite in Garching. The interactive central exercises (optional) will be held online via Zoom.
Assignments will be distributed via Moodle and must be handed in at the respective deadlines via GitLab.
The graded presentations will be held onsite in Garching.
This module is declared as project work and consists of a lecture and a practical part. The practical part (project) is conducted through multiple assignments where students come up with a business idea and develop a web application using the MERN stack thereby applying the concepts presented in the lecture and central exercise.
The project will be done in teams consisting of exactly four students. In general, registered students are randomly assigned teams. However, students will also be able to form a team.
Due to capacity constraints regarding supervision the amount of total places is limited to 160 (40 teams). Since this module is mandatory for students of Information Systems (M.Sc.), they are given precedence.
Over the course of the semester, we will have 3 presentation blocks. Each presentation block lasts 3-4 days and has approx. 12 slots in total (~3-4 slots per day). We will assign each student team to one of these 12 slots for each presentation block. Each team must be present only in its assigned slot. In each slot there will be 4 student teams, each of them having max 20 min for presentation and discussion.
Content
The master course SEBA Master: Web Application Engineering provides the necessary theoretical foundations to design and develop state-of-the art web applications. Next to the technical aspects to develop applications for the web, business aspects are covered with the most common business models and explained with real-world examples.
The students learn how to design web sites from the scratch including patterns for recurring problems. Technical aspects for the development of web applications are presented along with generic platforms and architectures. Students participating in the exercise apply this knowledge in individual projects that cover all aspects from the lecture with the design and development of a web application.
- Web Site Genres
- Business Models on the Web
- Web Site Design Process & Patterns
- Key Issues of Customer-Centered Web Design
- Knowing Your Customers
- Involving Customers with Iterative Design
- Additional Viewpoints and Aspects
- An Overview of Web Design Patterns
- Developing Single-Page Web Applications
- HTML & CSS Concepts
- JavaScript Basics
- Web Components
- Single-Page Applications
- Developing Single-Page Web Applications with React
- Web Application Framework Comparison
- Basic Concepts of the Chosen Framework
- State Management
- Navigation and Routing
- Client-Server Communication
- Consuming RESTful Services
- Building REST-enabled Backend Services
- Target architecture and development environment
- Event-driven architecture and asynchronous I/O operations with node.js
- Creating REST interfaces using Express
- Using document oriented database storage: MongoDB example
- Enabling user authentication on the web service using JSON web token (JWT)
- Advanced Topics in Web Application Engineering
- Real-time Web Applications
- Hybrid Web Applications
- High Performance Web Applications
- Database options for web applications
- Scaling web applications
Lecture and exercise dates
Number | Date | Time | Room | Topic / Content |
---|---|---|---|---|
L01 | 28.04.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 0 Introduction 1 Web Site Genres |
D01 | 30.04.2025 | 14:15 - 15:45 | Zoom | FAQ A1 |
L02 | 05.05.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 2 Web Site Design Process & Patterns |
P01 | 06.05.2025- 09.05.2025 | 09:00 - 17:00 | onsite / Zoom | Feedback Appointment with Advisor: Business Idea, VPC, and BMC |
A01 | 11.05.2025 | 23:59 | GitLab | Submission Deadline A1 |
L03 | 12.05.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 3 Developing Single-Page Web Applications |
D02 | 14.05.2025 | 14:15 - 15:45 | Zoom | FAQ A2 |
L04 | 19.05.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 4 Developing Single-Page Applications with a Specific Web Application Framework (React) |
A02 | 25.05.2025 | 23:59 | GitLab | Submission Deadline A2 |
L05 | 26.05.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 5 Building REST-enabled Backend Services |
P02
| 27.05.2025 | 09:00 - 20:00
| onsite (Garching)
| Presentation A2
|
28.05.2025 | ||||
30.05.2025 | ||||
L06 | 02.06.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 6 Advanced Topics in Web Application Engineering |
D03 | 04.06.2025 | 14:15 - 15:45 | Zoom | FAQ A3 + Project Setup |
L07 | 16.06.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | 7 High Performance Web Applications - Part 1 |
Special Guest: usd AG | 30.06.2025 | 14:15 - 15:45 | Interims I, Hörsaal 2 (Garching) | Web App Vulnerabilities & Security Testing |
A03 | 20.07.2025 | 23:59 | GitLab | Submission Deadline A3 |
P03 | 29.07.2025 | 09:00 - 20:00 | onsite (Garching) | Final Presentations |
30.07.2025 | ||||
31.07.2025 | ||||
01.08.2025 |
Assessment Method / Grading
The student's performance is primarily assessed on the basis of presentations and deliverables in the context of a project work assignment consisting of three milestones.
The individual milestones are defined as follows:
- Business Idea and Business Model (10%)
Contents of the assessment:- Identifying, explaining and developing business models in the web
- Develop your business model with BMC and describe your product's value proposition
- Presentation of your specific business model
- Customer Journey, Personas, Mockups, Data Model (15%)
Contents of the assessment:- Selecting and applying patterns for web application design
- Explaining a user-centered, iterative development process and applying it in a team
- Create your software architecture by using UML standards
- Explaining and selecting state-of-the-art technologies for the implementation of web applications
(This encompasses both client- and server-side aspects) - Explain the main features of your web application by creating a customer journey
- Create mockups which cover your customer journey
- Final Prototype (75%)
Contents of the assessment:- Quality and complexity of your developed web application
- Explaining web-based integration techniques
- Presenting scientific topics to an audience
- Presentation of the final prototype of your web application
Additional skills: Presentation, rhetoric, team communication, project work
Each team presents the results of each assignment in a 10-minute (20 for final) presentation, followed up by a 10-minute discussion.
Prerequisites
Knowledge and skills at the bachelor's level (Informatics/Business Informatics) in software engineering, programming and databases.
Intended Learning Outcomes
At the end of the module students understand successful patterns of customer-centric web sites, and they are able to explain their business and social impacts. They understand the technological challenges that arise in the implementation of industrial strength web applications. They are able to address purposefully these technological challenges using commercial and open source systems and technologies as well as proven technical architectures. At the end of the lecture they have sufficient knowledge to contribute to scientific and development projects in this area.
References
“Exploring ES6” – Axel Rauschmayer, Ecmanauten, http://exploringjs.com/es6/
“Business model generation: A Handbook for Visionaries, Game Changes, and Challenges” - Alexander Osterwalder, Yves Pigneur, John Wiley & Sons, 2010
“Don't make me think! Web Usability: Das intuitive Web” - Steve Krug, New Riders Press; 2 edition, 2005
“Designing the Obvious. A Commonsense Approach to Web Application Design” - Robert Hoekman, New Riders Press; 1 edition, 2006
JavaScript Tutorial - https://javascript.info/
„Express – Web Framework for Node.js“ – http://expressjs.com/
„Official React Tutorial “ – react.dev, https://react.dev/learn