Agile Software-Entwicklung

Iterativ zum Go-Live ...

... und darüber hinaus.

Wir entwickeln die Software in regelmäßigen Feedback-Schleifen gemeinsam mit dem Kunden. Denn es ist eher die Regel als die Ausnahme, dass sich, sobald ein Prototyp vorliegt, Anforderungen verändern und entwickeln. Wir sehen den ursprünglichen Plan als gute Basis, ein Projekt zu starten, zeigen aber so früh wie möglich Zwischenstände und stimmen in Sprint-Meetings die weitere Entwicklung mit Ihnen ab. Durch automatisierte Software-Tests sichern wir zudem die Funktionalität ab, sodass bei kontinuierlicher Weiterentwicklung nach dem Release bestehende Funktionalitäten erhalten bleiben und weiterhin ein schnelles & agiles Vorankommen möglich ist.

Agile Prinzipien

Agile Prinzipien haben zum Ziel, eine möglichst Kunden- und User-zentrierte Softwareentwicklung zu kultivieren. Kerngedanke ist, dass der Entwickler nicht unabhängig vom Kunden "im stillen Kämmerlein" arbeitet und erst am Ende den Kunden zum Testen des Resultats einbezieht, sondern möglichst früh funktionsfähige Software-Versionen mit dem Kunden austauscht und aus den Feedback-Schleifen sowohl Kunde als auch Entwickler profitieren.

User zentriert

Iterativ zum Go-Live

Enge Abstimmung

Kontinuierliche Sprints

Reproduzierbar & skalierbar

Docker & Containerization

Unsere komplette Entwicklung läuft auf Docker. Dabei werden komplette Software-Komponenten als virtuelles Image mit allen Abhängigkeiten verwendet, die ohne eine Konfiguration des Hostsystems auskommen.

Jedes Projekt wird als Komposition verschiedener Images wie z.B. Datenbanken, Message-Brokern und Applikationslogik gestartet - immer in der richtigen Version. Somit können ähnliche Setups wie in der Entwicklung später auf dem Produktiv-Server realisiert werden, was die Reproduzierbarkeit, Zuverlässigkeit und Skalierbarkeit erhöht und gleichzeitig den Wartungs- und Konfigurationsaufwand für Systemadministratoren reduziert.

Qualitätssicherung

Automatisiertes Testing

Wir sehen Software nicht als temporäres Projekt, sondern als Produkt, das gepflegt und erweitert wird. Um die zahlreichen und komplexer werdenden Funktionen auch noch bei einem Update einige Jahre nach dem Go-Live sicherzustellen, setzen wir automatisierte Softwaretests ein, die Features vor Release prüfen. Dies kann in Form von API-Tests, Komponenten- und Unit-Tests oder End-to-End-Tests, bei denen mit einem Browser oder Smartphone-Emulator Nutzerverhalten simuliert wird, realisiert werden.

Automatisiertes Testing der REST-Endpunkte eines Shopsystems für unseren Kunden Omniflora.

Go-Live

Nach dem Go-Live ist vor dem Go-Live. Wir warten die eingesetzten Software-Komponenten regelmäßig und installieren Sicherheitsupdates. Häufig entstehen nach Go-Live weitere Wünsche und Anforderungen, die wir in einer separaten Dev-Version für Sie umsetzen. Durch die automatisierten Tests bleiben bereits implementierte Features erhalten und der Release-Zyklus wird verkürzt.

Aereco GmbH Burster Präzisionsmesstechnik GmbH daslagerhaus GmbH ETH Messtechnik GmbH Evangelische Diakonieschwesternschaft Herrenberg-Korntal IMS Verbindungstechnik GmbH Paul Jaeger GmbH & Co.KG Karlshoehe Ludwigsburg Omniflora Blumencenter GmbH Pfister Waagen GmbH Prym Consumer GmbH Schnorr GmbH Sedus Stoll AG Würth Group