Practical Course in Advanced Software Engineering (INF-SWEP)

practical training Practical Course in Advanced Software Engineering SS 45 h (3 SWS) 135 h 6 CP

6 credit points are awarded for this module. The attendance time is 3 hours a week. Including self-study, there are about 180 hours to be spent.

Type elective module with compulsory module components
  • Eligible for module INF-PfTI (Practical Course in Advanced Topics in Computer Science) for following courses:
    INF-M-120 (Masters Programme Computer Science),
    MINF-M-120 (Masters Programme Media Informatics),
    MINF-M-120-KW: (Masters Programme Media Informatics with Communication Science),
    MINF-M-120-MCI: (Masters Programme Human-Computer Interaction),
    MINF-M-120-MG: (Masters Programme Media Informatics with Media Design),
    MINF-M-120-MW: (Masters Programme Media Informatics with Media Economy)
  • Eligible for module INF-B-VT1 oder INF-B-VT2 (Special Topics for Bachelor I/II) for following courses:
    INF-B-120 (Bachelors Programme Computer Science with 60-CP Minor Subject),
    INF-B-150 (Bachelors ProgrammeInformatik with 30-CP Minor Subject),
    INF-B-180-CL (Bachelors Programme Computer Science plus Computer Linguistics),
    INF-B-180-MA (Bachelors Programme Computer Science plus Mathematics),
    INF-B-180-STAT (Bachelors Programme Computer Science plus Statistics),
    MINF-B-180 (Bachelors Programme Media Informatics)
  • Eligible for module INF-PP (Practical Programming) as Practical Course for scheduled development of a larger software system according to LPO I in following courses:
    INF-LGY (Teaching Gymnasium),
    INF-LRS (Teaching Realschule)
Admission Requirements In the normal case the successful completion of:
  • Software Engineering (INF-SWT)
  • Practical Course in Software Development (INF-SEP) or Practical Training in Operating System Development (INF-SysP)

Students who did not complete the exam for INF-SWT can still participate in this modul if they

  • know the content of INF-SWT (own confirmation is sufficient) and
  • completed a Java-based SEP (e.g., not Inf-SysP).
Time during the study Look at the description of the eligible module
Duration The module comprises 1 semester.
Grading marked
Type of Examination Practical performance
Repeatability: arbitrary, Admission Requirements: none
Responsible for Module Prof. Dr. Dirk Beyer
Provider Ludwig-Maximilians-University Munich
Faculty for Mathematics, Computer Science and Statistics
Institute for Computer Science
Core Computer Science
LFE Software and Systems Engineering
Teaching Lang. German or Englisch (some contents only available in english)


The practical course consits of two parts: Within the first three semester weeks there is a lecture part, where an introduction of the used methods and technology of the practical course is shown.

Afterwards the actual practical training begins. It takes places in teams with 5-7 persons. The team gets the exercice of developing a specific software system (Java application, mostly web-based). A structured process for software developement must be adhered to here (based on agile project management and Srum). Every team get a chair staff as team advisor, who also takes the role of the product owner.

The practical part consists of multiple sprints and two weekly meeting with the team (online or in presence) where the team is self responsible for sprint planing and performs similiar exercises. During the meeting the team advisor is present. During the sprints, the participants are working on the assigned tasks until the corresponding deadline and collaborate with e.g. code reviews. For the whole organisation a platform with version control, issue tracker, continous integration, etc. is used. The practical course ends with a final presentaion of the project.

Marked is not only the functionality of the developed software system, but also especially:

Previous knowledge

The requirements for the participation on this practical course is the mastery of the programming language Java and associated developement tools like IDEs. In more detail this means that not only the understanding of the syntax and semantics of Java is sufficient, but also having knowledge about the classes of the Java-SDK (especially Collections framework and network functionality) is required and the skill to learn for yourself further libraries and frameworks.

Also helpful is

Qualification Aims

The aim of the development practical course is to learn modern methods for development of larger software systems including their pracitcal applicaiton. There will be different techniques and tools presented and trained, which are useful for the development of medium-sized and larger software projects. The participants must apply these methods to work structured and develop in collaboration a software system.