Suchen

Gesponsert

Mit GitOps-Workflows komplexe Anforderungen souverän lösen Do less – das einfache Prinzip der Anwendungsentwicklung

Die Kombination von „Agil + Git + DevOps“ ermöglicht es, ein simples, schon 20 Jahre altes Prinzip der Agilität anzuwenden: Do less. Richtig eingesetzt, unterstützt das Prinzip die Vermeidung unnötiger Kosten durch eine zielgerichtete Anwendungsentwicklung.

Von einer Schwäche (Faulheit) zur Tugend mit einem einfachen Prinzip.
Von einer Schwäche (Faulheit) zur Tugend mit einem einfachen Prinzip.
(Bild: Materna)

Usability ist ein entscheidender Faktor bei der Entwicklung einer Applikation. Entwickler wissen: Sobald eine Anwendung – sei es privat oder im beruflichen Alltag – nicht den Handlungsschritten des Endanwenders folgt, zu umständlich ist oder nicht alle Funktionen abdeckt, wird sie nicht genutzt. Die Konsequenzen sind eine steigende Unzufriedenheit der Mitarbeiter sowie zum Beispiel schlechte Bewertungen in App Stores. Das Bedienkonzept muss von Beginn an überzeugen. Gleichzeitig soll die Anwendung die Möglichkeit für eine iteraktive Weiterentwicklung ohne zu hohe Kosten ermöglichen.

Do Less – komplexe Herausforderungen entspannt angehen

Wir bei Materna setzen auf den Agile GitOps-Ansatz, um unterschiedliche Herangehensweisen miteinander zu verknüpfen und diese zu automatisieren.
Wir bei Materna setzen auf den Agile GitOps-Ansatz, um unterschiedliche Herangehensweisen miteinander zu verknüpfen und diese zu automatisieren.
(Bild: Materna)

Die genannten Anforderungen stellen nur einen kleinen Ausschnitt der Herausforderungen dar, denen sich Entwickler stellen müssen. Um diese Problematik zu umgehen, gibt es ein einfaches Prinzip der Agilität: Do Less. Dem Prinzip folgend wird eine augenscheinliche Schwäche (Faulheit) zu einer Stärke, bzw. zu einer Tugend.

Durch den Rückgriff auf agile Vorgehensweisen mit sogenannten GitOps-Workflows ist es möglich, diesem Prinzip gerecht zu werden. Die Grundlage hierfür bildet ein agiles Vorgehen. Dazu eigenen sich zum Beispiel Produkt- bzw. Projektmanagement-Modelle wie Kanban oder Scrum. Durch die agilen Prinzipien sowie kurze Feedback-Zyklen unterstützen die genannten Modelle GitOps-Workflows. Durch das hohe Abstraktionsniveau der Modelle ermöglichen sie nicht nur einen flexiblen Einsatz. Auch problemspezifische Lösungsansätze lassen sich einfach integrieren. Gleichzeitig überzeugen die genannten Modelle durch einfach einzuprägende Leitlinien, die den Ansatz des Do-Less-Prinzips unterstützen:

  • You aren’t gonna need it (YAGNI) – Setzen Sie nur das um, was später benötigt wird.
  • Big design upfront (BDUF) – Denken Sie an das große Gesamtbild und ermöglichen Sie sich dadurch die benötigte Flexibilität.
  • Keep it simple, stupid (KISS) – Nutzen Sie einfache, statt komplizierte Lösungen.
  • Think big, start small – angelehnt an BDUF: Denken Sie an das große Ganze, beginnen Sie jedoch mit überschaubaren Zielen.

Der agile GitOps-Ansatz nutzt die Vorteile von Scrum oder auch Kanban, ohne dabei die elementaren Prinzipien der agilen Bewegung zu vernachlässigen, wie z. B. „Durch die rechtzeitige Fertigstellung und Auslieferung hochwertiger Software Kunden zufriedenstellen“. Stattdessen werden diese Werte unterstützt und gefördert.

Mit der richtigen Herangehensweise schnell ans Ziel

Neue Projekte bergen auch immer neue Aufgaben und Herausforderungen. Nichtsdestotrotz ist es gerade zu diesem Zeitpunkt sinnvoll, neben den fachlich bezogenen Fragen die technische Betrachtungsweise nicht außer Acht zu lassen:

  • Wer nutzt und unterstützt das Projekt?
  • Wie viele Personen arbeiten daran?
  • Wie aktiv ist das Projekt selbst?
  • Wie häufig erfolgt ein Release?

Durch die Beantwortung dieser Fragen ist es möglich, hinsichtlich der Entwicklung eines releasefähigen Produktes die Anforderungen festzulegen. Anhand dieser Anforderungen lassen sich zudem die entsprechenden Sprints definieren, die bis zur Fertigstellung benötigt werden.

Vom Microservice Toolstack über die Cloud bis hin zu CI/CQ/CD

Wichtige Elemente im Rahmen einer Do less-Planung sind die Standardisierung sowie die Automatisierung manueller Schritte. Dabei geht es vor allem darum, sich wiederholende Schritte im Rahmen einer Entwicklung mit Standards zu versehen, um dann für die spezielleren Anforderungen die individuellen Lösungsschritte zu identifizieren.

Wir bei Materna setzen auf den Agile GitOps-Ansatz, um unterschiedliche Herangehensweisen miteinander zu verknüpfen und diese zu automatisieren. Im Rahmen der Standardisierung setzen wir im Projektverlauf bereits bei der Entscheidung über die Tools für die Entwicklung an. Dazu zählen u. a.: Entwicklungsumgebung, Cloud-Provider oder auch Toolstacks.

Ein weiterer Bestandteil unseres Ansatzes ist der Rückgriff auf einen standardisierten Toolstack. Im Vorfeld wird dessen Einsatzmöglichkeit in Abhängigkeit von dem Projekt geprüft. Ebenso wird entschieden, welche Tools für die spezielleren Anforderungen noch hinzugezogen werden. Obwohl in diesem Zusammenhang die einzelnen Microservice-Architekturen auch On-Premise oder Hybrid gehosted werden können, wird hierbei auf eine Cloud wie zum Beispiel AWS gesetzt. Insbesondere durch den Rückgriff auf die Cloud kann die Wirksamkeit des Agile GitOps-Ansatzes in Gänze genutzt werden.

Ebenso wichtige, weitere Bestandteile innerhalb unserer Prozesse sind Infrastructure as Code, das insbesondere in einer Cloud wie AWS seine Stärken demonstriert, die Continious Integration sowie die Verbindung von Git und DevOps.

Erfahren Sie in unserem Fachbeitrag mehr zu unserem Agilen GitOps-Ansatz und den Vorteilen für die agile Anwendungsentwicklung.

Lesen Sie mehr zum Thema Cloud Entwicklung: DO LESS

Advertorial - Was ist das?

Über Advertorials bieten wir Unternehmen die Möglichkeit relevante Informationen für unsere Nutzer zu publizieren. Gemeinsam mit dem Unternehmen erarbeiten wir die Inhalte des Advertorials und legen dabei großen Wert auf die thematische Relevanz für unsere Zielgruppe. Die Inhalte des Advertorials spiegeln dabei aber nicht unbedingt die Meinung der Redaktion wider.

(ID:46638944)