Überblick über Cloud Architekturen

Classroom training | German | Claim

Duration of training: 2 days

Objectives

Dieses Seminar gibt einen Überblick über Cloud Computing und dessen Möglichkeiten für die Software-Entwicklung. Hierzu wird auf die bei gängigen Cloud-Anbietern (z.B. AWS, GCP, Azure) angebotenen Dienst-Kategorien (IaaS, CaaS, PaaS, FaaS, SaaS) und deren Eigenschaften eingegangen.
Für Softwareentwickler relevante Technologien und Frameworks, die einen effektiven und effizienten Software-Entwicklungsprozess für Cloud-Anwendungen ermöglichen, werden hier vorgestellt.
Die Prinzipien für die Entwicklung von Cloud-Anwendungen und die Grundlagen der Technologien werden anhand eines Praxisbeispiels (Java + Python) auf der Cloud-Plattform Amazon Web Services (AWS) verdeutlicht. Diese Prinzipien lassen sich mit wenig Aufwand auf andere Cloud-Plattformen übertragen.

Zusammenfassung der wichtigsten Seminar Lerninhalte:
  1. Cloud-Servicemodelle und deren Möglichkeiten sowie Vorteile und Nachteile kennen
  2. Eigenschaften von Cloud Computing und deren Einfluss auf Software-Entwicklung kennen
  3. Prinzipien für die erfolgreiche Entwicklung von Cloud-Anwendungen kennen (12-Factor-App)
  4. Für die Software-Entwicklung relevante Grundlagen von Cloud-Technologien und Frameworks kennen (Docker + Kubernetes)
  5. Vorteile von Cloud-Technologien und -Infrastruktur für den Software-Entwicklungsprozess kennen (CI/CD + IaC)
  6. Herausforderungen und Lösungen für das Monitoring von Cloud-Anwendungen kennen
  7. Architektur-Stile und Herausforderungen an Software-Architekturen für Cloud-basierte Anwendungen kennen

Target audience

  • Softwareentwickler
  • Softwarearchitekten
  • Anforderungsmanager

Requirements

Grundlegendes Verständnis über Computer-Architekturen.

Agenda

Tag 1

Einführung Cloud Computing

  • Eigenschaften von Cloud Computing
  • Klassifizierung von Cloud Computing
  • Prinzipien für die Entwicklung von Cloud-Anwendungen (12-Factor-Apps)


Grundlagen - Technologien und Frameworks

  • Docker
  • Kubernetes

Hands-On (Praxisbeispiel)

  • Vorstellung der Beispiel-Anwendung
  • Beispiel-Anwendung auf der Amazon Elastic Kubernetes Service (Amazon EKS)
  • AWS Lambda (FaaS)

Tag 2

Infrastructure

  • Infrastructure as Code (IaC)
  • Continuous Integration, Continuous Delivery, Continuous Deployment
  • Ausblick: DevOps

Hands-On (Praxisbeispiel)

  • IaC-Beispiel mit Terraform
  • Deployment Pipeline für die Beispiel-App


Monitoring

  • Monitoring von Cloud-Anwendungen
  • Architekturen für Cloud-Anwendungen
  • Kommunikation in verteilten Systemen
  • Cloud-Architekturen und Software-Qualitätsattribute
  • Cloud Design Patterns

Hands-On (Praxisbeispiel)

  • 12-Factor-Apps - Wiederholung
  • Analyse/Review der Beispiel-Anwendung

Objectives

Dieses Seminar gibt einen Überblick über Cloud Computing und dessen Möglichkeiten für die Software-Entwicklung. Hierzu wird auf die bei gängigen Cloud-Anbietern (z.B. AWS, GCP, Azure) angebotenen Dienst-Kategorien (IaaS, CaaS, PaaS, FaaS, SaaS) und deren Eigenschaften eingegangen.
Für Softwareentwickler relevante Technologien und Frameworks, die einen effektiven und effizienten Software-Entwicklungsprozess für Cloud-Anwendungen ermöglichen, werden hier vorgestellt.
Die Prinzipien für die Entwicklung von Cloud-Anwendungen und die Grundlagen der Technologien werden anhand eines Praxisbeispiels (Java + Python) auf der Cloud-Plattform Amazon Web Services (AWS) verdeutlicht. Diese Prinzipien lassen sich mit wenig Aufwand auf andere Cloud-Plattformen übertragen.

Zusammenfassung der wichtigsten Seminar Lerninhalte:
  1. Cloud-Servicemodelle und deren Möglichkeiten sowie Vorteile und Nachteile kennen
  2. Eigenschaften von Cloud Computing und deren Einfluss auf Software-Entwicklung kennen
  3. Prinzipien für die erfolgreiche Entwicklung von Cloud-Anwendungen kennen (12-Factor-App)
  4. Für die Software-Entwicklung relevante Grundlagen von Cloud-Technologien und Frameworks kennen (Docker + Kubernetes)
  5. Vorteile von Cloud-Technologien und -Infrastruktur für den Software-Entwicklungsprozess kennen (CI/CD + IaC)
  6. Herausforderungen und Lösungen für das Monitoring von Cloud-Anwendungen kennen
  7. Architektur-Stile und Herausforderungen an Software-Architekturen für Cloud-basierte Anwendungen kennen

Target audience

  • Softwareentwickler
  • Softwarearchitekten
  • Anforderungsmanager

Requirements

Grundlegendes Verständnis über Computer-Architekturen.

Agenda

Tag 1

Einführung Cloud Computing

  • Eigenschaften von Cloud Computing
  • Klassifizierung von Cloud Computing
  • Prinzipien für die Entwicklung von Cloud-Anwendungen (12-Factor-Apps)


Grundlagen - Technologien und Frameworks

  • Docker
  • Kubernetes

Hands-On (Praxisbeispiel)

  • Vorstellung der Beispiel-Anwendung
  • Beispiel-Anwendung auf der Amazon Elastic Kubernetes Service (Amazon EKS)
  • AWS Lambda (FaaS)

Tag 2

Infrastructure

  • Infrastructure as Code (IaC)
  • Continuous Integration, Continuous Delivery, Continuous Deployment
  • Ausblick: DevOps

Hands-On (Praxisbeispiel)

  • IaC-Beispiel mit Terraform
  • Deployment Pipeline für die Beispiel-App


Monitoring

  • Monitoring von Cloud-Anwendungen
  • Architekturen für Cloud-Anwendungen
  • Kommunikation in verteilten Systemen
  • Cloud-Architekturen und Software-Qualitätsattribute
  • Cloud Design Patterns

Hands-On (Praxisbeispiel)

  • 12-Factor-Apps - Wiederholung
  • Analyse/Review der Beispiel-Anwendung

Tags

Recommend this site