Softwareentwicklung und Projektmanagement gehören zusammen wie das Klein-als-Zeichen und das Mehr-als-Zeichen auf einer HTML-Seite. Im Allgemeinen möchten Sie das eine nicht ohne das andere sehen.

In diesem Handbuch werden wir Sie durch alles führen, was das Software-Projektmanagement so besonders macht, einschließlich dessen Funktionsweise, Verwendung und Verwendung projektmanagement für Softwareentwicklung unterscheidet sich von anderen Implementierungen von Projektmanagementprozessen.

Was ist Softwareentwicklungsprojektmanagement?

Softwareprojektmanagement ist die Verwendung von Projektmanagementpraktiken und -systemen zur Erreichung softwarebezogener Ziele.

Es wird von Softwareentwicklungsteams verwendet, um Projekte in allen Formen und Größen zu liefern, einschließlich:

  • Neue Produktentwicklung

  • Patches und Updates

  • Konfigurationsmanagement

  • Entwicklung von Informationssystemen

  • Testgetriebene Entwicklung (TDD)

Kurz gesagt, so ziemlich jedes Softwareentwicklungsprojekt ist wahrscheinlich kompliziert genug, um den Einsatz von Projektmanagement zu rechtfertigen.

Fast das gesamte Projektmanagement für die Softwareentwicklung wird mithilfe von a erleichtert projektmanagement-Plattform. Dies ist ein gemeinsam genutzter digitaler Arbeitsbereich, in dem das Projekt verwaltet wird.

Der Projektmanagementprozess für die Softwareentwicklung

Die meisten Softwareentwicklungsprojekte durchlaufen die folgenden Phasen:

  • Einleitung

  • Planung

  • Ausführung

  • Abschluss / Bewertung

Phase 1: Initiierung

Während der Initiierung definieren wir die grundlegendsten Projektanforderungen. Dies kann alles sein, von der Erstellung einer neuen Software bis zur Behebung einer vorhandenen Software mit fehlerhafter UX. Die beauftragenden Stakeholder und Leiter des Projektteams sollten die Anforderungen dokumentieren, auf die sie sich als projektcharta. Sobald die Charta von allen Schlüsseln genehmigt und unterzeichnet wurde projekt Stakeholder, das Projekt beginnt.

Phase 2: Planung

Als nächstes folgt die Planungsphase, in der das Team zusammenarbeitet, um das zu formulieren projektplan. Eine der wichtigsten Ergebnisse der Projektplanung sind die Projektergebnisse. Dies sind die Elemente, die das Projekt liefern wird und die von neuen Softwareprodukten bis zu Patches reichen können. Es ist üblich, dass Softwareprojekte mehrere Ergebnisse haben.

Ein weiteres wichtiges Planungselement ist die Definition der Kriterien, anhand derer der Projekterfolg gemessen wird. Zu den weit verbreiteten Erfolgskriterien für Softwareprojekte gehören Qualitätsziele und die Frage, ob das Projekt pünktlich und im Rahmen des Budgets geliefert wurde. Was genau macht das Projekt zum Erfolg?

Sobald Ihre Ergebnisse und Erfolgskriterien festgelegt sind, können Sie mit der Planung der Aktivitäten fortfahren, aus denen sich das Projekt zusammensetzt. Zu den Elementen dieses Planungsprozesses gehören:

  • Aufgaben identifizieren, erstellen und zuweisen.

  • Angeben projekt Meilensteine, die wichtige Meilensteine auf dem Weg zum Projektabschluss darstellen.

  • Identifizieren abhängigkeiten zwischen Aufgaben, bei denen die Fertigstellung einer Aufgabe davon abhängt, dass zuerst eine andere Aufgabe erledigt wird.

  • Gruppieren verknüpfter Aufgaben in Aufgabenlisten.

Phase 3: Ausführung

