Please note! Course description is confirmed for two academic years (1.8.2018-31.7.2020), which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.

LEARNING OUTCOMES

You understand the benefits of systems with concurrency, but also the problems caused by concurrency, and know how to overcome them. You can apply general design principles, models and methods to construct concurrent systems that, in addition to other requirements, behave correctly with the respect to their functional specifications. You have got an experience of applying the theories using the concurrency features of programming languages. You understand concurrency models and the principles of concurrency frameworks and have experience in using them.

Credits: 5

Schedule: 28.10.2020 - 10.12.2020

Teacher in charge (valid 01.08.2020-31.07.2022): Vesa Hirvisalo

Teacher in charge (applies in this implementation): Vesa Hirvisalo

Contact information for the course (applies in this implementation):

CEFR level (applies in this implementation):

Language of instruction and studies (valid 01.08.2020-31.07.2022):

Teaching language: English

Languages of study attainment: English

CONTENT, ASSESSMENT AND WORKLOAD

Content
  • Valid 01.08.2020-31.07.2022:

    Principles of concurrent programming, synchronization and communication mechanism, concurrent and distributed algorithms, concurrent and distributed systems.

Assessment Methods and Criteria
  • Valid 01.08.2020-31.07.2022:

    Lectures, examination and programming exercises.

Workload
  • Valid 01.08.2020-31.07.2022:

    Lectures: 12h, Teaching in small groups: 12h, Independent work: 100h

     

DETAILS

Study Material
  • Valid 01.08.2020-31.07.2022:

    Lecture slides, online learning material and readings.

Substitutes for Courses
  • Valid 01.08.2020-31.07.2022:

    T-106.5600 Concurrent Programming

Prerequisites
  • Valid 01.08.2020-31.07.2022:

    Principles of computer architecture, operating system and run-time system from software perspective. Eg. CS-A1120 / ICS-A1120 Programming 2. Java and Scala programming experience.

SDG: Sustainable Development Goals

    13 Climate Action

FURTHER INFORMATION

Description

Registration and further information