WikiDer > Dynamische Systementwicklungsmethode

Dynamic systems development method
Modell des DSDM-Softwareentwicklungsprozesses.

Dynamische Systementwicklungsmethode, oder kurz DSDM, ist ein (agil) Methode zur Entwicklung Software.

Geschichte

Die Methode entstand um 1994 in dem Vereinigtes Königreich, als herstellerunabhängige Methode, d. h. keine spezifische CASE-Tool oder Beratung. Stattdessen steht ein Konsortium interessierter Unternehmen und Einzelpersonen dahinter.

Die erste Version von DSDM wurde im Februar 1995 veröffentlicht, die zweite im Dezember 1995, die dritte im Oktober 1997 und die aktuelle Version (4.2) stammt aus dem Mai 2003.

DSDM erkennt an, dass Projekte durch Zeit und Ressourcen begrenzt sind und dass Anforderungen kann angepasst werden. Darüber hinaus wird die 80/20-Implementierungsregel verwendet und es wird davon ausgegangen, dass beim ersten Mal nichts perfekt ist. Dies bedeutet nicht, dass ein unvollständiges Produkt geliefert wird, sondern gemäß der Pareto Grundsätzlich können 80 % der Gesamtarbeit in 20 % der Gesamtzeit erledigt werden. In einigen Fällen ist es möglich, Best Practices von anderen zu verwenden Methoden der Softwareentwicklung wie verwenden RUP oder XP. EIN agil Methode, die Ähnlichkeiten mit den Prozessen und dem Konzept von DSDM aufweist, ist Gedränge.

Eigenschaften

Beim traditionellen Ansatz der Systementwicklung sind die Spezifikationen fest und müssen realisiert werden. Zeit und Ressourcen variieren während der Entwicklung. DSDM ist eine Methode, die die Entwicklung von IT-Systemen in einem Zeitplanrahmen (Timeboxes) erfasst. Die Dauer des Projekts und die einzusetzenden Ressourcen werden definiert. Das bedeutet, dass die zu realisierenden Spezifikationen im Projektverlauf variieren können. Zu Beginn des Projekts werden sowohl die funktionalen als auch die nichtfunktionalen Spezifikationen nach Prioritäten auf globaler Ebene klassifiziert (Moskau). Während der Entwicklung tauchen immer detailliertere Spezifikationen auf. Diese Detailspezifikationen werden dann wiederum nach Prioritäten klassifiziert. Innerhalb dieses Zeitplans (Timeboxen) werden in enger Zusammenarbeit mit dem Kunden zunächst die Artikel geliefert, die für den Geschäftsbedarf des Kunden am wichtigsten sind.

DSDM zielt darauf ab, ein IKT-Projekt flexibler zu gestalten als mit den üblichen (traditionellen) Wasserfallmethode wie SDM ist möglich. Die Aufteilung des neuen Systems in eigenständige Einheiten erleichtert dem Entwickler zwischenzeitliche Änderungen.

Ein Merkmal von DSDM ist die völlige Unabhängigkeit von Lieferanten, Designmethoden und Entwicklungsumgebungen. Charakteristisch ist auch, dass es bei dieser Entwicklungsweise sehr wichtig ist, dass der Endanwender sehr aktiv am Entwicklungsprozess teilnimmt. Die Lieferung ist in Unterprodukte unterteilt. Oftmals können wesentliche Teile des neuen Systems sofort fertiggestellt werden.

Benutzen

DSDM wird verwendet:

  • Wenn es sich um ein interaktives System handelt;
  • Wenn eine definierte Benutzergruppe vorhanden ist;
  • Wenn das System rechentechnisch komplex ist, kann dieser Teil zerlegt oder isoliert werden;
  • Ist das System groß, kann es in kleinere Funktionsteile zerlegt werden, die Entwicklung ist stark zeitgebunden;
  • Wenn die Anforderungen an das System priorisiert werden können;
  • Wenn die Systemvoraussetzungen unklar sind oder sich ändern können.

Viele Systementwicklungsprojekte erfüllen die Erwartungen der Endbenutzer nicht. Dies kann verhindert werden, indem besonders auf Folgendes geachtet wird:

  • Das System erfüllt nicht die funktionalen Anforderungen des Unternehmens, für das das System entwickelt wurde.
  • Das System wird nicht verwendet oder es werden teure Anpassungen vorgenommen.
  • Das System erfüllt die Leistungsanforderungen nicht, wodurch es für die Benutzer unbrauchbar wird.
  • Das System enthält Fehler, die zu unerwarteten Problemen führen können.
  • Nutzer lehnen den Systemzugang aus politischen Gründen ab. Dies kann an mangelnder Beteiligung an der Entwicklung oder an fehlender Unterstützung liegen.
  • Systeme werden akzeptiert, aber mit der Zeit nimmt der Wartungsaufwand enorm zu, wodurch das System nicht mehr genutzt wird.

