Arbeitsergebnis: Entwicklungsprozess
Dieses Arbeitsergebnis beschreibt den Prozess, dem ein Projekt folgen muss, um die gewünschten Ergebnisse zu produzieren. Dieses Arbeitsergebnis wird auch als Softwareentwicklungsprozess bezeichnet.
Zweck
Der Entwicklungsprozess dient als Anleitung und Unterstützung für die Mitarbeiter des Projekts.
Beziehungen
Eingabe fürVerbindlich: Optional: Extern:
  • Ohne
Hauptbeschreibung

Jeder Prozess setzt sich aus einer n-gliedrigen Struktur zusammen. Der Methodeninhalt enthält schrittweise Erläuterungen dazu, wie bestimmte Entwicklungsziele unabhängig von der Positionierung dieser Schritte innerhalb des Entwicklungszyklus erreicht werden. Prozesse ordnen diese Methodenelemente in teilweise geordneten Abfolgen an, die an die spezifischen Typen von Projekten angepasst werden. Ein Prozess ist also eine Gruppe teilweise geordneter Arbeitsbeschreibungen mit der Zielsetzung, ein höheres Entwicklungsziel zu erreichen, z. B. das Release einer bestimmten Software. Ein Prozess konzentriert sich auf den Lebenszyklus und die Planung der Arbeitsreihenfolge in Strukturen.

Es gibt verschiedene Typen von Prozessen: Bereitstellungsprozess und Prozessmuster.

Bereitstellungsprozess

Ein Bereitstellungsprozess beschreibt eine vollständige und integrierte Lösung für die Durchführung eines bestimmten Typs von Entwicklungsprojekt. Ein Bereitstellungsprozess ist ein Prozess, der einen vollständigen Entwicklungszyklus von Anfang bis Ende abdeckt. Ein Bereitstellungsprozess wird als Vorlage für die Planung und Ausführung eines Projekts verwendet. Er ist ein vollständiges Lebenszyklusmodell mit vordefinierten Phasen, Iterationen und Aktivitäten, die durch sequenzielle Anordnung des Methodeninhalts in so genannte Strukturen detailliert beschrieben werden. Er wird auf der Basis von Erfahrungen in früheren Projekten oder Engagements und/oder des bewährten Einsatzes eines Entwicklungs- oder Lieferansatz definiert. Er definiert, was produziert wird und wie und die erforderliche Ausstattung mit integrierten Arbeiten, Arbeitsergebnissen und Teamstrukturen. Ein Prozessentwickler kann alternative Bereitstellungsprozesse für Softwareentwicklungsprojekte definieren, die bezüglich der Auslastung und in der erforderlichen Mitarbeiteranzahl, im Ausmaß deren Engagements, dem Typ der zu entwickelnden Softwareanwendung, den zu verwendenden Entwicklungsmethoden und -technologien usw. variieren. Obwohl der Bereitstellungsprozess die Abdeckung eines gesamten Projekts anvisiert, lässt er bestimmte Entscheidungen, die zu projektspezifisch sind, offen. Der Projektstrukturplan definiert beispielsweise, welche Strukturelemente mehrfach vorkommen oder aufgrund ihrer spezifischen Attribute wiederholt einsetzbar sind, macht aber keine Aussage darüber, wie viele Vorkommen und Wiederholungen/Iterationen diese Elemente tatsächlich haben. Diese Entscheidungen müssen von einem Projektleiter bei der Planung eines konkreten Projekts, einer Projektphase oder Projektiterationen getroffen werden.

Prozessmuster

Ein Prozessmuster beschreibt eine wiederverwendbare Gruppe von Aktivitäten in üblichen Prozessbereichen. Prozessmuster beschreiben und vermitteln Prozesskenntnisse für einen wichtigen Bereich von Interesse wie eine Disziplin und können direkt vom Prozessanwender als Anleitung für seine Arbeit verwendet werden. Sie werden auch als Bausteine für die Assemblierung von Bereitstellungsprozessen oder größeren Prozessmustern verwendet und gewährleisten eine optimale Wiederverwendung und Anwendung der wichtigen Verfahren, die sie beschreiben. Beispiele für Prozessmuster sind 'anwendungsfallbasierte Anforderungsverwaltung', 'Anwendungsfallanalyse' und 'Einheitentests'. In der Regel, aber nicht zwingenderweise beziehen sich Prozessmuster auf eine Disziplin und liefern eine Struktur wiederverwendbarer komplexer Aktivitäten, Beziehungen zu den Rollen, die Aufgaben innerhalb dieser Aktivitäten ausführen, und zu den Arbeitsergebnissen, die verwendet und erzeugt werden. Ein Prozessmuster hat keinen Bezug zu einer bestimmten Phase oder Iteration in einem Entwicklungszyklus und sollte sich auch nicht implizit auf eine solche beziehen. Anders ausgedrückt, ein Muster sollte so entworfen werden, dass es an beliebiger Stelle in einem Bereitstellungsprozess anwendbar ist. Auf diese Weise können die zugehörigen Aktivitäten den jeweiligen Phasen eines beliebigen Bereitstellungsprozesses flexibel zugeordnet werden.

Es empfiehlt sich, ein Prozessmuster zu entwerfen, mit dem ein oder mehrere generische Produkte erzeugt werden können. In der typischen Konfiguration erzeugt jede Aktivität im Prozessmuster ein Produkt, und der letzte Aufgabendeskriptor in der Aktivität gibt ausschließlich dieses Produkt aus. Auf diese Weise kann der Prozessentwickler Muster oder auch nur Aktivitäten auswählen, indem er entscheidet, welche Produkte erforderlich sind. Es ist außerdem ein einfacher Integrationsansatz: Eine Aktivität aus einem Prozessmuster wird mit der Phase oder Iteration verknüpft, die erforderlich ist, um das Produkt der Aktivität zu erzeugen.

Eigenschaften
Optional
GeplantYes
Wichtige Hinweise
Sie müssen nicht den gesamten Prozess im Entwicklungsprozess erfassen. In einigen Fällen werden Zuständigkeiten und Entscheidungen bezüglich des Prozesses sowie die Arbeitsergebnisse im Besonderen an Mitglieder des Softwareentwicklungsprojekts delegiert. Wenn beispielsweise ein erfahrener Projektleiter verfügbar ist, können Sie ihm die Entscheidung überlassen, welche Pläne erzeugt werden und wie. Viele Projektleiter beschäftigen sich nicht damit, wie die einzelnen Teammitglieder ihren Teil des Systems entwerfen, solange sie die erwartete Funktionalität rechtzeitig und in einer angemessenen Qualität liefern.

Einer der Gründe, überhaupt eine Prozessbeschreibung zu verwenden, ist der, dass mehrere Personen auf dieselben Informationen zugreifen können. Wenn dies nicht der Fall ist, können die Kosten für die Verwaltung der Prozessbeschreibung zu hoch werden. Deshalb beschließen Sie möglicherweise, dass für einen oder mehrere Disziplinen keine Prozessbeschreibung erstellt oder verwaltet wird. Das bedeutet weder, dass Sie keinen Aufwand in diese Disziplinen investieren, noch dass Sie sie für nicht wichtig erachten. Sie können beispielsweise einen hervorragenden Testleiter einsetzen, ihm jegliche Unterstützung bieten, aber dem Testleiter die Entscheidung darüber überlassen, wie er Arbeit seine macht und welche Arbeitsergebnisse er erzeugt.

Weitere Informationen
Konzepte