Software Architecture

Bertrand Meyer and Michela Pedroni, spring semester 2010

General info: News | Course description | Course project | Literature | Testat and exam | Forum | Downloads
Lecture: Hours | Schedule and slides
Exercises: Hours | Exercise slides | Assignments | Assistants

General info


10.5.2010 Self-study material on concurrency is online: study material, quiz for SCOOP; study material, quiz for Java threads.
30.3.2010 Updated slides of design patterns.
15.3.2010 Today's exercise session of Jason's group will be in IFW A32.1 (together with Martin's group).
12.3.2010 Added link to an additional SRS template which has a description of each section to the download section. If you need more information on what each section should contain, take a look at that document.
8.3.2010 PDF, DOC and RTF SRS templates available from the download section.
7.3.2010 Added slides for lecture 4.
5.3.2010 Added example requirements documents to downloads section.
Updated list of project groups.
4.3.2010 Updated list of project groups.
29.2.2010 Updated list of project groups.
29.2.2010 Today's exercise session of Martin and Julian will both be in IFW A32.1.
28.2.2010 See the list of project groups to see in which exercise session you are. If you are not yet in a project group, send an email to Julian Tschannen.
25.2.2010 Link to Eiffel Tutorial added.
24.2.2010 Project description is now online.
21.2.2010 Updated schedule and literature.
19.2.2010 The first exercise session will be held in the second week, Monday 29.02.2010. So, there will be no exercise session on Monday, 22.02.2010 15:15-18:00. This does not affect the lectures: they start on Monday, 22.02.2010 8:15-10:00.
18.2.2010 Published a tentative schedule for the lectures.
21.12.2009 First preliminary version of web page. The schedule, assistants and exercise session venues are incomplete and tentative.

Course description

Software Architecture, 252-0212-00L

Although "Software Architecture" has been offered for several years, the present form of the course is new. The scope covers both software architecture in a strict sense and an introduction to the non-programming aspects of software engineering. For the full course description see the official ETH catalog entry.

Course Project

Project description: here.


The following are the two recommended textbooks for the course:

  • Bertrand Meyer: Object-Oriented Software Construction, Second Edition, Prentice Hall, 1997 ISBN 0-13-629155-4
  • Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995, ISBN 0201634988

It is also recommended that you use a good software engineering textbook, such as:

Additional reference on patterns:

  • Karine Arnout: From Patterns to Components, Ph.D. thesis, 2004. (See publications)

References on UML:

  • James Rumbaugh, Ivar Jacobson, Grady Booch: The Unified Modeling Language Reference Manual. Addison-Wesley Professional, ISBN 978-0321245625
  • Grady Booch, James Rumbaugh, Ivar Jacobson: The Unified Modeling Language User Guide. Addison-Wesley Professional, ISBN 978-0201571684
  • Martin Fowler: UML Distilled. A Brief Guide to the Standard Object Modeling Language. Addison-Wesley Professional, ISBN 978-0321193681
  • A web service for generating UML sequence diagrams


Testat and Exam

Programming Aptitude Test

The programming aptitude test will take place during one of the exercise sessions on Monday afternoon.


The exam will be written and will take place during the last lecture of the semester. No supplementary material is allowed except for dictionaries.

Previous Software Architecture exams are available here: Warning: the course in previous years had a narrower scope (software architecture only), with only 2 hours of lecture one 1 exercise hour, against the present 4 + 3 hours. As a consequence, past years' only give a partial view of what will be asked this year.


  • None yet.


You can use the forum to ask course- and exercise-related questions. The assistants will do their best to answer your questions as soon as possible. Click here to access the forum!.

The forum is maintained not by us but by the Informatics Students Association (VIS).



Lecture hours




Monday 8:00-10:00 IFW A36
Tuesday 14:00-16:00 IFW A36


  Lecture schedule and slides


  • The exercise sessions will start on 29.02.2010 only. There will be no exercise session on Monday, 22.02.2010.

Exercise hours




Monday 15:00-18:00

see corresponding assistant


Exercise Sessions




01.03.10 Introduction SVN FIT
08.03.10 ADT Introduction Intro Exercise Solution
15.03.10 ADT exercises Tic-Tac-Toe: Exercise Solution
Map: Exercise Solution
29.03.10 Design patterns exercise Exercise Solution
Testing exercise
Exercise and Solution
03.05.10 UML diagrams exercise Exercise Solution


Date issued

Date due








Exercise room


Martin Nordio RZ J3 044 632 02 97 15:00 - 18:00
IFW A32.1
Stephan van Staden RZ J5 044 632 77 04 15:00 - 18:00
Yi Wei (Jason) RZ J5 044 632 69 57 15:00 - 18:00
ML F40
Julian Tschannen RZ J3 044 632 44 49 15:00 - 18:00
ML H43
German / English