Software-Projektmanagement
Software-Projektmanagement ist die Anwendung von Planungs-, Organisations-, Schätz- und Kontrolltechniken auf Softwareprojekte, um sicherzustellen, dass diese das richtige Produkt innerhalb akzeptabler Kosten, Zeitpläne und Qualität liefern.
Definition
Software-Projektmanagement ist die Disziplin der Planung, Überwachung und Steuerung der Personen, Prozesse und Ressourcen eines Softwareprojekts, um dessen Ziele hinsichtlich Umfang, Zeitplan, Kosten und Qualität zu erreichen.
Scope
Dieser Bereich umfasst Aufwands- und Kostenschätzung; Terminplanung und -planung; Risikomanagement; Teamorganisation und die menschlichen Faktoren der Softwareentwicklung; Konfigurations- und Änderungsmanagement; Software-Qualitätsmanagement; Messung und Metriken zur Fortschrittsverfolgung; sowie die besonderen wirtschaftlichen und koordinativen Herausforderungen, die das Management von Software von anderen Ingenieurprojekten unterscheiden.
Sub-topics
Core questions
- Wie werden Softwareaufwand, -kosten und -zeitplan unter Unsicherheit geschätzt?
- Wie werden Risiken über ein Projekt hinweg identifiziert, priorisiert und gemindert?
- Wie beeinflussen Teamstruktur und Kommunikation die Produktivität?
- Wie werden Änderungen und Qualität während des gesamten Projekts kontrolliert?
Key theories
- Brooks' Gesetz und die Ökonomie von Teams
- Brooks stellte fest, dass das Hinzufügen von Personen zu einem verspäteten Softwareprojekt dieses noch weiter verzögert, da Kommunikations- und Einarbeitungsaufwand schneller wachsen als die zusätzliche Kapazität, was hervorhebt, dass Softwareaufwand nicht einfach teilbar ist.
- Algorithmische Kostenschätzung
- Modelle wie COCOMO schätzen Aufwand und Zeitplan als Funktionen von Größe und Projektfaktoren und liefern wiederholbare, kalibrierbare Schätzungen, die Expertenurteile und analogiebasierte Ansätze ergänzen.
Clinical relevance
Ein solides Projektmanagement entscheidet darüber, ob Software pünktlich und im Rahmen des Budgets mit angemessener Qualität geliefert wird; schlechte Schätzung, unkontrollierte Risiken und die Missachtung der nicht-linearen Ökonomie von Teams sind Hauptursachen für das Scheitern und die Überschreitung von Softwareprojekten.
Evidence & guidelines
Der SWEBOK-Wissensbereich Software Engineering Management und der PMBOK Guide bieten Konsensrahmen, und Standards wie ISO/IEC/IEEE 16326 befassen sich mit der Projektmanagementplanung für Software.
History
Brooks destillierte 1975 harte Lehren aus großen Projekten der 1960er Jahre zu dauerhaften Managementprinzipien; Boehm formalisierte 1981 die Softwareökonomie und Kostenschätzung; das Feld hat seitdem Risikomanagement, Metriken und die schlankere, adaptive Planung agiler Methoden integriert.
Debates
- Prädiktives versus adaptives Projektmanagement
- Es wird diskutiert, ob Softwareprojekte am besten durch detaillierte Vorabpläne oder durch adaptive, iterationsbasierte Kontrolle gemanagt werden; agile Methoden bevorzugen empirische Kontrolle und häufige Neuplanung, während traditionelles Management auf Basispläne setzt, wobei Hybride üblich sind.
Key figures
- Frederick Brooks
- Barry Boehm
- Tom DeMarco
- Watts Humphrey
Related topics
Seminal works
- brooks1995
- boehm1981
- swebok2014
Frequently asked questions
- Warum verzögert das Hinzufügen von Personen zu einem verspäteten Projekt dieses noch weiter?
- Neue Mitarbeiter müssen eingearbeitet werden, und die Anzahl der Kommunikationswege wächst annähernd mit dem Quadrat der Teamgröße; der daraus resultierende Overhead und die Störung reduzieren die Leistung zunächst, anstatt sie zu erhöhen, eine Beobachtung, die als Brooks' Gesetz bekannt ist.
- Warum ist die Schätzung von Software so schwierig?
- Software ist immateriell, oft neuartig und wird durch sich ändernde Anforderungen geprägt, daher sind historische Analogien unvollkommen und die Unsicherheit ist hoch; eine disziplinierte Schätzung kombiniert Modelle, Expertenurteile und Bereiche anstatt einzelner Schätzwerte, um diese Unsicherheit zu managen.