Software4.0. Objektspektrum - de
Software4.0. Objektspektrum - de
Software4.0. Objektspektrum - de
Sonderdruck für
Viele Unternehmen befinden sich aktuell Das Standardprojekt ist agil, wenn man dem Zeitdruck geschuldet und damit „aus
in einem Transformationsprozess zu mehr 6 bis 12 Monate benötigt, um eine Idee der Not geboren“. Hinzu kommen auch
Agilität. Die Gründe sind vielfältig, wie im Rahmen eines Softwareentwicklungs- hier je nach Bedarf simple Updates, um
die häufigsten Ziele laut dem 13. jährli- projekts in Produktion zu bringen. Vor- Fehler zu beheben.
chen, internationalen Bericht zum Status aussetzung hierfür sind mindestens 3 bis 4 Das Ausnahmeprojekt ist agilissimo. Dies
von Agilität [SoAR13] zeigen: Releases der IT-Systeme pro Jahr, wobei betrifft höchstens 5 Prozent der Projekte.
kleine Änderungen oder Fehlerbehebun- Man findet sie nur in wenigen Unterneh-
■ eine beschleunigte Softwareausliefe- gen nicht gezählt werden. Eine schnellere men, insbesondere im Online-Handel. Die-
rung (74 Prozent der Befragten), Umsetzung ist kaum möglich, da Ideen se Ausnahmeprojekte schaffen es, Ideen in
■ das schnelle Reagieren auf sich ändern- auch noch beschlossen und in das Back- 1 bis 2 Wochen komplett umzusetzen.
de Prioritäten (62 Prozent), log für das nächste Release aufgenommen Nicht jedes Projekt muss agilissimo wer-
■ eine höhere Produktivität, beziehungs- werden müssen. In den meisten IT-Pro- den, wie auch Diskussionen um bimodale
weise geringere Projektkosten (51 Pro- jekten – schätzungsweise etwa 80 Pro- IT [GartnerBimodal] zeigen. Im Online-
zent), zent – ist das für unternehmenskritische Handel ist agilissimo erfolgsentscheidend,
■ eine bessere Abstimmung zwischen Softwarelösungen heute noch Standard. während für die Umsetzung von neuen
Fachbereich und IT (50 Prozent), Dies gilt, obwohl nahezu alle angeben, Gesetzen im öffentlichen Bereich meist
■ eine verbesserte Softwarequalität (43 agile Methoden wie Scrum oder Kanban genügend Vorlaufzeit besteht. Trotzdem
Prozent). einzusetzen. kennt der Autor niemanden, der nicht
Das Leuchtturmprojekt ist agiler und dennoch agiler werden möchte. Daher
Mit dem Ziel der beschleunigten Soft- hat meist einen hohen Time-to-Market- lohnt eine Analyse anhand der folgenden
wareauslieferung ist der Wunsch verbun- Druck. Sie machen circa 15 Prozent aller Punkte, was notwendig ist, um den nächs-
den, in sehr kurzer Zeit neue Ideen umzu- Projekte aus. Dort schafft man 10 bis 12 ten Schritt hinzu agilissimo zu machen.
setzen und sich einen Wettbewerbsvorteil Releases der Software pro Jahr und eine
zu verschaffen. Solche Ideen betreffen das Idee kann bestenfalls in 2 bis 3 Monaten Softwareentwicklung 4.0
Kerngeschäft und sind zumeist in unter- umgesetzt werden. Schneller geht dies
nehmenskritischen Kernsystemen umzu- nicht, da der Backlog für ein gestartetes Das Erfolgsrezept von Projekten bei
setzen. Release in der Regel fix ist. Dauern die OTTO, Zalando und Netflix, die sich
einzelnen Releases deutlich länger als ei- agilissimo nennen dürfen, ist, dass sie alle
Reifegrade Agilität nen Monat, ist circa ein Release pro Mo- sehr konsequent auf vier Bausteine und
nat möglich, indem an 2 bis 3 parallel deren Integration (untereinander) setzen
Anhand der genannten Aspekte zeigt sich, gearbeitet wird. Dieses Vorgehen ist meist (siehe Abbildung 2):
dass es zweckmäßig ist, den Reifegrad
von Projekten anhand der Umsetzungszeit
geschäftskritischer Ideen zu bestimmen
(siehe Abbildung 1). Das erste im Produk-
tivbetrieb eingesetzte Release eines neu
entwickelten und komplexen IT-Systems
dauert auch heute noch zwischen sechs
und 15 Monaten. Danach können Re-
lease-Zyklen und damit die Umsetzungs-
zeit neuer Ideen deutlich kürzer ausfallen.
Anhand der Umsetzungszeit lassen sich
drei Reifegrade von Softwareentwick-
lungsprojekten klassifizieren – agil, agiler
und agilissimo: Abb. 1: Die agile Reifegrad-Pyramide
10
www.objektspektrum.de
11
01/2020 Schwerpunkt: Moderne Vorgehensmodelle – Was kommt nach Scrum und Kanban?
12
www.objektspektrum.de
der Entwicklung bis in die Produktion. matisierung bis zur Produktivsetzung mit Trend zu leichtgewichtigen Architekturen,
Letztlich ermöglicht nur die Kombination weniger Risiken umsetzen lässt. die ein sehr agiles Vorgehen unterstüt-
aus elastischer Cloud und „Infrastruc- Testverfahren für einzelne isolierte Mi- zen. Andere Trends sind event-gesteuerte
ture as Code“ die für ein „Continuous croservices sind zudem weniger aufwen- Architekturen mit Streaming-Tools wie
Deployment“ notwendige Testautoma- dig als Regressionstests für komplexe Kafka oder leichtgewichtige Prozess- oder
tisierung und die damit erforderlichen Deployment-Modulithen. In Verbindung Fallsteuerungen durch Produkte wie Ca-
Ressourcen für automatisierte Last- und mit einer verlässlichen Abhängigkeits- munda, Activiti und Drools, die schwer-
Performance-Tests. analyse der Microservices untereinander gewichtige Produkte rund um einen
Der Betrieb in der Cloud stellt weiterhin können somit deutlich kleinere Testsuiten selbstständigen Prozess-Server ablösen.
Anforderungen an die Anwendungsent- zielgenau angestoßen und Laufzeiten und
wicklung, wobei gemäß der Definition Ressourcenverbrauch minimiert werden. Wechselwirkungen
in [ENT18] „cloud-native“ Anwendun- Der Autor ist seit 2015 überzeugt, dass der Disziplinen
gen entwickelt werden sollten. Die zehn Microservices für unternehmenskriti-
Schlüsseleigenschaften in [TH18] oder die sche IT-Systeme der Architekturstil der Unter der Annahme, dass „agilissimo“ als
zwölf Faktoren in [12FACT17] sind ein Zukunft sind. Das gilt insbesondere für Reifegrad und die Umsetzung einer Idee
guter Startpunkt hierfür. Eine Empfehlung größere Microservices, sogenannte „Self- innerhalb von zwei Wochen angestrebt
in [TH18] ist der Einsatz loser gekoppel- Contained Systems“ (SCS), wie sie bei- wird, lässt sich die Wechselwirkung der
ter Microservices, welche die nächste Vo- spielsweise in [OTTO16] und [Til19], vier Disziplinen agiles Vorgehen, DevOps,
raussetzung für „agilissimo“ sind. Seiten 42 ff. dargestellt werden. Trotz- Cloud und Microservices aufzeigen: Das
dem muss auch heute nicht jeder Bereich agile Vorgehen ermöglicht die kurzen Ent-
Microservices und agilissimo in solchen IT-Systemen mit Hunderten scheidungswege, während DevOps bezie-
oder sogar Tausenden von Bearbeiter- hungsweise BizDevOps alle Entschei-
Das Risiko, ein neues Release eines ver- jahren agilissimo sein. Deshalb bietet es dungsträger einbezieht.
gleichsweise kleinen Microservice pro- sich an, Teilsysteme mit hohem „Time- Da innerhalb von zwei Wochen von der
duktiv zu setzen, ist deutlich geringer als To-Market“-Druck mit Microservices zu Idee bis zur Produktion keine Zeit für
bei großen und komplexen Deployment- bauen, während für andere Teilsysteme aufwendige manuelle Tests bleibt, ist die
Monolithen oder -Modulithen. Voraus- gut strukturierte Modulithen die erste vollständige Automatisierung der „Build-
setzung dafür ist, lose gekoppelte und Wahl bleiben. Deploy-Test-Run-Pipeline“ in allen Um-
damit voneinander unabhängig installier- Entsprechend zeigt sich ein eindeutiger gebungen unabdingbar – und zwar von
bare Microservices zu entwickeln. Dann Trend, dass die größten existierenden IT- der Entwicklung über die verschiedenen
lösen Fehler keine Fehlerlawine über ab- Systeme nicht mehr als EIN Modulith, Teststufen bis zur Produktion. Diese
hängige Microservices aus. Microservices sondern in mehreren Modulithen und Mi- Automatisierung ist wiederum nur mit
sind daher ein Architekturstil, mit dem croservices gebaut werden. Insgesamt ste- Cloud-Eigenschaften wie „Infrastructure
sich schrittweise die vollständige Auto- hen Microservices stellvertretend für den as Code“ bis auf die Ebene der Hardware-
13
01/2020 Schwerpunkt: Moderne Vorgehensmodelle – Was kommt nach Scrum und Kanban?
Ressourcen zuverlässig möglich. Die Elas- um die Entwicklung von kleinen über- mit der Agilität ist. Jeder beschäftigt sich
tizität der Cloud ermöglicht zugleich ein schaubaren Apps oder in Cloud-Plattfor- damit, aber die wenigsten haben bereits
günstiges Kosten- und Nutzenverhältnis. men angebotenen Services geht. Diese sind einen sehr hohen Reifegrad erreicht. So
Zahlreiche Microservices wären wieder- meist von überschaubarer Komplexität. schaffen es vorerst nur die wenigsten,
um ohne einen hohen Automatisierungs- Vielmehr adressiert Softwareentwicklung „agilissimo“ zu sein und eine Idee inner-
grad und die beschriebenen DevOps- und 4.0 die Entwicklung sehr umfangreicher halb von zwei Wochen trotz umfangrei-
Cloud-Eigenschaften nicht zu akzeptab- unternehmenskritischer Systeme. Doch cher Change Requests in Produktion zu
len Kosten als Ersatz für große Deploy- auch dort lässt sich die Transformation zu bringen. ||
ment-Modulithen zu betreiben. Welches mehr Agilität schrittweise innerhalb der
Unternehmen möchte schon Hunderte vier Disziplinen vorantreiben, sodass die
von Microservices ständig manuell neu Risiken jederzeit beherrschbar bleiben. Der Autor
installieren und überwachen? Aus der Beobachtung zahlreicher Pro-
Und Microservices tragen schließlich jekte in vielen Unternehmen schließt der
dazu bei, die Risiken bei der Entwick- Autor, dass sich heute alle Unternehmen
lung hin zum „Continuous Deployment“ und öffentlichen Institutionen mehr oder
zu verringern. Durch den reduzierten weniger mit den vier Disziplinen der Soft-
Testaufwand bei jeder Produktivsetzung wareentwicklung 4.0 beschäftigen. Jedes
lässt sich immer mit genügend Sicherheit Projekt oder Produkt besitzt allerdings
testen. Der Kreis der vier Disziplinen der in jeder Disziplin einen unterschiedlichen
Softwareentwicklung 4.0 schließt sich, Reifegrad. Entsprechend gibt es kaum ein
weil unabhängige Microservices die beste Projekt, dass sich agilissimo nennen darf:
Voraussetzung zur Bildung kleiner agiler Während der eine bei der Cloud weiter Dr. Karl Prott
Teams sind, die möglichst unabhängig ist, punktet der andere mit einem höhe- ([email protected])
voneinander entscheiden, entwickeln, tes- ren Reifegrad bei DevOps. Konsequent verantwortet seit über 20 Jahren als
ten und produktiv setzen sollen. auf Microservices setzen eher diejenigen, IT-Architekt bei Capgemini die Umsetzung
die beim Thema Agilität weit fortgeschrit- unternehmenskritischer IT-Systeme. Seit
Softwareentwicklung 4.0: ten sind und in ihren Projekten bereits an einiger Zeit unterstützt er als Architekt
Mehr als die Summe ihrer Teile Grenzen der Architektur stoßen, um noch die zahlreichen Angebote und hat dabei die
agiler zu werden. Bausteine von Softwareentwicklung 4.0 fest
Dem aufmerksamen Leser wird klar sein, So kann man zusammenfassen, dass es im Blick.
dass es bei Softwareentwicklung 4.0 nicht mit Softwareentwicklung 4.0 ähnlich wie
14