Die Ausführungsphase von a softwareprojekt umfasst die aktive Arbeit des Softwareentwicklungsprozesses. Wie alle Entwickler wissen, handelt es sich hierbei um eine weitere Reihe von Prozessen, einschließlich Entwurfs-, Entwicklungs-, Test- und Qualitätssicherungsaufgaben (QS). Diese Arbeit sollte durch Ihre Wahl abgeschlossen werden entwicklungsworkflow.

Die Rolle des Projektmanagements während der Ausführungsphase konzentriert sich hauptsächlich auf die Projektüberwachung. Dies beinhaltet die Verfolgung des Projektfortschritts anhand der verfügbaren Zeit und die Identifizierung von Blockern, die den Fortschritt des Teams behindern könnten.

Phase 4: Bewertung

In der letzten Phase des Projektzyklus sollten sich Softwareteams treffen (entweder persönlich oder digital) und das Projekt gemeinsam bewerten.

Fragen Sie sich: Was hat wirklich gut funktioniert, was hat uns enttäuscht oder zurückgehalten, und gab es Erkenntnisse, die direkt in die Planung für das nächste Projekt einfließen können? Die Antworten auf diese Fragen könnten langfristig der Schlüssel zur Verbesserung Ihres Teams sein.

In einigen projektmanagement-Methoden, dieser Bewertungsprozess wird durch Besprechungen erleichtert, die als Rückblicke bezeichnet werden.

Softwareentwicklung <3 agiles Projektmanagement

Softwareentwicklungsprojekte werden häufig nach verwaltet agiles Projektmanagement prinzipien. Dies ist sehr sinnvoll, da Agile von Softwareentwicklern erfunden wurde.

Agile ist eine Reihe von Prinzipien, die die Grundlage für führende Projektmanagementmethoden wie Scrum und Kanban bilden. Es untermauert das Denken hinter den meisten modernen Projektmanagementprozessen.

Laut Agile Alliance, der agile Ansatz kann in folgende Prinzipien unterteilt werden:

  1. Stellen Sie den Kunden durch frühzeitige und kontinuierliche Lieferung wertvoller Software zufrieden

  2. Begrüßen Sie Änderungen und nutzen Sie sie zum potenziellen Vorteil des Kunden

  3. Liefern Sie häufig funktionierende Software über kurze Zeiträume

  4. Die Mitarbeiter auf der Geschäfts- und Entwicklungsseite des Teams sollten täglich eng zusammenarbeiten

  5. Die Teammitglieder sollten bei ihrer Arbeit voll unterstützt und vertrauenswürdig sein

  6. Einzelgespräche sind der beste Weg, um Informationen weiterzuleiten

  7. Funktionierende Software ist der beste Indikator für den Fortschritt

  8. Die Geschwindigkeit von Arbeit, Fortschritt und Software-Nutzung sollte nachhaltig sein

  9. Es sollte konsequent auf technische Exzellenz und effektives Design geachtet werden

  10. Einfachheit

  11. Teams sollten in die Lage versetzt werden, sich selbst zu organisieren

  12. Das Team sollte regelmäßig Gelegenheit erhalten, sich selbst zu reflektieren und zu organisieren

Die Einhaltung dieser Grundsätze ist für Softwareentwicklungsteams in der Regel ein kluger Schritt. Wir empfehlen daher, alle 12 in Ihren Projektmanagementprozess einzubeziehen.

Das agile Projektmanagement wurde schrittweise von Software-Ingenieuren zusammengestellt, in den letzten Jahrzehnten des 20. Jahrhunderts. Heutzutage nutzen alle Arten von Teams es, um ihre Projekte zu realisieren, einschließlich Regierungsabteilungen, Kreativagenturen, Webentwicklern und natürlich Software-Ingenieuren. Wir haben keinen Zweifel daran, dass Softwareentwickler die von ihrem eigenen Beruf geschaffenen Projektmanagementprinzipien noch lange anwenden werden, um nützliche Dinge für die Zukunft zu entwickeln.

undefined

Software-Projektmanager: Rolle und Verantwortlichkeiten 

