Agiles Webdevelopment - die philosophy moderner Softwareentwicklung

Die moderne Softwareentwicklung mit Microservice Architecture

Damit Webapplikationen (und selbstverständlich auch herkömmliche) eine gute Performance haben
hat man früher immer den 3-tier-architecture als Basis für jede große Webapplikation implementiert.

Die 3-tier-architecture besteht im Groben aus 3 verschiedenen Layer:

  • WEB = User Frontend (UI)
  • BIZ = Business Layer
  • DAC = Data Access
Die Resourcen Verteilung von Prozessen in unterschiedlichen Layer macht Sinn,
da man so die Performance Auslastung der Hardware besser verteilen kann.
Eher nachteilig wirkt sich das auf die Skalierbarkeit der Software aus,
da jeder Layer angepasst werden muss, wenn man neue Prozesse implementiert.

Daher geht der Trend in der Softwarentwicklung:

Agiles Web-Application-Development im Projektmanagement

sinnvollerweise kombiniert man agile Softwareentwicklung auch mit der SCRUM Projektmanagement Methode

Es geht ja in erster Line darum, agil zu sein
und da kommt man als IT-Projektleiter mit der klassischen Projektmanagement Methode einfach nicht weiter.

Die Entwicklung neuer Software Module ist heutzutage so komplex geworden,
dass Sie sich einfach nicht in der IT-Spezifikation
und Lasten- und Pflichtenheft eindeutig deffinieren oder spezifizieren lassen.
oder während der Entwicklung sich Techniken und Anforderungen ändern.

Das liegt auch daran, dass dem Kunden meist das technische "know-how" fehlt
und der Programmierer keine Ahnung vom Geschäftsprozess hat...
Zusammenarbeit (Collaboration)
ist ein Grunprizip der agilen-Softwareentwicklung und der SCRUM-Projektmanagement Methode!

Um die komplexen Anforderungen und Business Prozesse mit der Software abzubilden
würde man mehr Zeit an der Spezifikation und der Software Prozessmodellierung verbringen
als mit der Entwicklung der Applikation selbst.

Sicherlich muss bei jedem IT-Projekt zu Beginn ein umfangreiches Konzept und eine Spezifikation ausgearbeitet werden.
Auch um eine grobe Kosten- und Zeitschätzung zu ermöglichen und ein Projektziel fest zu legen.

Aber in der agile Sofwareentwicklung und der SCRUM Projektmanagement Methode
ist man bereit die einzelnen Entwicklungsphasen den Kundenwünschen anzupassen (flexibel sein!)
und vermeidet so auch unnötige Programmierarbeiten,
wo man am Ende, beim User-Acceptance-Test vom Kunden gesagt bekommt:
"...nein,...das habe ich mir aber ganz anders vorgestellt..."


Commentics

Sorry, there is a database problem.

Please check back shortly. Thanks.