Browse Source

vorlesung-19-01

master
devops 1 year ago
parent
commit
59f646f191
  1. 44
      Lerntagebuch.md

44
Lerntagebuch.md

@ -607,23 +607,23 @@ Schreibe Code im TDD cycle.
#### Bedeutung von CI im Softwareentwicklungsprozess #### Bedeutung von CI im Softwareentwicklungsprozess
Größe von Software-Projekten
**Größe von Software-Projekten**
- steigende Komplexität - steigende Komplexität
- mehrere Entwickler - mehrere Entwickler
- Zusammenführen der Einzelleistungen - Zusammenführen der Einzelleistungen
Zusammenführen der Einzelleistungen
Z**usammenführen der Einzelleistungen**
- Widerspruch Kreativität vs. Konformität - Widerspruch Kreativität vs. Konformität
- technische Konflikte - technische Konflikte
- persönliche Konflikte - persönliche Konflikte
- Aufwand - Aufwand
Vorteile von CI Systemen
**Vorteile von CI Systemen**
- formale Prozesse verringern - formale Prozesse verringern
- automatisierte Prozesse verringern Aufwand - automatisierte Prozesse verringern Aufwand
- Vorstufe zu Continous Delivery - Vorstufe zu Continous Delivery
Aufbau eines CI/CD-Systems
**Aufbau eines CI/CD-Systems**
- Entwicklungsumgebung des Programmierers - Entwicklungsumgebung des Programmierers
- Source Code Management System (SCM) - Source Code Management System (SCM)
@ -632,9 +632,9 @@ Aufbau eines CI/CD-Systems
- Continous Integration Server - Continous Integration Server
- Erweiterungen für Continous Delivery - Erweiterungen für Continous Delivery
Entwicklungsumgebung des Programmierers
**Entwicklungsumgebung des Programmierers**
Integrated Developement Environment (IDE)
**Integrated Developement Environment (IDE**)
- Syntax highlighting - Syntax highlighting
- Syntax-Vervollständigung - Syntax-Vervollständigung
- automatisierte Refactorings - automatisierte Refactorings
@ -643,7 +643,7 @@ Integrated Developement Environment (IDE)
- Code automatische Formatierung - Code automatische Formatierung
- Fehler-Lokalisierung - Fehler-Lokalisierung
Source Code Management System (SCM)
**Source Code Management System (SCM)**
- Sicherung der Arbeit einzelner Entwickler - Sicherung der Arbeit einzelner Entwickler
- zentrale Verfügbarmachung - zentrale Verfügbarmachung
- Zusammenführung parallel geänderter Dateien - Zusammenführung parallel geänderter Dateien
@ -651,28 +651,28 @@ Source Code Management System (SCM)
- Zugriff auf dedizierte Stände (releases) - Zugriff auf dedizierte Stände (releases)
- wechsel zwischen Entwicklungsständen - wechsel zwischen Entwicklungsständen
Abhängigkeitenverwaltung
**Abhängigkeitenverwaltung**
- nicht selbst im Build-Lauf erzeugt - nicht selbst im Build-Lauf erzeugt
- zentrale Bereitstellung (innerhalb der Organisation) - zentrale Bereitstellung (innerhalb der Organisation)
- Zugriff auf einzelne Versionen - Zugriff auf einzelne Versionen
build – Werkzeug
**build – Werkzeug**
- Übersetzen - Übersetzen
- Liefer-Artefakte erzeugen - Liefer-Artefakte erzeugen
- Abhängigkeiten organisieren - Abhängigkeiten organisieren
- automatisierte Tests ausführen - automatisierte Tests ausführen
- Deploymen - Deploymen
Continous Integration Server
**Continous Integration Server**
- SCM überwachen - SCM überwachen
- build-Prozess starten - build-Prozess starten
- Ergebnisse berichteten - Ergebnisse berichteten
Erweiterungen für Continous Delivery
**Erweiterungen für Continous Delivery**
- Staging System - Staging System
- Produktions System - Produktions System
Ablauf des CI-Prozesses
**Ablauf des CI-Prozesses**
- Checkin Change - Checkin Change
- Fetch Change - Fetch Change
- Build - Build
@ -680,7 +680,7 @@ Ablauf des CI-Prozesses
- Ergebnisauswertung - Ergebnisauswertung
- Benachrichtigung - Benachrichtigung
Checkin Change
**Checkin Change**
- veröffentlichen der Änderung - veröffentlichen der Änderung
- eigener branch - eigener branch
- alle aktuell veröffentlichten Änderungen integriert. - alle aktuell veröffentlichten Änderungen integriert.
@ -689,27 +689,27 @@ Checkin Change
- automatisierte (Unit–)Tests sind ”grün” - automatisierte (Unit–)Tests sind ”grün”
- Lieferobjekt kann lokal gebaut werden - Lieferobjekt kann lokal gebaut werden
Fetch Change
**Fetch Change**
- Änderungen feststellen - Änderungen feststellen
- zeitgesteuert - zeitgesteuert
- ereignisgesteuert - ereignisgesteuert
Build
**Build**
- Änderung mit aktuellem Stand integrieren (merge) - Änderung mit aktuellem Stand integrieren (merge)
- compile (Produktivcode und Testcode) - compile (Produktivcode und Testcode)
Test
**Test**
- nur nach erfolgreichem compile - nur nach erfolgreichem compile
- Testframework starten - Testframework starten
- Ergebnisse sammeln - Ergebnisse sammeln
Ergebnisauswertung
**Ergebnisauswertung**
- Ermittelt Status von merge, compile und Test - Ermittelt Status von merge, compile und Test
- Erfolgsfall: Änderung als neuen aktuellen Stand übernehmen undveröffentlichen - Erfolgsfall: Änderung als neuen aktuellen Stand übernehmen undveröffentlichen
- Ergebnisdarstellung als Webseite - Ergebnisdarstellung als Webseite
Benachrichtigung
**Benachrichtigung**
- zeitnah - zeitnah
- Fehlerfall: Committer - Fehlerfall: Committer
- Erfolgsfall: alle - Erfolgsfall: alle
@ -721,17 +721,17 @@ Benachrichtigung
- WhatsApp - WhatsApp
Rolle von automatisierten Tests
**Rolle von automatisierten Tests**
- Problem des Continous Integration - Problem des Continous Integration
- Vorteile automatisierter Tests - Vorteile automatisierter Tests
- Grenzen automatisierter Tests - Grenzen automatisierter Tests
Problem des Continous Integration
**Problem des Continous Integration**
- compilierbar ! = ausführbar - compilierbar ! = ausführbar
- CI soll immer lieferbaren Stand bereit halten - CI soll immer lieferbaren Stand bereit halten
- Programm muss im CI Prozess ausgeführt werden - Programm muss im CI Prozess ausgeführt werden
Vorteile automatisierter Tests
**Vorteile automatisierter Tests**
- automatisierte Tests führen Programm aus - automatisierte Tests führen Programm aus
- dokumentieren gewünschtes Verhalten - dokumentieren gewünschtes Verhalten
- sind wiederholbar - sind wiederholbar
@ -739,7 +739,7 @@ Vorteile automatisierter Tests
- Ausführungszeit von Arbeitszeit entkoppelt - Ausführungszeit von Arbeitszeit entkoppelt
Grenzen automatisierter Tests
**Grenzen automatisierter Tests**
- finden nur Abweichungen von gewünschten/bekanntem Verhalten - finden nur Abweichungen von gewünschten/bekanntem Verhalten
- finden keine neuen fachlichen Fehler - finden keine neuen fachlichen Fehler

Loading…
Cancel
Save