Dynamik und Agilität in der Softwareentwicklung

Eine der häufigeren Anfragen, welche mein Blog erhält und die in Zusammenhang mit dem Thema Softwareentwicklung steht, dem ich neben aller Begeisterung für Tablets und Technik allgemein, noch immer einen großen Teil meiner Zeit widme, dreht sich um die Frage, ob man mit Software überhaupt noch Geld verdienen kann. Eine Frage, die man sicherlich mit Ja beantworten kann, aber nicht muss. Denn unzweifelhaft haben sich die Bedingungen und der Markt, insbesondere in den letzten 5 Jahren, stark verändert. Nur wer sich dessen bewusst ist, und auch die Denkprozesse und Vorgehensweisen anpasst, wird in der Regel letztlich die eingangs gestellte Frage mit Ja beantworten können.

Diese Veränderungen sind zum einen einfach eine Folge der modernen Zeit, in der es immer wichtiger ist sehr zügig auf schnell sich ändernde oder sich ergebende Marktchancen oder auch Marktverschiebungen einzugehen, als auch durch die veränderte technische Landschaft. Beide Veränderungen stehen dabei selbstverständlich in einem engen Zusammenhang.

Mobile Geräte, neue Betriebssysteme wirbeln die Entwicklerlandschaft durcheinander

Smartphone und TabletLange Zeit gab es ein hohes Maß an Stabilität: ein vorherrschendes Betriebssystem und eine relativ klar strukturierte Hardware-Landschaft. Zunächst das Internet (Online Software, Cloud…), vor allem aber auch mobile Endgeräte wie Tablet PC und Smartphone und neue darauf eingesetzte Betriebssysteme (iOS, Android und auch Windows Phone oder RT) haben allerdings dieses ruhige Schiff in stürmisches Fahrwasser gebracht und erfordern oftmals ein neues Denken, wie all diese Möglichkeiten in einen sinnvollen Zusammenhang gebracht werden können, sodass Software auch sinnvoll Geschäftsprozesse unterstützen kann. Gerade mobile Endgeräte bieten oftmals neue Möglichkeiten, erfordern aber sowohl technisch als auch funktional neue Denkweisen. Die 1:1 Umsetzung bekannter Konzepte genügt hier meist nicht.

Der traditionelle Ansatz, unter anderem basierend auf der Erstellung komplexer Lastenhefte oder dem Erstellen umfangreicher UML-Modelle, in der möglichst in fast jedem Detail die Anforderungen bei der Entwicklung von Software vorab festgelegt wurden, um anschließend dann möglichst die Software erst Mal im Ganzen fertigzustellen, kann oftmals mit den heutigen Umweltbedingungen nicht mithalten. Zu zügig verändern sich Anforderungen und Notwendigkeiten, nicht nur durch veränderte Technologien und Möglichkeiten, sondern oft auch durch unternehmensinternen Geschäftsprozesse, die sich ja selber den immer dynamischeren Märkten stellen müssen. Mitunter sind viele Komponenten auch zu Beginn eines Projektes auch einfach noch gar nicht bekannt.

Agile Softwareentwicklung – Prozesse vereinfachen, Flexibilität steigern

TeamarbeitEine Antwort liefert hier die sogenannte agile Softwareentwicklung, welche zwar schon in Ansätzen in den 90er Jahren entwickelt wurde, aber erst seit der Jahrtausendwende und zunehmend in den letzten Jahren auch tatsächlich an Bedeutung gewonnen hat.

Agile Softwareentwicklung zielt darauf ab, Prozesse zu vereinfachen, zudem wird die Zusammenarbeit mit dem Kunden / Auftraggeber, die Flexibilität und Reaktion sowie die Interaktionen und die Zusammenarbeit der Beteiligten höher eingestuft als starr festgelegte Pläne, Dokumentation oder auch Werkzeuge. Anders ausgedrückt: weniger Regeln und mehr Flexibilität und sowie Einbindung aller Beteiligten. Das Individuum ist wichtiger als das Werkzeug.

Schnellere Rückkopplung

Vorteil der agilen Softwareentwicklung ist der schnellere Wechsel zwischen Planung und Umsetzung, immer unter Einbindung der Beteiligten. Die erste Vision, die zügige Umsetzung und der Test in der Praxis mit Rückkopplungseffekten und folgenden Anpassungen und Verfeinerungen berücksichtigen die hohe Dynamik der heutigen Geschäfts- aber auch Hard- und Softwarelandschaft, erfordern aber auch gleichzeitig ein hohes Maß an Miteinander und Teamfähigkeit. Agile Softwareentwicklungsmethoden erhöhen die Chancen der zu Beginn erwähnten Frage nach den Erfolgschancen heutiger Softwareentwicklung und berücksichtigen die genannten Veränderungen, die Softwareentwickler und Softwarehäuser ein neues Denken abverlangen.

Und der Einzel – Softwareentwickler?

Agile Softwareentwicklung sollte aber auch im Denkprozess von Einzelentwicklern eine Rolle spielen, selbst dann, wenn es sich um Eigenentwicklungen handelt und keine direkte Zusammenarbeit mit einem Auftraggeber gegeben ist. Es ist heute weitaus schwerer zunächst 2 Jahre Entwicklungszeit in ein Produkt zu investieren, welches nach Marktreife aufgrund von Marktveränderungen vielleicht bereits an den Marktwünschen vorbei programmiert wurde. Viel sinnvoller ist es, gegebenenfalls auch als Beta bezeichnete Software, möglichst frühzeitig gegen den Markt zu testen, diese bei Bedarf anzupassen oder unter Umständen auch ein Projekt abzubrechen. Auch die Einbindung der Nutzer sollte berücksichtigt werden.

Fazit: Nach wie vor kann man mit Softwareentwicklung sicher Geld verdienen, aber die Anforderungen sind heute viel größer und vielschichtiger als vielleicht noch vor 10 Jahren. Neue Denkansätze oder aber auch die Konzentration auf Nischen können hier aber erfolgsversprechende Antworten geben.

Werbung & Infos:

Aktuelles Bitdefender Angebot

HP Deal Days Angebote im HP Store (Juli 2024)


Verwandte Themen: