Cloud Native Applications

Course ID
CSIS2-4
Direction
1st, 2nd
Semester
Spring
Type
2nd direction elective, 1st direction mandatory

Learning Outcomes

The purpose is to understand the specifics of creating applications adapted to Cloud Computing as well as various types of services. The course focuses on understanding design patterns that enable the creation of applications with inherent abilities to adapt to distributed and dynamic environments. In addition it focuses on managing the code and development of these applications. Through this process students will be able to create applications that can automatically adapt (scaling and de-scaling) to dynamic operating conditions, have increased reliability and faster development and implementation.

Course Content

Application level design patterns (e.g. state management, logging, dynamic discovery etc) , Microservices patterns, DevOps management of application code, application elasticity models/controllers, configuration management, versioning, deployment automation testing

General Skills

Search, analysis and synthesis of data and information with the use of the assorted technologies

Adaptation in new conditions

Decision Making

Team work

Promoting free, creative and deductive reasoning

Learning and Teaching Methods - Evaluation

Teaching methods: On site
Use of ICT: Eclass

Activity Work load
Semester
Lectures 14
Lab exercises 12
Thesis 58
Independent Study 66
Total 150

Assessment

Semester project assignment

Literature

1.Boris Scholl, Trent Swanson Peter Jausovec, Cloud Native-Using Containers, Functions, and
Data
to Build Next-Generation Applications, O’Reilly
2. Cornelia Davis, Cloud Native Patterns, 2019, Manning Publications
IEEE Transactions on Services Computing
FGCS
IEEE Transactions on Cloud Computing
Elsevier Journal of Systems and Software