Service Oriented Design

2022-2023

General Information

Course Code X_405061
Credits 6 EC
Period P1
Course Level 400
Language of Tuition English
Faculty Faculty of Science
Course Coordinator prof. dr. P. Lago
Examiner prof. dr. P. Lago
Teaching Staff prof. dr. P. Lago
Part of programme(s)

Practical Information

You need to register for this course yourself. The (de)registration deadlines can be found on VU.nl

Teaching Methods Seminar, Lecture

Target audiences

This course is also available as:

Course Objective

Upon completion of this course, students will:
- Learn how to design software in terms of independent services
(Knowledge and Understanding; Applying Knowledge and Understanding;
Making judgements; Communication; Learning Skills).
- Learn advanced design decision making techniques applicable to large
service-oriented software systems (Knowledge and Understanding; Applying
Knowledge and Understanding; Making judgements; Communication; Learning
Skills).
- Be able to select among them and apply them to a specific system
(Knowledge and Understanding; Applying Knowledge and Understanding;
Making judgements; Communication; Learning Skills).
- Be able to reason about and assess the design decisions (Applying
Knowledge and Understanding; Making judgements; Communication; Learning
Skills).
- Learn the notion of sustainability-quality, and how to include it in
service oriented design (Knowledge and Understanding; Applying Knowledge
and Understanding; Making judgements; Communication; Learning Skills).
- Be able to contribute in teamwork and harmonize the collaboration into
a quality presentation (Applying Knowledge and Understanding; Making
judgements; Communication; Learning Skills).

Course Content

The lectures explain the concepts related to the Service Orientation
software paradigm and service-oriented architectures.

The lectures provide the students with knowledge about how to identify
the requirements for a service-oriented software system, and how to map
them to business services and transform them into complex networks of
software services. Special emphasis is given to the design reasoning
techniques for decision making, service identification, service-oriented
software design, and the notion of sustainability-quality. Each year
experts from academia and/or industry are invited to give guest
lectures.

The students participate in small teams to incrementally develop an
understanding of various service-oriented aspects, and work on a
service-oriented software design assignment.

Additional Information Teaching Methods

The course entails 3 live sessions per week: 2 hours lecture (l), 2
hours seminar (s), 2 hours project work in teams (pro).
Attendance is mandatory.

Method of Assessment

Group assignments:
The course entails two group assignments on the project case. Assignment
1 concerns the selection and analysis of the design space for the chosen
project. Assignment 2 revises and extends the work presented in
Assignment 1 and proposes a service-oriented design solution. Each group
assignment counts for 40% of the final grade.

Individual contribution to the project:
The project workload should be balanced and distributed among the group
members. Accordingly, in both Assignment 1 and Assignment 2, each
student's individual responsibility must be traced by making explicit
the name of the student responsible for which section. The individual
contribution counts for 20% of the final grade.

Project presentation:
Depending on the size of the course, each student group will be asked to
present their progress at least once in one of the seminar sessions.
This is the opportunity to gather additional detailed feedback on the
ongoing assignment before its deadline so that improvements can be
applied. The presentations are followed by a discussion in which also
the other groups get the chance to ask specific questions.

Weight of each component: the grade is based on the weighted scores of
the two group assignments (80%), at least one progress presentation
(pass/no-pass), and individual contribution to the project (20%). To
pass the course, the scores of each component must be 5.5 or higher
(pass for the presentation). The final result is averaged as customary.

Compensation: it is not possible to compensate one component with
another.

Mode of re-examination: each project assignment can be revised and
resubmitted once; the progress presentation cannot be compensated and is
carried out in teamwork; the individual contribution to the project
cannot be compensated.

Literature

The course material will be handed out by the lecturer and distributed
online (Canvas).

Additional Information Target Audience

MSc Computer Science
MSc Computer Security

Custom Course Registration

Further information for this course will be made available online
(Canvas). All students must be enrolled in the course Canvas community.
Group enrolment takes place in Canvas.

Explanation Canvas

Instructions about group enrolment and software tools for
online/on-campus attendance will be provided at least one week before
the course starts. All students must be enrolled before then.

Recommended background knowledge

Software design (knowledge of the Unified Modeling Language - UML).
Programming. Knowledge of SoaML.