Entwicklung

Agiler Ansatz

Sie möchten Ihre bestehende IT-Landschaft ausbauen und benötigen eine neue Software-Lösung oder wollen Ihre bestehenden Anwendungen weiterentwickeln. Ob es um ein neues Modul für Ihre Digitalisierungsplattform, eine maßgeschneiderte mobile App oder eine klassische Desktop Anwendung geht, ist es entscheidend, von Beginn an kontinuierlich den größtmöglichen Nutzen zu generieren.
Das agile Vorgehen mit seinen regelmäßigen Feedback-Schleifen, der sofortigen Integration von Änderungsanforderungen in das Product backlog und den Lieferungen von qualitätsgesicherten Software-Inkrementen am Ende jeden Sprints gewährleistet eine zu jedem Zeitpunkt optimale Lösung.

Requirements Engineering

Die Anforderungen werden kompakt als User Stories erfasst und im Product backlog nach Priorität sortiert gespeichert. Eine Umpriorisierung und Ergänzung des Product backlogs ist jederzeit möglich. Die User Stories aus dem Product backlog werden von oben nach unten umgesetzt, pro Sprint jeweils soviele User Stories, wie es mit der aktuellen Team-Kapazität möglich ist.

Die Umsetzung

Die Team-Umsetzung erfolgt nach dem Planning dann eigenverantwortlich durch das Team. Am Ende des Sprints liefert das Team ein Software-Inkrement, das potentiell ausgeliefert und damit sofortigen Nutzen für die Anwender liefert.

Diese Vorgehensweise ermöglicht einen sehr frühen Start einer Anwendung, die beginnend als MVP (minimal viable product) schrittweise immer mehr business value durch weitere integrierte Features liefert.

 

Clean Code

Die technischen (non-functional) Anforderungen an die Anwendung sind neben Stabilität, Performance, Security und weiteren auch die Evolvierbarkeit. Dies bezeichnet den technischen Reifegrad der Anwendung für eine gute zukünftige Weiterentwicklung. Kriterien dafür sind durch die clean code Prinzipien beschrieben, z.B. lose Kopplung, hohe Kohäsion, SOLID-Prinzipien. Da es sich dabei um nicht-funktionale Anforderungen handelt, werden sie erfahrungsgemäß häufig niedrig priorisiert oder gar nicht beachtet. Dies kann im Laufe der Zeit zu einer Verlangsamung der Weiterentwicklung der Anwendung bis hin zum Stillstand (einzelne Features können aufgrund des technischen Aufbaus nicht mehr umgesetzt werden) führen. Hier gilt es frühzeitig die IT-Architektur zu justieren.