CI, CD und DevOps

Durch Continuous Integration, Continuous Deployment, Continuous Delivery und DevOps können Softwareprojekte stark beschleunigt werden. Dadurch sind nicht nur schnellere Releases, sondern auch eine höhere Akzeptanz beim Fachbereich möglich.

Im Rahmen der fortschreitenden Digitalisierung ist schnelle Softwareentwicklung schon heute ein wesentlicher Wettbewerbsfaktor für nahezu alle Unternehmen. Daher ist die Beschleunigung und Automatisierung entsprechender Prozesse essentiell. Release-Zyklen müssen drastisch verkürzt werden, um zeitnah neue Funktionen bereit stellen zu können. Oft ist der erste Ansatz, Projekte agiler zu gestalten und z.B. Scrum in Verbindung mit Story Mapping oder Event Storming als entsprechende Methodenunterstützung einzusetzen. Meist wird hierbei aber nur der eigentliche Entwicklungsprozess optimiert und ggf. beschleunigt. Eine ganzheitliche Optimierung in Richtung CI/CD ist damit aber in der Regel nicht wirklich umgesetzt. Spätestens beim Testen der Entwicklungsergebnisse verlieren viele Kunden wertvolle Zeit. Daher spielt bspw. die Testautomatisierung als Bestandteil einer effizienten CI/CD-Pipeline eine wichtige Rolle bei der Optimierung des Entwicklungsprozesses.

Beim Aufsetzen neuer und der Optimierung bereits laufender IT-Entwicklungsprojekte ermöglicht der Einsatz der Methoden Contiuous Integration (CI), Continuous Delivery (CD), Continuous Deployment (CD) sowie DevOps eine deutliche Erhöhung der Produktivität. Im Ergebnis kann die Software schneller, mit höherer Qualität und kostengünstiger entwickelt werden. Die Methoden finden in den einzelnen Schritten des Entwicklungsprozesses ihre Anwendung.

Continuous Integration (CI)

Ziel von CI ist es, möglichst zeitnah den erstellten Code mit den übrigen Ergebnissen zu testen und anderen Entwicklern bereit zu stellen. Zeitnah heißt hierbei idealerweise mehrmals täglich. Das wird durch das Integrieren von Code in die Entwicklungs- bzw. Testumgebung erreicht.

Continuous Deployment (CD)

Ziel von CD ist es, die erstellte Software automatisch in die Produktionsumgebung zu überführen. Hat man einen komplett automatisierten Deployment-Prozess aufgesetzt, ist man also in der Lage, jede Änderung, welche die entsprechenden Tests erfolgreich durchlaufen hat, unverzüglich in der Produktion zu nutzen.

Continuous Delivery (CD)

Ziel von CD ist es, eine bereits produktionsreife Software zu erstellen. Hierbei wird der bestehende Code in eine lauffähige und idealerweise auslieferbare Softwareversion übersetzt. Es wird also aus dem getesteten Code des CI Prozess eine produktionsreife Version innerhalb einer produktionsnahen Umgebung erzeugt. Hier gibt es noch die Entscheidungsoption, ob und wann die Software im Produktionssystem bereitgestellt werden soll.

DevOps

Ziel von DevOps ist es ebenfalls, die einzelnen Prozesse der Softwareentwicklung zu beschleunigen. Nachdem die Softwareentwicklung mittels CI/CD bereits so weit getrieben wurde, dass quasi jede Änderung sofort in Produktion übernommen werden kann, muss auch der Betrieb der Anwendungen entsprechend eng mit der Entwicklung verzahnt werden. Hierbei spielt insbesondere das schnelle Feedback aus der Produktion eine wesentliche Rolle. Informationen aus Monitoring-Systemen oder aus Support-Meldungen müssen zeitnah an die Entwickler weitergegeben werden, damit eventuelle Fehler kurzfristig behoben und direkt wieder bereitgestellt werden können.