Grundprinzipien

DSDM hat 9 Grundprinzipien. Diese sind:

  • Eine aktive Beteiligung der Benutzer ist unerlässlich;
  • Designgruppen sind befugt, Entscheidungen zur Systementwicklung zu treffen;
  • Die häufige und regelmäßige Lieferung von Komponenten hat Priorität;
  • Das wichtigste Akzeptanzkriterium für ein System oder eine Komponente ist die Eignung für geschäftliche Zwecke;
  • Die Geschäftslösung ist das Ziel, und es ist eine iterative und inkrementelle Entwicklung erforderlich, um zu dieser Lösung zu gelangen.
  • Alle während der Entwicklung vorgenommenen Änderungen können rückgängig gemacht werden;
  • Anfangsanforderungen sind sehr allgemein;
  • Das Testen ist keine separate Phase, sondern findet während des gesamten Prozesses statt;
  • Dabei ist die Zusammenarbeit aller Projektbeteiligten unabdingbar.

Das Prinzip von Zeitboxen legt fest, dass eine bestimmte Zeit festgelegt wird, innerhalb derer die Entwicklung eines (Teils eines) Systems erfolgen muss. Nach Ablauf dieser Zeit darf keine Zeit mehr verbracht werden, unabhängig davon, wie weit das System bereits fortgeschritten ist.

Phasenverschiebung

  • Machbarkeitsstudie, um festzustellen, ob das System mit der gewählten technischen Realisierung, den Kosten und der Dauer für das Unternehmen geeignet ist;
  • Betriebswirtschaftslehre, um die Hauptfunktionen des Systems und die gewünschte Zuverlässigkeit und Leistung zu bestimmen;
  • Funktionsmodelliteration (fmi), mit Prototyp entwickeln um Benutzeranforderungen zu ermitteln, Informationen zu sammeln, Funktionalität anzuzeigen und nicht-funktionale Anforderungen herauszufinden. Diese Phase wird so oft wie nötig wiederholt;
  • Design and Build Iteration (dbi), die vor Ablauf der FMI-Phase beginnen kann, um den Funktionsprototyp weiterzuentwickeln, mit dem Ziel, einen Designprototyp zu liefern, der die funktionalen und nichtfunktionalen Anforderungen erfüllt. Diese Phase wird häufiger durchgeführt;
  • Implementierung (Implementierung), bei der das System den Endnutzern zur Bewertung übergeben und ein Projektaudit durchgeführt wird, wobei das System entweder fertiggestellt oder in eine frühere Phase zurückgeführt wird.

Zeitboxen

Zeitboxen ist die Technik, die die termingerechte Lieferung und Realisierung des Projekts sicherstellt. Innerhalb von DSDM-Projekten ist der Liefertermin fest und die Produktionskapazität kann somit eindeutig identifiziert werden (basierend auf verfügbarer Zeit und Ressourcen).

Timeboxing stellt sicher, dass Zeit und Geld fixiert sind und die Funktionalität variiert wird. Die Funktionalität wird durch Priorisierung verwaltet (Moskau). Es wird eine Liste von Anforderungen erstellt, an die anschließend Prioritäten geknüpft werden. Diese Liste wird verwendet, um ein Budget zu erstellen. Wenn eine Verschiebung auftritt, wird diese Liste verwendet, um zu bestimmen, was innerhalb der Grenzen bleibt.

Moskau

Die Abkürzung Moskau steht für die relative Erwünschtheit der verschiedenen Teile des gewünschten Systems:

  • Muss haben - muss realisiert werden;
  • Hätte - sollte eigentlich realisiert werden;
  • Könnte haben - kann möglicherweise realisiert werden (z. B. wenn Teile früher als erwartet realisiert werden mussten und sollten);
  • Habe diese Zeit nicht, möchte aber in Zukunft - wird im Rahmen des Projekts wahrscheinlich nicht realisiert.
(auch bekannt als "Möchte haben")

Die obigen Abstufungen können während des Prozesses aufgrund fortschreitender Erkenntnisse beispielsweise von Benutzern oder Entwicklern geändert werden. Musts (und in geringerem Maße auch Shoulds) sind jedoch grundsätzlich fest vorgegeben und dürfen daher nicht nur von den Entwicklern selbst ohne Rücksprache mit Endanwendern und Kunden geändert werden.

Externer Link

Siehe die Kategorie Dynamische Systementwicklungsmethode von Wikimedia Commons für Mediendateien zu diesem Thema.