Pipeline

Der Begriff der Pipeline ist in den letzten Jahren in Zusammenhang mit der Softwareentwicklung stark durch das Thema DevOps geprägt worden. Allgemein steht eine Pipeline in der Softwareenwicklung für die Summe alle Aktivitäten, die von einer Idee bis hin zum Betrieb dieser Idee führen.

Im Bezug auf DevOps entspricht die Pipeline oft einer Continuous Delivery Pipeline, welche um weitere Automatismen zum Monitoring und zur Kommunikation zwischen Betrieb und Entwicklung der Software erweitert wurde.

Aufbau einer Pipeline

Zum Aufbau einer Pipeline ist die Betrachtung und Dokumentation der bestehenden Prozesse (Wer macht was und womit?) notwendig.

Nach der Erfassung aller einzelnen Schritte, kann damit begonnen werden die eigene Pipeline zu optimieren, indem man (ganz im Sinne von DevOps) die folgenden Fragen stellt:

  • Was machen wir genau in dem Schritt?
  • Wie gut funktioniert es?
  • Was können wir besser machen?

Auf Grundlage der Antworten kann anschließend mit der Umsetzung von Verbesserungsmaßnahmen begonnen werden, indem z.B. Schritte automatisiert oder beschlossen wird andere, besser geeignete, Tools zu nutzen.

Bestandteile einer Pipeline

Im Wesentlichen umfasst jede Pipeline in der Softwareentwicklung diese Schritte:

  • Planung von Änderungen an der Software
    • Roadmap
    • Issue Tracking
    • Backlog
  • Schreiben des Code
  • Build
  • Test
    • Unit Tests
    • Integrationstests
    • Funktionale Tests
  • Release
    • Auf einen Testserver (Staging)
    • Produktiv
  • Betrieb
    • Überwachen
    • Reporting

Zurück zur Glossar-Übersicht