View
4
Download
0
Category
Preview:
Citation preview
Fünf DevOps-Verfahren für das KonfigurationsmanagementMithilfe von Dimensions CMAshley Owen, Produktmanagement
White PaperDimensions CM
Inhaltsverzeichnis Seite
Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Versionierung aller Elemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Führen priorisierter Backlogs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Linksverschiebung dank kontinuierlicher Überprüfung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Automatisierung aller Prozesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Gesamtüberblick dank Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Fazit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1www .microfocus .com
Einleitung
Eine Modernisierung der Verfahren für Anwendungsentwicklung und -bereitstellung ist angesichts der
wachsenden Anforderungen in Bezug auf Innovationen und die Agilität von Unternehmen unabdingbar
geworden .
Tools für das Änderungs- und Konfigurationsmanagement von Softwareanwendungen sind für die
Bereitstellung verschiedener Verfahren zur Stabilisierung, Nachverfolgung und Kontrolle der Versionen
und Konfigurationen verschiedener Softwareelemente maßgeblich . Oft enthalten diese Tools integrierte
Funktionen für das Änderungsmanagement während der Entwicklung, die Fehlerverfolgung, Peer-
Reviews, das Buildmanagement, das Testmanagement, die automatisierte Implementierung und weitere
damit verbundene Prozesse .
Micro Focus Dimensions CM ist eine bewährte prozessorientierte SCM-Lösung, die stark überarbeitet
wurde und umfangreiche Neuerungen enthält, um den heutigen agilen Prozessen und DevOps-
Verfahren Rechnung zu tragen .
Kunden, die sich für Dimensions CM entschieden haben, berichten durchgehend von einer höheren
Geschwindigkeit und Qualität in der Entwicklung neuer und geänderter Funktionen für komplexere
Umgebungen und deren Bereitstellung .
Dimensions CM bietet eine erweiterte Skalierbarkeit, eine höhere Leistung, mehr Sicherheit und
bessere Integrationsmöglichkeiten als Open Source-Versionskontrollsysteme . Gleichzeitig unterstützt
das Produkt gewohnte sowie schnelle moderne Entwicklungsprozesse und -verfahren, sehr schnelle
Freigaben und gängige Funktionen zur Unterstützung von Programmierern . Den Anforderungen
kleinerer Projekte und lokaler Teams im ganzen Unternehmen, bei denen Git zum Einsatz kommt, wird
mit Git Connector genüge getan, sodass auch in diesem Bereich Verbesserungen im Hinblick auf
Skalierbarkeit, Leistung, Sicherheit und Integrationsmöglichkeiten erzielt werden .
Die zentralisierten Managementverfahren, die Dimensions CM heute bietet, sind zunehmend gefragter,
da sie hinsichtlich der in großen, weltweit verteilt arbeitenden Teams und der bei der Implementierung in
Unternehmen erforderlichen Verfahren dieselben Vorteile bieten wie verteilte Versionskontrollsysteme .
Sie ermöglichen nachgelagerte Test- und Freigabeprozesse und sorgen gleichzeitig für die erforderliche
Transparenz, Kontrolle und Nachverfolgbarkeit .
Dieses White Paper befasst sich mit fünf DevOps-Verfahren, die für die Implementierung einer
Änderungs- und Konfigurationsmanagementlösung für Softwareanwendungen von zentraler Bedeutung
sind .
Kunden, die sich für Dimensions CM entschieden haben, berichten durchgehend von einer höheren Geschwindigkeit und Qualität in der Entwicklung neuer und geänderter Funktionen für komplexere Umgebungen und deren Bereitstellung .
2
White PaperFünf DevOps-Verfahren für das Konfigurationsmanagement
Versionierung aller Elemente
Versionierung ist mittlerweile ganz offensichtlich zu einem alltäglichen Verfahren geworden – oder etwa
doch nicht? Über den Quellcode hinaus enthalten Softwareanwendungen und -produkte oft Bilder, Töne,
Binär- und Manifestdateien, Module, Anleitungen und vieles mehr . Dateien, die integraler Bestandteil
einer Anwendung sind und zusammen mit dem Code versioniert werden müssen, auch wenn sie nicht
direkt zum Code gehören . Die Maxime der agilen Softwareentwicklung, dass die Datenhoheit bei einem
zentralen Versionskontrollsystem liegen sollte, gilt nun in erweitertem Umfang auch für Infrastrukturen,
Konfigurationen und Datenbanken . Somit kann das Softwaresystem als ein ganzheitliches Konzept
begriffen werden .
Sollten angesichts der zunehmenden Verbreitung und Verwendung von Containern nicht auch die
entsprechenden Abbilder und ihre Inhalte versioniert werden, und sollte nicht sichergestellt sein,
dass die Wiederverwendung oder Implementierung von Containern durch Freigaben kontrolliert wird?
Aus der Verwendung von Technologien wie Docker ergeben sich zwar zahlreiche Vorteile, wie z . B .
einheitliche Implementierungsabbilder für Entwicklungs- und Geschäftsteams, allerdings bestehen
unternehmensweit Bedenken hinsichtlich der Vertrauenswürdigkeit und Informationssicherheit .
Bei der Versionierung all dieser Elemente sollten Sie weder zugunsten von Entwicklerflexibilität auf
unveränderliche Commit-Verläufe verzichten noch den Entwicklern zu sehr vertrauen, wenn es darum
geht, dass Sicherheits- und Compliance-Risiken bereits im Quellcode verhindert werden und nicht erst
später, wenn entsprechende Änderungen teuer werden können .
Teams, in denen eine durchgehende Versionierung aller Elemente erfolgt, sehen sich nicht ständig der
Herausforderung gegenüber, den Verlauf und die Abhängigkeiten von Dateien nachzuverfolgen, die u . U .
über mehrere Repositorys verteilt vorliegen . So ist sichergestellt, dass Dateien, aus denen das System
oder Produkt besteht, nicht auf öffentlichen Servern gespeichert, in Ordnern versteckt auf dem Laptop
einzelner Mitarbeiter gespeichert oder in eine nicht versionierte Datenbank eingebettet werden .
Dimensions CM wurde bereits erfolgreich für einige der anspruchsvollsten und komplexesten Produkte
und Programme eingesetzt und somit zur Versionierung einer Vielzahl von Informationsarten verwendet .
Mit Dimensions CM profitieren die für Qualitätssicherung und Freigaben Verantwortlichen von einer
konsolidierten Übersicht über alle Artefakte der Anwendungsentwicklung und -bereitstellung . Zudem
können Tools für die Implementierungsautomatisierung auf eine zentrale Version zurückgreifen .
Die zunehmende Verbreitung von DevOps-Konzepten erfordert ein sicheres, skalierbares
Versionskontrollsystem, das die Anforderungen an Sicherheit, Compliance und Leistungsfähigkeit in
Unternehmen mit geschäftskritischen und komplexen Anwendungen erfüllt .
Dimensions CM wurde bereits erfolgreich für einige der anspruchsvollsten und komplexesten Produkte und Programme eingesetzt und somit zur Versionierung einer Vielzahl von Informationsarten verwendet .
3www .microfocus .com
Führen priorisierter Backlogs
Ein gut priorisiertes Backlog erleichtert nicht nur die Freigabe- und Iterationsplanung, sondern sorgt
auch für die Bekanntgabe aller Aspekte, mit denen die beteiligten Teams sich befassen werden . Dies
trägt dazu bei, Erwartungen mit allen Interessengruppen und anderen Teams abzuklären und sorgt für
eine verbesserte Kommunikation und Zusammenarbeit .
Das Backlog sollte kontinuierlich priorisiert werden . Sobald ein Iterationsplan feststeht, sollte der
Fokus auf der Ausführung und Bereitstellung liegen und nicht mehr auf der Änderung der Rangfolge
der festgelegten Elemente . Natürlich können alle anderen Elemente neu priorisiert werden, wenn
neue Informationen bekannt werden . Dies erfolgt normalerweise in Form von Rückmeldungen oder
Informationen, die vom Team oder anderen Interessengruppen gesammelt werden .
Zu den Priorisierungstechniken gehört, dass der Produktverantwortliche die Rangfolge im Backlog
festlegt . Die darin aufgenommenen Elemente sollten zunächst in Kategorien wie „Muss/Sollte/Kann/Darf
nicht vorhanden sein“ eingeteilt werden . Anschließend können sie einzeln im Backlog in eine Rangfolge
gebracht werden, damit das Team immer mit dem am höchsten priorisierten Element beginnen kann .
Außerdem ist bei der Erstellung des Fahrplans die relative Mischung von Funktionen, Fehlern und
technischen Rückständen zu beachten, sodass die Entwicklungsteams den Ansatz einer kontinuierlichen
(Kanban) oder iterativen (Scrum) Arbeitsweise verfolgen können .
Sobald eine Iteration oder ein Sprint ausgeführt wird, sollten der verbleibende Arbeitsaufwand geschätzt
und nachverfolgt sowie Hindernisse ermittelt werden, die das Fortschreiten des Projekts verhindern,
sodass sie gelöst und die Entwicklungsgeschwindigkeit beibehalten werden kann .
Dimensions CM unterstützt traditionelle, moderne und agile Entwicklungsverfahren wie z . B . die
Verwaltung von Backlogs, die Freigabe- und Iterationsplanung, gemeinschaftliche Peer-Reviews und
eine Toolchain zur kontinuierlichen Überprüfung, mit der nicht nur der Build automatisiert wird, sondern
auch die ausgewählten codebezogenen Tools . Dazu gehören z . B . statische Analysetools, Open Source-
Kennzeichnungstools und webbasierte Tools zur Erkennung von Sicherheitslücken und Schwachstellen .
Auf diese Weise ist sichergestellt, dass die Entwicklungsteams schnelle Rückmeldungen erhalten .
Linksverschiebung dank kontinuierlicher Überprüfung
Unter Linksverschiebung wird die Fokussierung auf Qualität vom ersten Tag an verstanden, um Fehler,
Schwachstellen oder andere Probleme so schnell wie möglich erkennen und beheben zu können .
Das Prinzip der Linksverschiebung anzuwenden, ist der Schlüssel zu einer um 25 % schnelleren
Bereitstellung von Systemen und Anwendungen bei gleichzeitig höherer Kundenzufriedenheit,
geringeren Entwicklungskosten und höherer Qualität sowie Produktionsverfügbarkeit .
Dimensions CM unterstützt traditionelle, moderne und agile Entwicklungsverfahren wie z . B . die Verwaltung von Backlogs, die Freigabe- und Iterationsplanung, gemeinschaftliche Peer-Reviews und eine Toolchain zur kontinuierlichen Überprüfung .
4
White PaperFünf DevOps-Verfahren für das Konfigurationsmanagement
Da die Entwickler sofort Rückmeldung erhalten, indem gefundene Probleme und Schwachstellen in den zur Codeüberprüfung vorgelegten Dateien markiert werden, sorgt Dimensions CM für eine schnelle Problemlösung und einen deutlich geringeren Überarbeitungsaufwand .
Bei einer Linksverschiebung wird der Build-Test-Bereitstellungs-Zyklus beschleunigt, sodass die
Entwicklungsteams schnell Rückmeldungen erhalten und eine extrem schnelle Vorbereitung für die
automatisierte Implementierung und Bereitstellung möglich ist . Die Automatisierung von kontinuierlicher
Integration und Komponententests mit der bevorzugten codebezogenen Toolchain sorgt für eine
erheblich Reduzierung von Fehlern und Schwachstellen sowie für eine höhere Freigabebereitschaft und
eine erfolgreichere Implementierung .
Dimensions CM enthält eine konfigurierbare Toolchain zur kontinuierlichen Überprüfung, die leicht
mit Dimensions Build oder einem CI-Build-Tool wie Jenkins, statischen Analysetools, Open Source-
Kennzeichnungstools und webbasierten Tools zur Erkennung von Sicherheitslücken und Schwachstellen
kombiniert werden kann . Da die Entwickler sofort Rückmeldung erhalten, indem gefundene Probleme und
Schwachstellen in den zur Codeüberprüfung vorgelegten Dateien markiert werden, sorgt Dimensions CM
für eine schnelle Problemlösung und einen deutlich geringeren Überarbeitungsaufwand .
_________________________________________________________________________________
Mit der Flexibilität, Toolchains zur kontinuierlichen Überprüfung festlegen und planen zu können, sind
Anwendungsteams in der Lage, das Prinzip der Linksverschiebung in einem Tempo umsetzen und
weiterentwickeln, das für ihr jeweiliges DevOps-Konzept sinnvoll ist .
Darüber hinaus führt Dimensions CM die Kennzahlen und KPIs aus der Toolchain zur kontinuierlichen
Überprüfung zusammen und ermöglicht es so, Aussagen über die Qualität und Freigabebereitschaft
der Entwicklungsströme und der damit verbundenen Änderungskataloge zu treffen . Diese Aggregation
bietet einen einzigartigen Blick aus DevOps-Sicht auf die Entwicklung, die Sicherheit und das Geschäft .
Abb. 1
Toolchain zur kontinuierlichen Überprüfung
_________________________________________________________________________________
5www .microfocus .com
Automatisierung aller Prozesse
Häufig lassen sich beim DevOps-Konzept Schwierigkeiten auf fehleranfällige manuelle Arbeiten
beim Testen und Implementieren sowie dem Bereitstellen, Klonen und Freigeben von Umgebungen
zurückführen . Durch die Automatisierung dieser Abfolge von Implementierungsaufgaben und
-vorgängen werden unzählige Stunden für wichtigere Aufgaben frei . Dazu gehören beispielsweise
automatisierte Tests und die bessere Zusammenarbeit der DevSecOps-Bereiche .
Automatisierung ist in einer betrieblichen DevOps-Kultur von größter Bedeutung . Unternehmen,
die DevOps-Konzepte anwenden, sind stark daran interessiert, einen möglichst hohen
Automatisierungsgrad zu erreichen . Die Automatisierung ermöglicht es ihnen, menschliches Versagen
zu vermeiden und Prozesse im gesamten Softwareentwicklungs- und Bereitstellungszyklus zu
standardisieren .
Die Kombination aus kontinuierlicher Überprüfung, automatisierten Tests und
Implementierungsautomatisierung bildet den Kern des DevOps-Konzepts . Sie ermöglicht konsistente
und routinemäßige Codeimplementierungen . Ohne Automatisierung wären insbesondere zuverlässige
Codeimplementierungen unmöglich . Insofern ist die Automatisierung ein wesentliches Element, das bei
Einführung einer DevOps-Kultur unbedingt umgesetzt werden muss .
Nur zu oft wird bei der Umsetzung von DevOps-Verfahren der Einwand „Wir haben keine Zeit für
Automatisierung“ vorgebracht . Obwohl die Einführung von automatisierten Prozessen anfänglich
tatsächlich mehr Zeit in Anspruch nimmt, zahlt sie sich aus, da Codeimplementierungen zuverlässiger
und schneller durchgeführt werden und weniger kostspielige übergeordnete Unterbrechungen
auftreten, die bei heutigen Implementierungen an der Tagesordnung sind .
Dimensions CM liefert im Zusammenspiel mit Deployment Automation die Vorteile der kontinuierlichen
Überprüfung, automatisierten Implementierung und Bereitstellung in lokalen, virtuellen und
cloudbasierten Umgebungen . Mit seinen über 100 Plugins bietet Micro Focus Deployment Automation
umfassende Unterstützung für die Bereitstellung von Testumgebungen, Tests und koordinierten
Software- und Infrastrukturaktualisierungen .
Gesamtüberblick dank Dashboard
Dank der automatisierten Erfassung von mit Aufgaben und Vorgängen rund um die Entwicklung
und Bereitstellung verbundenen Metadaten und Revisionslisten kann das CM-Aufzeichnungssystem
problemlos viele Kennzahlen und KPIs des gesamten Software- und Entwicklungszyklus bereitstellen .
Dies ermöglicht eine Übersicht über den Fortschritt, den Status und die Bereitschaft der Pipelines für
die Anwendungsentwicklung und -bereitstellung .
_________________________________________________________________________________
Mit seinen über 100 Plugins bietet Micro Focus Deployment Automation umfassende Unterstützung für die Bereitstellung von Testumgebungen, Tests und koordinierten Software- und Infrastrukturaktualisierungen .
162-DE0119-002 | S | 04/17 | © 2017 Micro Focus . Alle Rechte vorbehalten . Micro Focus und das Micro Focus Logo sowie andere Namen sind Marken oder eingetragene Marken von Micro Focus oder Tochterunternehmen bzw . Schwestergesellschaften in Großbritannien, den USA und anderen Ländern . Alle weiteren Marken sind Eigentum ihrer jeweiligen Inhaber .
Micro FocusDeutschlandFraunhoferstraße 7D-85737 Ismaning00 800-58102130
Micro FocusSchweizMerkurstrasse 148953 DietikonSwitzerland00 800-58102130
Micro FocusFirmenhauptsitzVereinigtes Königreich+44 (0) 1635 565200
www.microfocus.com
Die Funktionen von Dimensions CM zur schnellen Bereitstellung von Rückmeldungen an die
Entwicklungsteams dank der Toolchain zur kontinuierlichen Überprüfung sowie die Funktionen
zur Zusammenstellung der zugehörigen Kennzahlen versetzen Organisationen in die Lage,
ihren Durchsatz und die Agilität erheblich zu steigern . Kunden, die Dimensions CM 14 .x
einsetzen, berichten von besseren Erfolgsquoten bei Änderungen, einer wesentlich höheren
Freigabefrequenz und einer gesteigerten Produktivität und Effizienz der Entwickler .
Fazit
Angesichts der oben genannten Verfahren für agile Softwareentwicklung und DevOps-
Konzepte in Dimensions CM 14 .x werden alle Kunden mit Maintenance-Versionen daran
erinnert, dass eine automatische Aktualisierung verfügbar ist . Zusätzlich bieten wir Kunden mit
erheblichen CM-Investitionen einen kostenlosen Upgrade Lab-Zugang, sodass der Test- und
Überprüfungsaufwand bei der Aktualisierung wegfällt und sie die Möglichkeit haben, alte CM-
Verfahren anzupassen und zu modernisieren .
In unserer neusten Version, Dimensions CM 14 .3 .2, haben wir die Toolchain für
kontinuierliche Integration um Verwaltungs- und Sicherheitsfunktionen von Open Source-
Komponenten erweitert, für unsere Unternehmenskunden Funktionen zur Bewältigung
der Herausforderungen und Risiken im Zusammenhang mit ausufernden Git-Projekten
hinzugefügt und eine Docker Private Registry mit Versionierung und Freigabefunktionen für
Abbilder und Container bereitgestellt .
www.microfocus.com
Abb. 2
Aggregierte KPI-Kennzahlen
__________________________________________________________________________
Recommended