Dario Martin Nordio: Catalogue data in Autumn Semester 2014

Name Dr. Dario Martin Nordio
Address
Professur für Software Engineering
ETH Zürich, RZ J 3
Clausiusstrasse 59
8092 Zürich
SWITZERLAND
DepartmentComputer Science
RelationshipLecturer

NumberTitleECTSHoursLecturers
252-0273-01LDistributed Software Engineering Laboratory Information
In the Master Programme max. 10 credits can be accounted by Labs
on top of the Interfocus Courses. Additional Labs will be listed on the Addendum.
8 credits2V + 2U + 3AB. Meyer, P. Kolb, D. M. Nordio
AbstractThe Distributed Software Engineering Laboratory introduces the software engineering principles and techniques appropriate for the increasingly prevalent style of modern software development, involving teams spread across teams, companies and countries.

The course involves a distributed project conducted in cooperation with student teams from other universities.
ObjectiveModern software development is increasingly *distributed*: projects are developed by different groups collaborating across teams, companies, countries, timezones. This setup radically alters the assumptions underlying many of the traditional views of software engineering.

The Distributed Software Engineering Laboratory introduces the principles and techniques for this new paradigm. In line with the "distributed" nature of the topic, the project is performed in collaboration with student teams from other universities in various countries.This course provides students with a clear view of distributed software development, enabling them to participate successfully in distributed projects, and also helping them to devise their own career strategies in the context of the continued trend towards outsourcing.
ContentBasics of distributed development

The outsourcing phenomenon; country review.

Requirements engineering for distributed projects

Quality assurance for distributed projects.

Process models (especially CMMI) and agile methods

Supplier assessment and qualification.

Negotiating a contract for a distributed project.

Software project management for distributed projects.

Role of interfaces and other technical issues of distributed development.


A key part of the Laboratory is the course project, performed in groups involving teams from other universities. Students get to practice distributed developmemt directly, experiencing issues and applying techniques presented in the course.

The exercise sessions usually start at 9am.
Lecture notesThe course page includes the full set of slides and links to supplementary documentation.
Prerequisites / NoticePrerequisites: Basic understanding of programming.
252-2601-02LSoftware Engineering Laboratory: Open-Source EiffelStudio Restricted registration - show details 4 credits3PB. Meyer, C. A. Furia, D. M. Nordio
AbstractThis course is an opportunity to take part in leading-edge software construction and gain academic credit for it. The EiffelStudio environment provides a rich basis of extensions and new developments.
The course will be held in laboratory-style: students choose a project and meet regularly with assistants. The best developments are candidate for inclusion in actual software releases.
ObjectiveThis course is an opportunity to take part in leading-edge software construction and gain academic credit for it. The EiffelStudio environment provides a rich basis of extensions and new developments.
The course will be held in laboratory-style: students choose a project and meet regularly with assistants. The best developments are candidate for inclusion in actual software releases.
ContentThe growing popularity of open-source projects provides a fertile ground for creative software developers to demonstrate and hone their design and implementation skills. This course is an opportunity to take part in leading-edge software construction and gain academic credit for it. The EiffelStudio environment (in 2006, 2 million lines of open-source code) provides a rich basis of potential extensions and new developments. The course is not structured as a traditional set of lectures but is laboratory-style: students choose a project and meet regularly with assistants to report progress and obtain guidance. The results produced should meet standards of quality software engineering; the best developments are candidate for inclusion in actual software releases. This is an opportunity to learn by doing and to encounter the challenges of large, production-grade software development.