Der Nutzen von CI/CD und DevOps

      • Schnellere Entwicklungszyklen
      • Verkürztes Time-to-Market
      • Mehr Releases in kürzerer Zeit
      • Höhere Qualität
      • Geringere Kosten
      • Höhere Akzeptanz in den Fachabteilungen

Unsere Leistung – Ihr Nutzen

Wir unterstützen Sie zum einen dabei, laufende Softwareprojekte zu beschleunigen und zu optimieren, indem wir Schwachstellen in den vorhandenen Entwicklungsumgebungen identifizieren, Lösungsmöglichkeiten erarbeiten und diese zeitnah umsetzen. Zum anderen liefern wir Ihnen beim Aufsetzen neuer Projekte eine vollständige Pipeline für Ihre agile und automatisierte Entwicklungsstrecke, in der Cloud oder On-Premises. Im Rahmen unserer Dienstleistungspakete passen wir uns individuell Ihren Anforderungen an, egal ob Sie lediglich unsere Beratung und Coachings in Anspruch nehmen möchten oder die Teil- oder Gesamtumsetzung der Projekte durch uns favorisieren. Nachfolgend finden Sie konkrete Dienstleistungspakete im Rahmen derer Sie von der Expertise der MT AG in Hinblick auf CI/CD profitieren.

Leistungspaket 0

Zur Beschleunigung Ihres Projektes sowie zur Erhöhung Ihrer Softwarequalität und zur Reduzierung der Entwicklungskosten ermitteln wir im Rahmen dieses Leistungspaketes zunächst mögliche Schwachstellen in Ihrem Entwicklungsprozess. Hierzu werden Ihre Infrastruktur, Organisation sowie Prozesse und Tools aufgenommen und bezüglich definierter Kriterien bewertet. Einbezogen werden dabei sowohl Bewertungen anderer Unternehmen als auch unser erprobtes MT Best Practice Modell. Im Anschluss erhalten Sie eine fundierte Einschätzung Ihres Status Quo sowie konkrete Ansatzpunkte für Optimierungsmaßnahmen.

Bestandsanalyse der besehenden CI/CD Strecke
Leistungspaket 1

In diesem Leistungspaket beheben wir identifizierte Schwachstellen in Ihrer Entwicklungsumgebung und erhöhen damit im Ergebnis die Qualität und Geschwindigkeit Ihrer Softwareentwicklung. Hierbei ermöglichen wir zum einen die Automatisierung und Modernisierung der einzelnen Prozesse, von der Entwicklung und dem Testing über die Integration bis hin zur Produktion. Zum anderen unterstützen wir auch bei der Analyse und Auswahl passender Tools. Darüber hinaus helfen wir bei der Migration der CI/CD-Strecke in die Cloud.

Leistungspaket 2

Im Rahmen dieses Leistungspaketes ermöglichen wir Ihnen durch die Einführung und Umsetzung unseres CI/CD-Referenzmodells eine vollständig automatisierte Entwicklungs-, Integrations-, Test- und Produktionsumgebung. Konkret konfigurieren wir in einem Pilotprojekt die gesamte CI/CD-Strecke für ihr geplantes Projekt mit den dazugehörigen automatisierten Prozessen und Tools, gerne auch in der Cloud.

Bereitstellung und Implementierung einer gesamten CI/CD-Pipeline, auf Wunsch in der Cloud

Weitere Info's zu automatisierter Softwareentwicklung

DevOps Zyklus

Mit Jenkins in Richtung DevOps

Jenkins ist der weltweit am meisten genutzte Open-Source-Automatisierungsserver mit unzähligen Plugins für eine Vielzahl von Technologien und Einsatzszenarien rund um Continuous Integration und Continuous Delivery [1]. Dieser Artikel stellt verschiedene…
Weiterlesen

Ansprechpartner

Olaf Eschenbruch

Senior Berater Integration

  +49 2102 30961-0

olaf.eschenbruch@mt-ag.com

Volker Koster

Leiter CTO

  +49 2102 30961-0

volker.koster@mt-ag.com

Menü