Agile vs. V Methodologien (Modell)
Es gibt eine Reihe verschiedener Softwareentwicklungsmethoden, die heute in der Softwareindustrie verwendet werden. V Methodologies (V-Model) ist eine Erweiterung der Waterfall-Entwicklungsmethode (eine der frühesten Methoden). Das Hauptaugenmerk von V-Model ist es, Codierung und Test gleichermaßen zu berücksichtigen. Das agile Modell ist ein neueres Softwareentwicklungsmodell, das eingeführt wurde, um die bei bestehenden Modellen festgestellten Mängel zu beheben. Das Hauptaugenmerk von Agile ist die möglichst frühzeitige Erprobung und die Veröffentlichung einer funktionsfähigen Version des Produkts, indem das System in sehr kleine und handhabbare Teile zerlegt wird.
Was ist V-Methodik (Modell)?
V Methodologies (V-Model) ist ein Softwareentwicklungsmodell. Es wird als Erweiterung des typischen Waterfall-Softwareentwicklungsmodells betrachtet. Das V-Modell verwendet die gleichen Beziehungen zwischen den im Wasserfallmodell definierten Phasen. Statt jedoch linear abzusteigen (wie beim Wasserfallmodell), tritt das V-Modell schräg nach unten und bewegt sich dann (nach der Kodierungsphase) nach oben, wobei es die Form des Buchstabens V bildet. Diese V-Form wird gebildet, um die Beziehung zwischen den einzelnen Phasen zu zeigen die Entwicklung / Design und die entsprechende Testphase. Zeit und Abstraktionsgrad werden durch die horizontale bzw. vertikale Achse dargestellt.
Die Prüfung (der aufsteigende Pfad, rechte Seite des V) wird zur Verifizierung durchgeführt, während die entsprechenden Entwurfsphasen (der absteigende Pfad, linke Seite des V) zur Validierung verwendet werden. Im V-Modell wird Codierung und Testung gleiches Gewicht beigemessen. V-Model empfiehlt, neben den Designdokumenten / -codes ein Testdokument zu erstellen. Beispielsweise sollten Integrationsprüfungsdokumente geschrieben werden, wenn das Design auf hoher Ebene dokumentiert wird, und Unit-Tests sollten dokumentiert werden, während der detaillierte Entwurfsplan erstellt wird. Das bedeutet, dass für jeden Test ein Implementierungsplan erstellt werden muss, der nicht bis zum Abschluss der Entwicklung wartet, sodass er an das Testteam weitergegeben werden kann.
Was ist agil??
Agile ist eine sehr neue Softwareentwicklungsmethodik, die auf dem agilen Manifest basiert. Dies wurde entwickelt, um einige Mängel in den traditionellen Entwicklungsmethoden für V-Modelle und Wasserfälle zu beheben. Agile Methoden basieren darauf, der Kundenbeteiligung früh im Entwicklungszyklus hohe Priorität einzuräumen. Es wird empfohlen, den Kunden frühzeitig und möglichst oft zu testen. Der Test wird an jedem Punkt durchgeführt, an dem eine stabile Version verfügbar ist. Die Gründung von Agile basiert darauf, dass die Tests vom Beginn des Projekts an beginnen und bis zum Ende des Projekts andauern. Die wichtigsten Werte von Agile sind "Qualität ist die Verantwortung des Teams", die betont, dass die Qualität der Software in der Verantwortung des gesamten Teams liegt (nicht nur des Testteams). Ein weiterer wichtiger Aspekt von Agile ist die Aufgliederung der Software in kleinere, handhabbare Teile und die schnelle Lieferung an den Kunden. Die Lieferung eines funktionierenden Produkts ist von größter Bedeutung. Dann verbessert das Team die Software kontinuierlich und liefert kontinuierlich bei jedem wichtigen Schritt. Dies wird durch sehr kurze Release-Zyklen (Sprints) und Feedback am Ende jedes Zyklus erreicht. Mitwirkende ohne große Interaktionen des Teams, wie z. B. Entwickler und Tester in den früheren Methoden, arbeiten jetzt innerhalb des Agile-Modells zusammen.
Was ist der Unterschied zwischen Agile- und V-Methodologien (Modell)?
Das Agile-Modell liefert im Vergleich zu V-Model eine sehr frühe Version des Produkts. Da mehr Funktionen inkrementell bereitgestellt werden, kann der Kunde einige Vorteile frühzeitig erkennen. Die Testzykluszeit von Agile ist im Vergleich zum V-Model relativ kurz, da die Tests parallel zur Entwicklung durchgeführt werden. Agile ist ein proaktives Modell (aufgrund seiner sehr kurzen Zyklen) im Vergleich zum viel reaktiveren V-Modell. Das V-Modell ist sehr steif und relativ weniger flexibel als das Agile-Modell. Aufgrund all dieser Vorteile wird Agile derzeit dem V-Modell vorgezogen.