Distributed and Outsourced Software Engineering

Peter Kolb, Bertrand Meyer (Fall semester 2008)

 

General info: Course description | Course books
Lectures: Schedule

General info

News

26.11.2008 Movies of lectures 1-7 have been added in iPod format: movies.
26.11.2008 The course evaluation will take place next week during the lecture (Wed. 03.12).
26.11.2008 Movies lecture 11 are on-line: movies.
20.11.2008 Movies lectures 9 and 10 are on-line: movies.
05.11.2008 Movies lecture 8 are on-line: movies.
30.10.2008 Assignments 3 and 4 are on-line: Assignment 3 Assignment 4.
29.10.2008 Movies lecture 7 are on-line: movies.
22.10.2008 Movies lecture 4, 5 and 6 are on-line: movies.
14.10.2008 Assignment 2 is on-line: Assignment 2. Deadline is Thursday, October 23rd, 10am.
06.10.2008 Movies have been added in a new format (they include slides + movie). See Schedule
01.10.2008 The first assignment is on-line: Assignment 1. Deadline is Tuesday, October 14th, 10am.
01.10.2008 The origo project dose2008 will be used as software development and collaboration platform. If you are not part of this project, send your origo id to Martin Nordio.
01.10.2008 Movie lecture 3 is on-line: movie.
23.09.2008 Added link to BTW project description
18.09.2008 Movies lecture 1 are on-line: first part, second part. Added slides exercise session 1.
17.09.2008 Updated slides lecture 1, added link to paper: "Design and code reviews in the age of the internet"
16.09.2008 Updated Grading: 70% Project - 30% exam. Written exam on Wed. 17.12.2008 - RZ F21 - 8:15-10:00.
02.06.2008 The web page was created. See course description

Course description

Distributed and Outsourced Software Engineering

Web page at the computer science department: 251-0273-00

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.

Grading

GRADING

  • 70% Project - 30% exam. Written exam on Wed. 17.12.2008 - RZ F21 - 8:15-10:00.

 

Recommended books

  • Michael Jackson: Requirements & Specifications,1995, Addison Wesley, ISBN: 0-201-87712-0

Further reading

About Software engineering:
  • Bertrand Meyer: Object-Oriented Software Construction, 2nd edition, Prentice Hall, 1997.
  • Barry W. Boehm: Software Engineering Economics, Prentice Hall, 1981.
  • Fred Brooks: No Silver Bullet - Essence and Accident in Software Engineering, in Computer (IEEE), vol. 20, no. 4, pages 10-19, April 1987.
  • John B. Goodenough and Susan Gerhart: Towards a Theory of Test: Data Selection Criteria, in Current Trends in Programming Methodology, ed. Raymond T. Yeh, pages 44-79, Prentice Hall, 1977.
  • Peter Naur: Programming with Action Clusters, in BIT, vol. 3, no. 9, pages 250-258, 1969.
  • Shari Lawrence Pfleeger and Joanne M Atlee: Software Engineering, 3rd edition, Prentice Hall, 2005.
  • SEI (Software Engineering Institute): CMMISM for Software Engineering, Version 1.1, Staged Representation (CMMI-SW, V1.1, Staged), 2005.
About Requirements engineering: About patterns:
  • Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995, ISBN 0201634988
  • Karine Arnout's Ph.D. thesis: From Patterns to Components. Click here

 

Lectures

Schedule

Day

Time

Room

Wednesday 08:00-10:00 RZ F21

Project

The project will be managed using the Origo project management framework

PROJECT FILES

Requirements Specification

  • Project Template: Software Requirements Spec .pdf, .doc, .rtf
  • A Checklist for a Requirements Specification Review .pdf
  • Slides of Writing Effective Requirements Specifications .pdf

Quality assurance plan

Examples of Requirements Specification Documents

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

PROJECT DEADLINES

  • Assignment 2 - October 23rd: First Requirements Document
  • Assignment 3 - October 29th: Questionnaire
  • Assignment 4 - November 13th: Revise requirements and API within the group
  • Assignment 5 - December 19th: Final implementation, final requirements document

BTW project description

 

Slides

Exercises

Schedule

Day

Time

Room

Thurday 10:00-11:00 RZ F21

Assistant

Assistant

Office

Phone

Language

Martin Nordio RZ F9 044 632 02 97 English
Roman Mitin RZ H 22 044 632 72 90 English

Slides

Date

Title

18.09.2008 Design by Contract
25.09.2008 Outsourcing your project to Russia

Assignments

Title

Deadline

Assignment 1 09.10.2008
Assignment 2 23.10.2008
Assignment 3 29.10.2008
Assignment 4 13.11.2008

 

 

Last update: 2008-11-05