Hallo liebe Leser und willkommen auf meinem Blog bei Google.
Seit einigen Monaten beschäftige ich mich im Selbststudium rund um die Themen der
Softwareentwicklung.
Nichts ist so stetig wie die Veränderung!
Wenn bis heute etwas Bestand hat, gehört diese Aussage dazu.
Dieser Blickwinkel lässt agile Softwareentwicklung erahnen oder als logisch
betrachten. Ist das so? Die Anfänge können zurückverfolgt werden bis in die
90er Jahre. In dieser Zeit entwickelte man das ‚Extreme Programming’ mit dem
Ziel schneller und flexibler Programmcode zu schreiben als im klassischen Stil.
Welche Argumente und Resultate stehen im Raum um die eigenen
Entwicklungsprozesse zu ersetzten
oder zu optimieren? Mit jenen der agilen Prozesse? Kennt man doch genügend
Praxisbeispiele, die belegen, wie schwierig das Aufbrechen oder verschieben von
bestehenden Softwareentwicklungsstrukturen ist (umdenken der Mitarbeiter,
Know-How-Transfer wie auch die Gefahr n= n + 1 Methoden zu erhalten).
In meinem Blog mit dem Thema ‚Agile Softwareentwicklung’
wähle ich einen Ansatz, der welcher auf viele Organisationsstrukturen passt.
Dabei setzte ich Scrum als Organisations-Framework und ‚Extreme Programming’ ein.
Die Kombination von beiden passt nach meinen Erfahrungen auf viele
Organisationsstrukturen.
Die Alternativen, die sich aus den Kombinationen ableiten
lassen, sind zahlreich und sollten vor einem definitiven Entscheid gut überlegt
sein – inklusive Nebenwirkungen.
Welches sind denn nun die Erfolgsfaktoren bei agiler Softwareentwicklung ?
Bevor ich auf die Frage eingehe, setzen wir den Fokus auf
die Frage: Warum eigentlich ‚agile Softwareentwicklung’? Es gibt genügend
Literatur, die dieses Thema behandelt und somit diese Frage im Detail
erläutert. Deshalb kurz ein paar
Erfahrungspunkte aus meiner Sicht. Das Planen und die Administration werden auf
die Zyklen des Programmings angepasst (agiles Management). Womit ich meine: Der
Code zum Produkt wird in kleinen Stücken an das ‚Produkt’ angefügt – somit auch
das Planen. Das birgt einige interessante Vorteile: Schnelles, stabiles
Requirement, überschaubare Software Units (geringe Komplexität). Daraus
entsteht ein stabiles System und optimale
Reaktionszeit. Dann lässt sich weiter ableiten, dass die Software eine Skalierbarkeit
erreicht, womit die Betriebskosten tief gehalten werden können (Bugfixing,
Systemerweiterungen).
Das Resultat – was kaum zu 100% erreichbar ist –
regelmässige Auslieferung von Softwarepaketen, hohe Qualität, innovative und
flexible Mitarbeiter und zuletzt das Wichtigste: Zufriedene Kunden! Dieses
Resultat wird gesteuert durch die damit verbundenen Prozesse. Welche natürlich auf
die agilen Methoden Einfluss nehmen.
Liebe Leser, die Frage nach den Erfolgsfaktoren in der
agilen Softwareentwicklung habe ich in diesem Abschnitt nicht beantwortet. Er
folgt im nächsten Eintrag, bestimmt!
Bis dann, gute Zeit und Grüsse,
Marcello
Keine Kommentare:
Kommentar veröffentlichen