Teachers | Fabrizio Montesi
https://fabriziomontesi.com/ (course responsible) Saverio Giallorenzo https://www.saveriogiallorenzo.com/ Marco Peressotti https://marcoperessotti.com/ |
---|---|
Period | Spring 2019 |
ECTS | 10 credits |
Code | DM869 (https://odin.sdu.dk/sitecore/index.php?a=searchfagbesk&internkode=dm869) |
Office hours | Open door. |
This course covers advanced topics in the fields of concurrency theory, logic, and software engineering and their applications in the understanding and development of modern concurrent systems. The students will learn how to acquire strong scientific foundations to conduct innovative R&D in both industrial and academic environments.
In relation to the competence profile of the degree it is the explicit focus of the course to:
Date | Topic | Reading | Due |
---|---|---|---|
Unit 1: Formalisation of Concurrent Systems |
|||
Feb-04 | Course Overview | ||
Feb-05 | Inference systems | [1:Ch. 1] | |
Feb-11 | Exercises | ||
Feb-12 | Process Algebras | [2:Ch. 4] | Feb-25 | Exercises |
Feb-26 | Behavioural Equivalences | [2:Sec. 5.1,5.2] | |
Mar-04 | Exercises | ||
Mar-05 | Concurrent Program Verification | [2:Sec. 5.3] | |
Mar-11 | Exercises | ||
Unit 2: High-Level Languages for Cloud Systems |
|||
Mar-12 | Service-Oriented Programming | [3] | |
Mar-18 | Exercises | ||
Mar-19 | Service Integration | [4, 5] | |
Mar-25 | Exercises | ||
Mar-26 | Exercises | Midterm course evaluation | |
Apr-01 | Midterm Presentations | ||
Apr-02 | Midterm Presentations | ||
Apr-08 | Microservice Architectural Patterns | [6, 7] | |
Apr-09 | Exercises | ||
Apr-29 | Project Overview | ||
Unit 3: Type Systems for Concurrency |
|||
Apr-30 | Logics and types | [8] | |
May-06 | Exercises | Project Proposal | |
May-07 | Pi-calculus | [9] | |
May-13 | Exercises | ||
May-14 | Behavioural types | [10] | Project Progress |
May-20 | Linear Logic and Session Types | [11] | |
May-21 | Exercises | ||
May-27 | Final Projects | ||
May-28 | Final Projects | ||
Jun-03 | Project Report |
[1] |
Montesi, F. Introduction to Choreographies.
|
[2] |
Aceto, L., Larsen, K.G. and Ingólfsdóttir, A. An Introduction to Milner’s CCS.
|
[3] |
Montesi, F., Guidi, C. and Zavattaro, G. 2014. Service-Oriented Programming with Jolie. Web Services Foundations. A. Bouguettaya, Q.Z. Sheng, and F. Daniel, eds. Springer. 81–107.
|
[4] |
Montesi, F. and Carbone, M. 2011. Programming Services with Correlation Sets. Service-Oriented Computing - 9th International Conference, ICSOC
2011, Paphos, Cyprus, December 5-8, 2011 Proceedings (2011), 125–141.
|
[5] |
Giallorenzo, S., Lanese, I. and Russo, D. 2018. ChIP: A Choreographic Integration Process. OTM Conferences (2) (2018), 22–40.
|
[6] |
Montesi, F. and Weber, J. 2018. From the decorator pattern to circuit breakers in microservices. Proceedings of the 33rd Annual ACM Symposium on Applied Computing,
SAC 2018, Pau, France, April 09-13, 2018 (2018), 1733–1735.
|
[7] |
Montesi, F. and Weber, J. 2016. Circuit Breakers, Discovery, and API Gateways in Microservices. CoRR. abs/1609.05830, (2016).
|
[8] |
Wadler, P. 2015. Propositions as types. Commun. ACM. 58, 12 (2015), 75–84. DOI:10.1145/2699407.
|
[9] |
Parrow, J. 2001. An Introduction to the π-Calculus. Handbook of Process Algebra. J.A. Bergstra, A. Ponse, and S.A. Smolka, eds. North-Holland / Elsevier. 479–543.
|
[10] |
Hüttel, H., Lanese, I., Vasconcelos, V.T., Caires Luı́s, Carbone, M., Deniélou, P.-M., Mostrous, D., Padovani, L., Ravara, A., Tuosto, E., Vieira, H.T. and Zavattaro, G. 2016. Foundations of Session Types and Behavioural Contracts. ACM Comput. Surv. 49, 1 (2016), 3:1–3:36. DOI:10.1145/2873052.
|
[11] |
Wadler, P. 2014. Propositions as sessions. J. Funct. Program. 24, 2-3 (2014), 384–418. DOI:10.1017/S095679681400001X.
|
Students can come to us at any time to discuss issues, ask questions, get or give feedback.
No late submissions will be accepted/graded unless the instructor is contacted in advance with a reasonable explanation for the delay.
If the instructor approves late acceptance of a submission, the submission will incur a late penalty per late day (up to a maximum of 3 days). Submissions received 3 days or more after the due date will not be graded. The actual late penalty is at the instructor's discretion and may vary (based on the reason for the delay and how early the instructor was informed).
All submissions must be your own work. No collaboration is permitted on project write-ups (except with your project partner if you have one). No collaboration is permitted on exams. We will default to SDU's academic policies unless stated otherwise above.