DM848: Microservice Programming

Study Board of Science

Teaching language: Danish or English depending on the teacher, but English if international students are enrolled
EKA: N340015102, N340015112
Assessment: Second examiner: External, Second examiner: None
Grading: 7-point grading scale, Pass/Fail
Offered in: Odense
Offered in: Spring
Level: Master

STADS ID (UVA): N340015101
ECTS value: 10

Date of Approval: 30-04-2018


Duration: 1 semester

Version: Archive

Comment

15018201(former UVA) is identical with this course description. 

Entry requirements

None

Academic preconditions

The content of DM519 Concurrent Programming and DM505 Database Design and Programming should be known

Course introduction

The course is an introduction to microservice programming, a paradigm in which software is built by composing distributed services that can be independently developed and deployed. Adopting microservices can offer benefits, among others, in terms of composability, resilience, and scalability of software projects. Application domains include therefore Web applications, system integration, mobile systems, and Business to Business (B2B) interactions.

The course will cover recent research and technologies for the programming of microservices, with an emphasis on the link between research and practice.

Expected learning outcome

After the course the students are expected to:
  • Identify the key advantages and complexities of microservice architectures
  • Illustrate and combine the patterns presented in the course for the design of microservice architectures
  • Analyse and compare different approaches to the coordination of services
  • Implement microservice systems using the techniques and technologies within the scope of the course
  • Reason about the correctness of coordination strategies and their implementation

Content

Microservice architectures, service choreography and orchestration, actor and process languages, workflow languages, behavioural specifications of communication protocols, service monitoring, scalability of services, continuous delivery.

Literature

See Blackboard for syllabus lists and additional literature references.

Examination regulations

Exam element b)

Timing

June

Prerequisites

Type Prerequisite name Prerequisite course
Exam N340015112, Oral presentation N340015101, DM848: Microservice Programming

Tests

Written project

EKA

N340015102

Assessment

Second examiner: External

Grading

7-point grading scale

Identification

Full name and SDU username

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

10

Additional information

The final project can be either a software project (including code and a written report) or a paper covering theoretical aspects of microservice programming.

The examination form for re-examination may be different from the exam form at the regular exam.

Prerequisites for participating in the exam a)

Timing

Spring

Tests

Oral presentation

EKA

N340015112

Assessment

Second examiner: None

Grading

Pass/Fail

Identification

Student Identification Card

Language

Normally, the same as teaching language

Examination aids

To be announced during the course

ECTS value

0

Additional information

The prerequisite examination is a prerequisite for participation in exam element b)

Indicative number of lessons

60 hours per semester

Teaching Method

At the faculty of science, teaching is organized after the three-phase model ie. intro, training and study phase.

This is an advanced course in which research and practice are combined.
Lectures will include live demonstrations and collaborative exercises in software development.
Part of the course is organised as a reading group. Each participant will independently study some material, either research or current practices, and give a presentation on a topic selected in accordance with the teacher. Participants can propose their own topics. The teacher will give lectures on how to prepare for this task.

Teacher responsible

Name E-mail Department
Fabrizio Montesi fmontesi@imada.sdu.dk

Timetable

Administrative Unit

Institut for Matematik og Datalogi (datalogi)

Offered in

Odense

Recommended course of study

Profile Education Semester Offer period