Die meisten Softwareentwicklungsteams profitieren von der Arbeit mit einer speziellen Software projektmanager. Diese Person führt das Team durch den Projektmanagementprozess. Sie sind wahrscheinlich gut qualifiziert, um Softwareprojekte zu verwalten, mit einer Kombination aus Softwareentwicklungswissen und Erfahrung im Projektmanagement.

Zu den in den Rollenbeschreibungen des Softwareprojektmanagers häufig aufgeführten Aufgaben gehören:

  • Leitung und Unterstützung von Softwareprojekten

  • Bereitstellung von Statusberichten an hochrangige Stakeholder

  • Führend bei der Änderungskontrolle (dieser Prozess stellt sicher, dass Änderungen an einem Ergebnis innerhalb der akzeptierten Parameter liegen)

  • Projektkommunikation

  • Mehrere Projekte gleichzeitig verwalten

  • Projektdokumentation erstellen und pflegen

  • Messung der Projektleistung mit geeigneten Tools und Metriken

Eine andere Sache, die der Software-Projektmanager gut machen muss, ist die Kommunikation. Insbesondere müssen sie als Vermittler zwischen dem Kunden oder dem beauftragenden Stakeholder und dem Entwicklungsteam fungieren. Dies hilft den Entwicklern des Teams, sich darauf zu konzentrieren, das zu tun, was sie am besten können, und gibt dem beauftragenden Stakeholder einen konsistenten Ansprechpartner.

Der Projektmanager muss auch alles tun, um sicherzustellen, dass der Projektmanagementprozess weiter läuft. Sie müssen sicherstellen, dass das Team seine Arbeit gemäß der von ihm gewählten Projektmanagementmethode ausführt, und gleichzeitig den Projektmanagementprozess optimieren, damit es für das Team funktioniert.

Können Sie ein Softwareprojekt ohne Projektmanager verwalten?

Einige Softwareentwicklungsteams verwenden entweder nach Wahl oder aus finanziellen Gründen einen Projektmanagementansatz ohne die Einbeziehung eines Projektmanagers. Wenn das nach Ihrem Team klingt, können Sie sicher sein, dass Projektmanagementaufgaben normalerweise von regulären Mitgliedern des Softwareentwicklungsteams perfekt ausgeführt werden können.

Wenn Sie das Projektmanagement „im Team“ durchführen möchten, stellen Sie einfach sicher, dass diese drei Dinge vorhanden sind:

  • Starke Projektmanagementfähigkeiten im Team. Dies wird am besten durch Training und Übung erreicht. Ein guter Weg, um alle Teammitglieder auf den neuesten Stand zu bringen, besteht darin, die Verantwortung für das Projektmanagement von Projekt zu Projekt durch das Team zu wechseln.

  • Klare Zuordnung der Projektmanagementaufgaben zu den Teammitgliedern, sodass jeder weiß, wer was in jedem Projekt tut.

  • Eine intuitive Projektmanagementplattform mit aufmerksamer Kundenbetreuung.

Empfohlene Projektmanagement-Taktik für Software-Entwicklungsteams

Während ein generischer Projektmanagementansatz normalerweise für die Verwaltung von Softwareentwicklungsprojekten geeignet ist, empfehlen wir, die folgenden speziellen Methoden in Ihren Prozess einzubeziehen:

Projektschätzungstechniken

Der Umfang eines Softwareprojekts kann schwer zu definieren sein. Wie können wir abschätzen, wie viel Arbeit ein Team benötigt, um etwas zu schaffen, das für sie neu und vielleicht sogar für alle neu ist?

Die Schätzung von Softwareprojekten ist selbst für erfahrene Softwareentwickler schwierig und ein besonders herausforderndes Problem für nichttechnische Stakeholder, denen möglicherweise die Intuition eines Entwicklers für die Komplexität von Softwareentwicklungsaufgaben fehlt.

