VVZ API is not affiliated with ETH Zurich. Data might be outdated or incorrect. Please view the official ETHZ Vorlesungsverzeichnis for binding information.

273-0002-00L 4 Credits WBZ D-INFK
You're viewing possible stale or outdated data. Please check the latest semester for more up-to-date information.

Software Engineering Fundamentals

Lecturers & Examiners: Dr. Hermann Lehner, Dr. Malte Schwerhoff
VVZ CR n/a

Last Updated: 2026-06-01 11:33:05

Abstract

This course provides a comprehensive overview of the software development process, introducing participants to essential techniques for facilitating the delivery of high-quality software products. The knowledge and practical experience gained will help managers to improve communication with software development teams, ultimately leading to higher success rates.

Objective

Main objectives for participants are: - Gain a big-picture understanding of the software development process - Develop an intuition for common challenges and solution strategies - Be able to contextualise and employ standard terminology - Apply key solution techniques to address real-world programming challenges

Content

We will examine the different stages of software development and lifecycle to better understand the challenges of managing software development projects, and the principles and processes used to address them. This will include topics such as requirements elicitation, modelling, design patterns, implementation decisions and trade-offs, testing, refactoring, and maintenance and enhancement of software products. A team project will give participants the opportunity to apply the techniques introduced and to experience common software development challenges first-hand: for example, difficulties in eliciting technically meaningful requirements, integrating change requests, and managing an evolving code base. In this course, we will reverse the roles: participants will take on the task of delivering high quality software under our supervision. In this way, participants will gain a deeper understanding of the challenges of software development.

General Information

Language
English
Levels
WBZ
Frequency
Semesterly recurring

Examination

Type
ungraded semester performance
The grade will be determined by a mandatory programming project: Developing an application in small teams. The project comprises several subtasks, which must be successfully solved in accordance with their respective task descriptions. Failing to do so can result in failing the course.

Registration & Places

Priority: Registration for the course unit is only possible for the primary target group

Course Components

Type Title Time & Place Hours
lecture Software Engineering Fundamentals
Block course
  • 11.04 Date 08:15-17:00 (LEE E 101)
  • 12.04 Date 08:15-13:00 (LEE E 101)
  • 09.05 Date 08:15-17:00 (HG E 3)
  • 10.05 Date 08:15-13:00 (LEE E 101)
  • 23.05 Date 08:15-17:00 (LEE E 101)
  • 24.05 Date 08:15-13:00 (LEE E 101)
  • 13.06 Date 08:15-15:00 (HG E 3)
36 h semesterly

Offered In