Distributed and Outsourced Software Engineering

Peter Kolb, Bertrand Meyer, Martin Nordio, Fall 2011



12.12.2011 — Assignment 5 has been added. Updated lecture slides.

29.11.2011 — Slides from guest lecturer Prof. Kiniry have been added.

08.11.2011 — Added Assignment 4. Updated lecture schedule.

02.11.2011 — Added Assignment 3.

18.10.2011 — Added Assignment 2.

04.10.2011 — Lecture videos are avaible. Vidoes were recored 2010. For newly presented material we will upload new videos throughout the semester.

22.09.2011 — Added Assignment 0.

16.09.2011 — The first exercise session is on Tuesday 27.09 at 9:15am (there is no exercise session on 20.09).

23.08.2011 — The web page was created. See also last year's page

Course description

252-0239-00L Distributed and Outsourced Software Engineering

Web page at the computer science department: 251-0273-01L

Article about the course

A remarkable phenomenon is affecting the software development scene: the massive transfer of developments to countries such as India and Russia offering highly qualified manpower at rock-bottom salaries. The outsourcing business is already in the hundreds of billions of dollars, causes employment fears among Western programmers, and has consequences on just about every aspect of software development (including education). Offshoring also serves as a magnifier of most of the issues of software engineering, including for example requirements analysis and quality control.

This course explores the offshoring phenomenon from a technical software engineering perspective, providing a set of guidelines for making outsourced projects succeed, through both management approaches (in particular the CMMI) and technical solutions in areas of requirements, specification, design, documentation and quality control. The presentation is based on experience of outsourcing at ABB and other companies.

The participants will take part in a case study exploring techniques for making an offshored project succeed (or recover from problems).

This course provides students with a clear view of the offshore software development phenomenon, enabling them to participate successfully in projects outsourced partially or totally, and also helping them define their own career strategies in the context of outsourcing's continued growth.

A Distributed Project

The course project will be in collaboration with 10 universities. The universities involved in the project are:


Course books

Further reading

About Software engineering: About Requirements engineering: About patterns:


Day Time Room
Tuesday 10:00-12:00 IFW A 32.1


The project will be managed using the Origo project management framework

The course project is located at http://dose2011.origo.ethz.ch/


Requirements Specification

Quality assurance plan

Examples of Requirements Specification Documents

These documents are examples of good requirements specification documents. They were developed by last year students. However, they do not include API specifications.


On the Origo page



Date Lecture Title Video Slides Readings
20.09.2011 1 Introduction to the topic of Offshoring and Outsourcing in software development available Final version Intro Overview article: The Unspoken Revolution in Software Engineering Bertrand Meyer, 2006 Design and code reviews in the age of the internet Bertrand Meyer, 2008
27.09.2011 2 Offshoring and Outsourcing in software development II    
04.10.2011 3 Requirements Engineering I available Final version requirements On Formalism in Specifications, Bertrand Meyer, IEEE Software, January 1985.
11.10.2011 4 Requirements Engineering II  
18.10.2011 5 Challenges and practical advice for distributed projects available Final version Challenges  
25.10.2011 6 Introduction to CMMI and CMMI Exercise available Final version CMMi CMMi Excercise Questions, Pages 100-500 of CMMi Version 1.2.
01.11.2011 7 CMMI Generic Goals and Practices    
08.11.2011 8 Cost Model for Outsourcing available Final version Cost Model  
15.11.2011 9 Risk Management available Final version Risk Management  
22.11.2011 10 Management for Outsourced Projects available Final version Project Management Model for Outsourced Projects  
29.11.2011 11 Guest lecture: Prof. J. R. Kiniry available Final version DOSE/GSE concretized  
06.12.2011 12 Agile Methods   Final version Agile Slides  
13.12.2011 13 Guest lecture: PricewaterhouseCoopers      
20.12.2011 14 Project Presentations      



Day Time Room
Tuesday 8:00-10:00 IFW A 32.1


Assistant Office Phone Language
Christian Estler RZ J8 044 632 76 84 German / English


Title Deadline
Assignment 0: Set up 05.10.2011
Assignment 1: Scope Document 18.10.2011
Assignment 2: Requirements 01.11.2011
Assignment 3: API Design 08.11.2011
Assignment 4: Implementation 13.12.2011
Assignment 5: Testing 19.12.2011

Valid XHTML 1.0 Strict