Continuous Delivery - Hands on (Wiederholung)

/ch/open Logo

/ch/open Workshop-Tage 2014

Einleitung

Continuous Delivery (kurz CD) ist als Schlagwort in aller Munde. Als Teil der Agilen Softwareentwicklung verspricht es reibungslose Softwareauslieferungen, schnellere Releasezyklen bei hoher Qualität der Software. Nicht Wochen oder Monate sollen zwischen einzelnen Versionen von Software verstreichen, nein jeder Commit im Versionskontrollsystem ist ein potentieller Release. Es soll im Workshop klar werden, wie dabei der Softwareentwicklungsprozess, die Tools und die verschiedenen Projektmitarbeiter zusammenspielen und wie schlussendlich der Kunde direkt einen Nutzen ziehen kann.

Im Kurs wollen wir eine Applikation und deren Continuous Delivery Pipeline erstellen.

Programm

Neben dem Hands-On-Teil, welcher Programmierung, Konfiguration und Tool-Benutzung umfasst, werden auch die Rahmenbedingungen präsentiert und diskutiert, die zu einem gelungenen CD führen:

  • Prozess - Welche organisatorischen Rahmenbedingungen brauchen wir.
  • Testing - Welche Rolle spielt Testing beim Continuous Delivery.
  • Automatisierung - Was lässt sich automatisieren und wieviel Automatisierung ist notwendig?
  • Team - Wie muss ein Team aussehen, das einen solchen Prozess implementieren kann?

Folgende Tools und Laufzeitumgebungen werden wir benutzen (die Liste kann sich noch ändern):

  • Linux - als Betriebssystem in Virtualbox
  • Java, Groovy oder ... - als Programmiersprache
  • vert.x - als Laufzeitumgebung
  • Vagrant - als Virtuelle Entwicklungsumgebung
  • Docker - als “Virtuelle Maschine”
  • Gradle - als Buildsystem
  • Jenkins - als Continuous Integration Server
  • Git - als Versionskontrollsystem

Jedes Tool könnte selber einen eigenen Workshop füllen. Wir werden uns also auf die notwendigen Dinge konzentrieren müssen.

Wenn wir Softwareentwickler und Admins im Kurs haben, dann wäre das super, denn wir machen ein wenig von beidem.

Kursziel

Als Teilnehmer des Kurses wird man eine vollständige Deployment Pipeline bauen. Wir werden ein Beispielprojekt entwickeln, das als Grundlage für eigene Projekte dienen kann. Es werden verschiedene Werkzeuge benutzt und das Zusammenspiel zwischen diesen aufgezeigt. Die Teilnehmer/-innen werden am Ende des Tages einen Rucksack an Werkzeugen, Arbeitsschritten und Begriffen mitnehmen.

Adressaten

Anfänger in CD

Voraussetzungen

  • Fortgeschrittene in der Softwareentwicklung und/oder im Operating
  • Keine Angst vor der Kommandozeile

max. Teilnehmerzahl

12

Infrastruktur

Für den Workshop wird ein eigenes Notebook benötigt.

Referent

*Oliver Nautsch3, Inventage AG

Oliver Nautsch ist Senior Software Entwickler mit über 15 Jahren Erfahrung in der Softwareentwicklung. Er hat an einer Vielzahl von Softwareprojekten in den unterschiedlichsten Rollen mitgearbeitet. Darunter waren e-banking Applikationen, natürlich-sprachliche Dialogsysteme und Sicherheitslösungen. Derzeit liegt liegt sein Interesse in den Bereichen Microservices, Continuous Delivery und Software Craftsmanship. Seine bevorzugte Programmiersprache Java benutzt er seit Version 1.0.

Price: CHF 360
Open in Google Maps