WikiDer > Großes Design im Vordergrund
Großes Design im Vordergrund (BDUF) ist eine Softwareentwicklungsmethode, bei der der Entwurf des Programms abgeschlossen sein muss, bevor die Implementierungsphase beginnt.Die Methodik von Big Design Up Front betont, dass das „große“ Design vor der Realisierungsphase (dh vor dem Programmieren und Testen) stattfindet. Es ist daher nicht verwunderlich, dass es mit dem bekannten Wasserfallmethode bei der Softwareentwicklung.
Die Diskussion zwischen den Vor- und Nachteilen von BDUF ist heftig, aber die meisten Leute glauben, dass ein Kompromiss zwischen BDUF und den extremeren Varianten innerhalb der flexiblen Softwareentwicklung (Schnelle Anwendungsentwicklung, die agile Bewegung) bietet die beste Lösung für die meisten Softwareentwicklungsprobleme Extremes Programmieren Unter der Annahme, dass der Großteil der Gestaltung während der Programmierung erfolgt, geht der BDUF daher davon aus, dass die Entwurfsphase bereits abgeschlossen ist, bevor die Realisierungsphase beginnt.
Argumente für Big Design im Vorfeld
Die Befürworter des BDUF glauben, dass es sich lohnt, Zeit für die Planung zu verwenden. Sie können mehrere Studien zitieren, die zu dem Schluss kommen, dass in den frühen Phasen eines Software-Lebenszyklusprodukts weniger Zeit und Energie aufgewendet wurde, um einen Fehler zu beheben, als wenn derselbe Fehler später gefunden wird und benötigt behoben werden. (Es ist einfacher ein Fehler im Projekt Anforderungen (Projektanforderungen) in der Anforderungsphase, da die Behebung dieses Fehlers während der Implementierungsphase bedeutet, dass zumindest etwas aus der bereits fertiggestellten Implementierung und dem Design entfernt werden muss).
Joel Spolsky, ein beliebter Online-Kommentator für Softwareentwicklung, hat starke Argumente für Big Design Up Front.
Übersetzt: "Normalerweise hat uns das Durchdenken im Voraus viel Ärger erspart. … [über eine bestimmte Spezifikationsänderung] … Diese Spezifikationsänderung dauerte nur ein oder zwei Stunden. Wir mussten den Code erstellen, es würde Wir haben Wochen länger gebraucht. Ich kann nicht beschreiben, wie sehr ich an Big Design Up Front glaube, was Befürworter von Extreme Programming (XP) als minderwertig ansehen (Anathema) Ich habe durchweg Zeit gespart und bessere Produkte mit BDUF hergestellt und ich' Ich bin stolz, es zu benutzen, egal was die XP-Fanatiker behaupten, sie liegen in diesem Punkt einfach falsch, ich kann es nicht klar genug sagen.“
Obwohl einige argumentieren, dass das, was Joel als Big Design Up Front ansieht, nicht dem BDUF ähnelt, der von den Unterstützern von XP und anderen agilen Softwareentwicklungsmethoden kritisiert wird.
Argumente gegen Big Design im Vorfeld
Kritiker (insbesondere solche mit einem agilen Softwareentwicklungshintergrund) argumentieren, dass BDUF unflexibel gegenüber Projektanforderungen ist, dass seine Befürworter „Dinosaurier“ sind, die an einer veralteten und unbewiesenen Methodik festhalten. Sie gehen davon aus, dass BDUF-Softwaredesigner eine „Kristallkugel“ haben und Probleme vorhersehen können, ohne ausgiebig Prototypen zu verwenden und zumindest einige Implementierungsforschung zu betreiben.
Am BDUF werden die Projektanforderungen vorzugsweise in der Anfangsphase eingefroren, damit die Funktionalitäten fixiert sind. Theoretisch können Sie so die verschiedenen Phasen des Wasserfallmodells nacheinander durchgehen, ohne zuvor ausgeführte Schritte wiederholen zu müssen. Diese Theorie unterscheidet sich jedoch von der Praxis, wo sich die Projektanforderungen jederzeit ändern können, neue Erkenntnisse und Anforderungen erst später ans Licht kommen können. Mit einer flexiblen Softwareentwicklungsmethode kann darauf leicht reagiert werden, denn es ist kein Problem, auf frühere Projektphasen zurückzugreifen, so dass die Verbindung dieser Methode mit den Wünschen des/der Auftraggeber(s) viel besser ist.
Darüber hinaus ermöglicht eine flexible Softwareentwicklungsmethode, schneller auf unerwartete Probleme und Änderungen zu reagieren. Das liegt vor allem daran, dass die Kommunikation mit den Endanwendern meist viel enger ist und das Testen keine Phase am Ende des Projekts ist, sondern ständig während des Projekts durchgeführt wird.
Auch auf Dieses hierBlog machte einen interessanten Vergleich mit dem Zauberwürfel und BDUF.
Warum Design Up Front verwenden?
Es ist immer so, dass vorher ein Design festgelegt werden muss. Vor allem, wenn es um große Projekte rund um Enterprise-Systeme geht. Es muss im Vorfeld klar sein, was die funktionalen Anforderungen sind. Überlegen Sie, welche Dienstleistungen das Projekt erbringen muss oder wie viele Maschinen zur Unterstützung benötigt werden Es ist unmöglich, beispielsweise einem Verwaltungsrat mit einem hohen Preisschild ein neues Projekt vorzuschlagen und dann zu sagen, dass er kodiert, um zu verstehen, ob die Anforderungen werden tatsächlich erfüllt.
Gerade bei großen Projekten gilt die „große“ Gestaltung im Vorfeld als eine der wichtigsten Anforderungen.
Siehe auch
Quellen
- Dieser Artikel oder eine frühere Version ist eine (Teil-)Übersetzung des Artikels Großes Design im Vordergrund auf der englischsprachigen Wikipedia, die unter der Creative Commons Namensnennung/Weitergabe unter gleichen Bedingungen Stürze. Siehe die Verlauf bearbeiten Dort. Die Quellen dieses Artikels wurden daher auch automatisch verwendet.