Code

ΠΠΣ-189

Semester

1st

ECTS

7,5

E-Services

Category

Obligatory

Objective

The primary objective of this course is to equip students with a deep understanding of how to design and develop advanced application and information system architectures, fully leveraging the capabilities of Cloud Computing technologies. In today’s technological landscape, migrating to the cloud is a core strategic priority for any organization. This course provides the necessary theoretical background and practical expertise in cloud service models (IaaS, PaaS, SaaS) and deployment models (Public, Private, Hybrid, Multi-cloud). Students are introduced to the design principles of “cloud-native” applications, focusing on modern architectural patterns such as microservices and serverless architectures, which ensure high availability, elasticity, and reliability.

Furthermore, the course integrates critical technological and methodological trends related to the cloud software lifecycle. It extensively covers the use of containers and their orchestration (e.g., via Kubernetes), DevOps automation practices (CI/CD), and the Infrastructure as Code (IaC) approach. Additionally, it examines advanced distributed operational models, such as Edge and Fog Computing, their integration with the Internet of Things (IoT), and modern challenges in large-scale data management and security/authentication in distributed environments. Through hands-on laboratory practice on real-world platforms (AWS, Azure, Google Cloud), students gain comprehensive and applicable knowledge.

Upon successful completion of the course, students will be able to:

  • Design and implement advanced application architectures (such as microservices and serverless), utilizing the capabilities and advantages of cloud computing infrastructures.
  • Develop, orchestrate, and manage cloud-native applications using technologies like containers, while addressing strict requirements for scalability, resilience, and fault tolerance.
  • Apply modern automation and monitoring methodologies (DevOps), adopting Continuous Integration and Continuous Delivery (CI/CD) practices, as well as Infrastructure as Code (IaC) management tools.
  • Leverage Edge and Fog Computing operational models to design solutions for modern distributed systems, sensor networks, and IoT environments.
  • Manage data effectively in the cloud, understanding the principles of object storage and the integration of big data analytics tools.

Learning outcomes

  • Search for, analysis and synthesis of data and information, with the use of the necessary technology
  • Adapting to new situations
  • Team work
  • Working in an interdisciplinary environment
  • Production of new research ideas
  • Criticism and self-criticism
  • Production of free, creative and inductive thinking

Syllabus

  • Introduction to Advanced Application Architectures

    Analysis of modern architectural patterns (e.g., microservices, serverless architectures) and their application within cloud computing environments.

  • Cloud Computing Fundamentals

    In-depth exploration of service models (IaaS, PaaS, SaaS), deployment models (public, private, hybrid, multi-cloud), and core cloud characteristics (e.g., elasticity, availability).

  • Design and Development of Cloud-Native Applications

    Study of design patterns and techniques for developing applications that fully exploit cloud capabilities for enhanced reliability and scalability, including containers and orchestration (e.g., Kubernetes).

  • Cloud Data Management

    Overview of object storage services and cloud databases, alongside methodologies and tools for big data analytics.

  • Automation and Monitoring

    Study of DevOps methodologies, tools, and practices for automating the development, deployment, and operation of applications (CI/CD), as well as monitoring performance, system health, and Quality of Service (QoS) levels.

  • Challenges in Cloud Computing Utilization

    Investigation of complex design problems, such as cloud migration strategies, the development of multi-cloud solutions, the application of artificial intelligence techniques, and Infrastructure as Code approaches for managing cloud systems.

  • Edge/Fog Computing Operational Models

    Analysis of Edge and Fog Computing operational models and their utilization in modern distributed systems such as sensor networks, mobile computing, and the Internet of Things (IoT).

  • Security and Authentication in Advanced Architectures

    Analysis of security challenges in distributed systems, implementation of Identity and Access Management (IAM) mechanisms, and the integration of security policies.

  • Case Studies and Laboratory Exercises

    Hands-on practice based on real-world scenarios and popular cloud platforms, such as Amazon Web Services, Microsoft Azure, and Google Cloud.

Bibliography