Agile Softwareentwicklung und DevOps Engineering

Diese Weiterbildung vermittelt vertiefende Kenntnisse zur Verbindung von agiler Softwareentwicklung, IT-Betrieb und automatisierter Softwarebereitstellung. Behandelt werden DevOps-Grundlagen, CI/CD-Prozesse, Cloud Computing, Containerisierung, Datenbanken, Versionsverwaltung, Softwaretests sowie agile Projektsteuerung.

DevOps-Grundlagen und agile Arbeitsweisen
  • Grundlagen und zentrale Konzepte von DevOps
  • Zusammenarbeit zwischen Entwicklung, Betrieb und Qualitätssicherung
  • Einfluss agiler Softwareentwicklung auf DevOps-Prozesse
  • Gestaltung effizienter Softwareentwicklungs- und Betriebsabläufe
  • Release-Automatisierung und Reduzierung technischer Risiken

Continuous Integration, Delivery und Security
  • Grundlagen von Continuous Integration und Continuous Delivery
  • Aufbau und Nutzung automatisierter CI/CD-Pipelines
  • Automatisiertes Testen im Entwicklungsprozess
  • Deployment-Abläufe innerhalb agiler Softwareprojekte
  • Grundlagen von Continuous Security
  • Nutzung von Telemetriedaten und A/B-Tests

Cloud Computing im DevOps-Kontext
  • Einführung in Cloud Computing für DevOps-Umgebungen
  • Public, Private und Hybrid Cloud als Bereitstellungsmodelle
  • IaaS, PaaS und SaaS als Cloud-Service-Modelle
  • Vergleich zentraler IaaS-Anbieter wie AWS, Azure und Google Cloud
  • Kostenkalkulation und Compliance in Cloud-Umgebungen
  • Cloud-Monitoring mit Prometheus und Grafana
  • Einordnung aktueller Entwicklungen zu Cloud Computing und Kubernetes

Containerisierung mit Docker
  • Grundlagen der Docker-Architektur
  • Erstellung und Verwendung von Docker-Images
  • Arbeiten mit Docker-Containern
  • Docker-Workflows in Entwicklungs- und Betriebsprozessen
  • Nutzung von Docker Compose
  • Debugging von Containern
  • Vorbereitung containerbasierter Anwendungen für produktionsnahe Umgebungen

Datenbanken und Datenmanagement
  • Einführung in relationale Datenbanken
  • Datenbankmodellierung und Namenskonventionen
  • Transaktionen, Datentypen und Schlüsselkonzepte
  • Normalisierung und Normalformen
  • Abfragen mit SELECT, JOIN und GROUP BY
  • Anwendung komplexerer SELECT-Abfragen

Versionsverwaltung und Software Testing
  • Versionsverwaltung in agilen Softwareprojekten
  • Grundlegende Operationen der Versionsverwaltung
  • Agiles Arbeiten mit Git
  • Einbindung von Git in Entwicklungs- und Deployment-Prozesse
  • Software Testing und Qualitätssicherung
  • Verknüpfung von Tests mit Continuous Integration und Continuous Delivery

Agiles Projektmanagement mit Scrum
  • Grundlagen der Scrum-Methodik
  • Rollen und Verantwortlichkeiten von Scrum Master, Product Owner und Scrum Team
  • Sprint Planning und Sprint Review
  • Product Backlog Management
  • Zusammenarbeit und Abstimmung in agilen Entwicklungsteams

Projektplanung und digitale Werkzeuge
  • Überblick über MS Project in der Projektplanung
  • Projektdefinition, Ressourcenplanung und Budgetierung
  • Erstellung und Verwaltung von Zeitplänen und Meilensteinen
  • Nutzung von Gantt-Diagrammen und Visualisierungstools
  • Einführung in Projektmanagement-Tools wie Trello, Asana und JIRA
  • Vergleich und Auswahl geeigneter Werkzeuge für agile Softwareprojekte

Praxisorientierte Anwendung
  • Bearbeitung praxisnaher Übungen und Fallstudien
  • Simulation der Zusammenarbeit zwischen Entwicklung und Betrieb
  • Anwendung von DevOps-Prinzipien in Projektaufgaben
  • Optimierung agiler Softwareentwicklungsprozesse
  • Umsetzung automatisierter Abläufe für Build, Test und Deployment