Suche
Features gekonnt definieren und implementieren

Jede Änderung ein Feature

Hendrik Ebbers
© iStockphoto.com/tharrison

Um kontinuierlich Software zu deployen, die den Kunden und Endanwender zufriedenstellt, ist es im Bereich der Entwicklung wichtig, neue Workflows und Technologien einzusetzen. Ziel sollte es sein, möglichst flexibel auf Änderungen, Kundenwünsche und Probleme reagieren zu können. Ein Verfahren, das sich hier bewährt hat, ist das „Feature-driven Development“.

Wenn es heute um die Modernisierung und Verbesserung von Software und deren Entwicklungszyklus geht, dann ist einer der am meisten genannten Punkte die Verkürzung von Releasezyklen. Durch CD/CI und Tools wie Jenkins ist es möglich, das Releasen von Software deutlich zu vereinfachen und zu automatisieren. Setzt man die hier benötigten Prozesse ideal um, so sind Releases theoretisch jederzeit auf Knopfdruck möglich. Dies führt dazu, dass man die Zeit zwischen zwei Releases deutlich verkürzen kann. Die Codedifferenz zwischen zwei Auslieferungen verringert sich somit deutlich. Neben der Automatisierung des Deployments mit Tests, Build und automatischer Verteilung der Artefakte gibt es aber noch mehr Punkte, die ein Entwicklerteam beachten sollte. Um so flexibel wie möglich auf Änderungen und Probleme der Software eingehen zu können, hat sich das Feature-driven Development etabliert. Hier wird jede Änderung als Feature betrachtet. Durch Nutzung verschiedener Git-Workflows lassen sich die so definierten Features isoliert entwickeln und können gezielt dem nächsten Release hinzugefügt werden. Parallel können Entwickler Feature-Toggles nutzen, um besser auf Probleme im Produktivbetrieb reagieren zu können. Außerdem können so neue Funktionen gezielt an bestimmten Benutzergruppen getestet werden. Im Folgenden sollen diese verschiedenen Aspekte des Feature-driven-Development-Ansatzes genauer betrachtet werden.

(Lesen Sie den kompletten Artikel im Java Magazin 2.15)

Geschrieben von
Hendrik Ebbers
Hendrik Ebbers
Hendrik Ebbers (@hendrikEbbers) ist Java-Entwickler bei der Canoo Engineering AG. Sein Hauptinteresse liegt hierbei in den Bereichen JavaFX, User Interfaces und Middleware. Hendrik leitet die JUG Dortmund. Auf seiner Webseite www.guigarage.com bloggt er regelmäßig über Architekturansätze im Bereich JavaFX und zu seinen verschiedenen Open-Source-Projekten wie Dolphin Platform oder DataFX. Sein Buch "Mastering JavaFX 8 Controls" ist 2014 bei Oracle Press erschienen. Hendrik ist JavaOne Rockstar, Java Champion und JCP Expert Group Member.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.