Wir können die Herausforderung der Schätzung des Projektumfangs bei der Softwareentwicklung bewältigen, indem wir systematisch Projektschätzungstechniken einsetzen. Wir empfehlen, die folgenden Optionen zu prüfen:

  • Analoge Schätzung

    , wobei Elemente des Projektumfangs auf der Grundlage eines Vergleichs mit ähnlichen Elementen früherer Projekte geschätzt werden.

  • Parametrische Schätzung, dabei werden Maßnahmen wie die durchschnittlichen Kosten für das Schreiben einer bestimmten Anzahl von Codezeilen zur Schätzung der Projektkosten verwendet.

  • Überprüfungstechnik zur Programmevaluierung (PERT)

Verwaltung des Projektumfangs

Softwareprojekte können anfällig für übermäßige Projekte sein scope Creep, auch als Feature Creep bekannt. Wir sind uns sicher, dass der bloße Gedanke daran ausreicht, um einigen von Ihnen die Heebie-Jeebies zu geben.

Beim Scope Creep steigen die Anforderungen eines Projekts im Laufe der Projektlaufzeit erheblich an. Ein gewisses Maß an Kriechen ist zu erwarten, aber zu viel davon kann verhindern, dass Projekte pünktlich und im Rahmen des Budgets geliefert werden.

Die erste und beste Vorsichtsmaßnahme, die Sie gegen Scope Creep treffen können, ist ein gründlicher und kritischer Ansatz bei der Projektplanung. Es ist weitaus besser, ein potenzielles Problem während der Planungsphase als während der Projektausführung zu identifizieren, da Sie so eine Problemumgehung sorgfältig planen können, anstatt Projektfunktionen im laufenden Betrieb hinzuzufügen. Während der Projektausführung können Sie durch sorgfältiges Management von Projektänderungen ein Überschreiten des Umfangs verhindern.

Projektrisikomanagement

Projektrisiko’ ist ein spezifischer Begriff für das Projektmanagement, der möglicherweise nicht genau das bedeutet, was Sie erwarten. Ein Projektrisiko ist jedes Ereignis außerhalb eines Projekts, das sich positiv oder negativ auf das Projektergebnis auswirken kann. Dies kann alles sein, von der unerwarteten Einführung eines konkurrierenden Softwareprodukts über die Änderung des Benutzerverhaltens infolge einer globalen Pandemie bis hin zu einem Vogelschwarm, der durch Ihr Bürofenster hereinfliegt und alle Ihre Computer mit ihren scharfen kleinen Schnäbeln in Millionen von Teilen pickt .

Es ist unnötig zu erwähnen, dass einige Risiken einer Überwachung mehr wert sind als andere. Die bequemste Möglichkeit, ein Projektrisiko zu überwachen, besteht darin, Ihrer Projektmanagementplattform Risiken hinzuzufügen. Dies wird Sie daran erinnern, den Risikofaktor weiter zu überprüfen, damit Sie Ihren Plan weiter an neu auftretende Situationsfaktoren anpassen können.

Projektmanagement-Tools für Software-Entwicklungsteams

Softwareentwicklungsteams verwenden in der Regel a projektmanagement-Tool um zu helfen, ihr Projekt zu liefern. Dieses Tool bietet einen digitalen Projektarbeitsbereich, in dem Teammitglieder zusammenarbeiten und alle beweglichen Teile des Projekts verfolgen können. Alle Prozesse des Projektmanagements sollten durch dieses Tool erleichtert werden.

Einige Softwareentwicklungsteams entscheiden sich möglicherweise dafür, ihre bevorzugten Tools von Drittanbietern in ihr Projektmanagement-Tool zu integrieren. Durch die Integration von Teamwork in Dropbox können Teams beispielsweise Dateien direkt aus ihren Dropbox-Konten an Aufgaben in Teamwork anhängen. Wenn Sie vorhaben, ein Drittanbieter-Tool in Ihr Projektmanagement-Tool zu integrieren, prüfen Sie unbedingt, ob die Integration erleichtert wird, da sich die Erstellung einer eigenen maßgeschneiderten Integration als schwierig oder sogar unmöglich erweisen kann.

Mit dem richtigen Projektmanagement-Tool an Ihrer Seite kann Ihr Projektmanagement-Prozess reibungslos ablaufen und großartige Software liefern.