Agile Softwareentwicklung
Effizient zu individueller Software durch agile Arbeitsweise
Das iterative Vorgehen bei der Umsetzung von Projekten wird agile genannt. Dabei ist es nicht das Ziel ein Pflichtenheft in einem Anlauf abzuarbeiten, sondern kleine Entwicklungsschritte in kurzen Zeitabständen mit dem Kunden abzustimmen und stetig neue Ziele zu definieren.
Die agile Arbeitsweise ist zu sowas wie einem Modewort geworden. Manche scheuen sich sogar davor, weil sie schlechte Erfahrungen mit einem Team gemacht haben, welches agil arbeitete oder Scrum nutzte.
Der Schlüssel zum Erfolg eines jeden Projekts ist Kommunikation - nicht Agile oder Scrum. Wichtig ist, miteinander zu reden und sich zu verstehen.
Wie sieht also unser real gelebter Entwicklungsprozess aus?
Zum Projektstart stellen wir eine mittelfristige Roadmap auf.
In wöchentlichen Jour Fixes stimmen wir kurz die entwickelten Features und die nächsten Schritte ab.
Zwischen den Jour Fixes bleiben wir beispielsweise via slack oder Email in Kontakt um akute Fragen schnell zu klären.
Das wichtigste ist, in ständiger Abstimmung bei Unklarheiten zu sein, damit wir nicht in die falsche Richtung entwickeln. So bleibt das Projekt effizient und wartbar.
Planen & priorisieren
Während dieses Prozesses machen wir uns Best Practices des Projektmanagements zu nutze indem wir die Akzeptanzkriterien für jedes Feature präzise im Projektboard dokumentieren und wöchentlich die aktuellen Prioritäten neu abstimmen.
Dadurch erreichen wir tatsächliche Agilität im Entwicklungsprozess weil wir auf neue oder geänderte Anforderungen sofort eingehen.
Wenn es um die Planung von neuen Features oder Änderungen geht, beraten wir pragmatisch, unabhängig und zukunftsorientiert (Vermeidung von technischen Schulden).
Als dein Entwicklungspartner ist es immer unser Ziel für dich den größtmöglichen Wert zu schaffen damit dein Projekt ein Erfolg wird.
Schneller ist besser als perfekt
Die wichtigste Strategie, um effizienter und kostengünstiger zu entwickeln, ist das frühe Testen mittels MVPs (Minimum Viable Products) und echten Kunden.
Durch häufige Iterationen und Anpassungen an das Feedback der Kunden können Probleme oder neue Anforderungen frühzeitig erkannt und adressiert werden.
Die initiale Projektplanung
Verstehen und analysieren
Um zu einer guten Lösung kommen können, ist es wichtig das Problem zu verstehen.
Nicht jede Individualsoftware ist direkt eine Verbesserung.
Manchmal bedarf es auch gar keiner Programmierung um ein Problem zu lösen. Wir finden es gemeinsam heraus.
In dieser ersten Phase stellen wir eine Menge Fragen um zu verstehen, was das Problem ist und wie wir es am besten lösen können.
Planen
Durch die Planung der einzelnen Entwicklungsschritte machen wir zum einen für uns selbst aber auch für dich als unseren Kunden die Schritte sichtbar, die gegangen werden müssen um am Ziel anzukommen.
Entwickeln
Diese Phase ist die kontinuierliche Abfolge von Entwicklung und Feedback.
Das schnelle ausliefern von Ergebnissen mit anschließendem Feedback stellt sicher, dass wir uns in die richtige Rickung bewegen.
Dadurch können wir auch verwertbare Ergebnisse erzielen wenn die Anforderungen Mal nicht ganz klar sind.
Review
Den Projektabschluss gilt es von Anfang an im Blick zu halten. Neben den Meilensteinen die es auf dem Weg zu erreichen gibt, ist das Gesamtziel natürlich am bedeutsamsten.
Es muss geprüft werden: Wurde der Zeitrahmen und der Kostenrahmen eingehalten? Haben wir alle Features erfolgreich umgesetzt?
Wartung und Betrieb
Wir stehen auch nach der Übergabe für dich bereit. Denn Software ist nie fertig. Es ist kein Produkt von der Stange und erfordert damit spezielle Aufmerksamkeit.