Organisationsmethoden ermöglichen es Unternehmen, Praktiken und Aktivitäten auf einer detaillierten Ebene zu beobachten. Ein Verständnis darüber, wo die Priorisierung der Zeit- und Ressourcenallokation erfolgen kann, kann dazu beitragen, ein Unternehmen effizienter und effektiver zu betreiben.
Ein starkes Programmmanagement ist entscheidend, um sicherzustellen, dass Ihre Organisation hervorragend funktioniert und ihre strategischen Ziele erreicht. Wir haben mit führenden Programmmanagern von Yalantis gesprochen und einen Artikel erstellt, in dem Sie Tipps, Best Practices und Ansätze zum Programmmanagement finden können.
Dieses Fachmaterial wird Ihnen nützlich sein, wenn Sie:
- Planen Sie, ein großes Produkt in einem bestimmten Zeitrahmen mit einer großen Anzahl von Personen und unklar definierten Prozessen zu produzieren.
- Es ist notwendig, ein Produkt mit einer großen Anzahl von Komponenten zu entwickeln und/oder zu skalieren.
- haben Sie ein Projekt, bei dem bereits mehr als zwei Teams beteiligt sind
Was ist Programmmanagement?
Programmmanagement ist ein strategisches Managementansatz zur Durchführung und Steuerung mehrerer zusammenhängender Projekte. Ziel ist es, durch die gemeinsame Nutzung von Projektressourcen, Kosten und Aktivitäten Vorteile für das gesamte Programm zu erzielen.
Der Schlüsselwert des Programmentwicklungsmanagements Betrifft die effektive Verwaltung von Ressourcen innerhalb von Projekten innerhalb eines Programms und die Erreichung der Gesamtstrategieziele Ihres Unternehmens.
Das Programmmanagement umfasst die folgenden Schwerpunkte:
- Planung
- Risikomanagement
- Stakeholder-Management
- Leistungsmanagement
- Organisatorischer Change Management
- Kommunikationsmanagement und -führung
Das Programmmanagement-Framework schließt das Projektmanagement-Framework nicht aus, sondern ergänzt es. Allerdings vereint das Programmmanagement alle Komponenten und verfügt über zusätzliche Tools und Mechanismen, die es ermöglichen, mehrere Projekte als ein Ganzes zu verwalten und zu verwalten.
Was ist ein Programm in der Programmverwaltung?
Ein Programm kann auf zwei Arten entwickelt werden. Zum einen kann ein großes Unternehmen ein Programm von Anfang an beim Entwickeln eines Produkts erstellen und es mit kleinen, miteinander verbundenen Projekten ergänzen. Die zweite Möglichkeit, die Yalantis in der Praxis oft beobachtet, ist, dass ein Programm aus einem Projekt entsteht und bestimmte Phasen durchläuft, die wir im Folgenden beschreiben werden. In beiden Fällen gilt die goldene Regel: Ein Programm ist immer viel größer als ein Projekt.
Was ein Programm bei Yalantis ist
Es ist wichtig zu beachten, dass die Definition eines Programms zwischen Unternehmen und Programmentwicklungsteams (PgMOs) unterschiedlich ist.
Bei Yalantis unterscheiden wir zwei Grundprinzipien eines Programms in der Programmmanagement:
- Ein Programm enthält zwangsläufig mehrere Unterprojekte, d. h. Komponenten, die durch ein bestimmtes Prinzip zusammengefasst sind: eine gemeinsame Codebasis, einen gemeinsamen Client usw.
- Ein Programm wird nie durch die Anzahl der Personen definiert.
Am einfachsten zu demonstrieren, was ein Programm bei Yalantis ist, ist es, ein Programm mit einem Projekt zu vergleichen. Erstens ist es immer schwieriger, Ressourcen in einem Programm zu verwalten, da ein Programm immer mehr Teams umfasst als ein Projekt. Zweitens steuern wir bei der Verwaltung eines Programms bei Yalantis direkt die Geschäftsentwicklung. Das heißt, wir fragen uns, welche Vorteile das Programm für den Kunden und das Unternehmen des Kunden mit sich bringt.
Durch die Anwendung verschiedener Techniken zur Stakeholder-Management-Steuerung bei der Arbeit mit Stakeholder-Gruppen bestimmen wir, wie die Vorteile des Programms erreicht werden können. Auf Projektebene geht es bei der Projektleitung nur um Zeitplan, Umfang und Kosten.
Bei der Entwicklung von Programmen bei Yalantis geben unsere Experten unseren Kunden die Möglichkeit, das Produkt schneller zu entwickeln, da wir die Arbeit über große Teams verteilen und daran arbeiten können. Schnellverfahren und Crash-Methoden, das Folgendes umfasst: Schnelle Skalierung Falls nötig.
Insgesamt verstehen die Programmmanager von Yalantis, wie man mit einem großen Team in relativ kurzer Zeit ein großes Produkt entwickelt.
Sie könnten auch an unserem Expertenmaterial zu folgenden Themen interessiert sein: Wie man mit strengen Projektbeschränkungen umgeht.
Interessiert daran, wie wir die Softwareentwicklung betrachten und diese auf die Verbesserung der Leistung, Skalierbarkeit, Wartbarkeit und der Funktionalität ausrichten?
YALANTIS SDLC herunterladenWas ist der Wert eines Programmierers?
Programmmanager verfügen über ein flexibles Spektrum an Fähigkeiten, das im Laufe der Zeit an die unterschiedlichen Geschäftsbedingungen angepasst werden kann. Sie bieten in der Regel fundierte strategische Beratung, um sicherzustellen, dass jedes Projekt eines Programms erfolgreich umgesetzt werden kann. Dank umfangreicher Wissensdatenbanken bestimmen die Praktiken, die sie auswählen, den Grundplan für das Programmmanagement und seinen Gesamterfolg.
Lassen Sie uns das demonstrieren Verantwortlichkeiten des Programmdirektors Indem man bedenkt, wie sie sich von den Verantwortlichkeiten eines Projektmanagers unterscheiden. Ein Projektmanager denkt in der Regel über die aktuellen Projektziele nach, während ein Programmmanager über die Programmschwerpunkte, die Zukunft, die Anzahl der Programmkomponenten und die richtige Verteilung der Ressourcen nachkommt, falls neue Komponenten hinzugefügt werden.
Der Programmmanager synchronisiert Projekte, die von einzelnen Projektmanagern verwaltet werden.
Lesen Sie auch: Was ein Projektmanager in jeder Phase des Softwareentwicklungsprozesses tut
Die Aufgaben eines Programmdirektors können wie folgt zusammengefasst werden:
- Verstehen Sie das Gesamtbild, ohne in Einzelheiten einzutauchen
- Konzentrieren Sie sich auf zukünftige Ziele
- Legen Sie großen Wert auf die Integration der Programkomponenten
- Arbeiten mit dem Programmbudget
- Sorgt für die tägliche Verwaltung des Programms über den gesamten Lebenszyklus hinweg (Management des Datenlebenszyklus)
- Planen Sie das Gesamtprogramm und überwachen Sie den Fortschritt, um sicherzustellen, dass die Meilensteine in verschiedenen Projekten und Programmen erreicht werden.
- Managiert Programmierrisiken und Probleme, die im Laufe des Programmlaufzeitraums auftreten können, und ergreift Maßnahmen, um diese zu beheben, wenn sie auftreten.
- Koordinieren von Projekten und deren Interdependenzen zwischen den verschiedenen Projekten im Programm
Bei Yalantis übertreffen wir die Erwartungen unserer Kunden, indem wir deren Geschäftsanforderungen berücksichtigen. Wir ermitteln, warum der Kunde eine bestimmte Funktionalität anstrebt. Auf diese Weise können wir die Geschäftsentwicklungsprozesse auf der Seite des Kunden besser bedienen und die Bedürfnisse des Kunden effizient erfüllen.
Programmmanagement bei Yalantis
Im Folgenden beschreiben wir unseren Ansatz zur erfolgreichen Programmverwaltung.
Unser Ansatz beinhaltet die Kombination klassischer und agiler Management-Methoden. Wir nutzen nämlich die Feedback-Loops und schnellen Release-Verfahren von Agile-Methoden, während gleichzeitig die Budget- und Zeitplangestabilität klassischer Techniken gewährleistet wird. Lassen Sie uns genauer auf diesen Ansatz eingehen:
Erstellung eines Programmentwurfs
#1. Ziele und Vorteile definieren Dies ist der allererste Schritt, mit dem wir ein Programm starten. Stakeholder und Führungskräfte kommen zusammen, um eine Programmstrategie (Programmcharter) zu erstellen, die die Vision, den Umfang, die Mindestziele, die Budgetplanung, die Ressourcenverwaltung und die Vorteile umfasst. Der Brief wird dem Programmmanager übergeben, damit dieser die Programmpartner, die Projektabhängigkeiten, die Risikofaktoren, die Planung und die technischen Anforderungen identifiziert.
#2. Erhebung von Kundenanforderungen Es ist der nächste Schritt in Richtung erfolgreicher Programmführung, und darauf konzentrieren wir uns am meisten. Die Erhebung der Anforderungen ermöglicht es uns, die Bedürfnisse, Erwartungen und Einschränkungen des Kunden bereits zu Beginn zu verstehen. Dies wiederum ermöglicht es uns, die Programmumfang.
Lesen Sie auch: Welche Rolle spielt ein Business Analyst bei unserem Unternehmen?
#3. Die Wahl des Rahmens und der konkreten Herangehensweise an die Programmverwaltung Dies ist der Schritt, den wir unternehmen, nachdem wir alle Anforderungen des Kunden gesammelt haben. Yalantis wählt aus mehreren gängigen Frameworks, darunter das Scaled Agile Framework (SAFe)-Framework, das Nexus-Framework und das Scrum@Scale-Framework.
Ein erfahrener Programmmanager wählt ein Framework aus, das den Bedürfnissen des Kunden entspricht, und die Hauptaufgabe des Programmentwicklers besteht darin, die Programmprozesse an das Framework anzupassen.
Wenn die Programmmanager von Yalantis feststellen, dass kein klassisches Framework für ein bestimmtes Programm geeignet ist, können sie einen eigenen, maßgeschneiderten Ansatz auf der Grundlage bestehender Frameworks entwickeln und das Wissen an die spezifischen Bedürfnisse eines bestimmten Kunden anpassen.
Die Konstruktion des Gebäudes
Sobald der Programmumfang definiert ist, kann ein Programmmanager zusammen mit einem Business-Analysten und einem Solution-Architect den gesamten Arbeitsschwerpunkt auf mehrere Programmströme verteilen.
Bei Yalantis gibt es immer Projektteams und Designteams. Ein Projektteam tut, was jetzt nötig ist, während ein Designteam wirkt nach Bedarf in der Zukunft.
Der Programmmanager leitet das Designteam und gemeinsam entwickeln sie Wege, wie Prozesse aufgebaut werden können, damit alle Komponenten und alle Beteiligten als einheitlicher Mechanismus funktionieren.
Darüber hinaus verfügt ein Designteam über einen eigenen spezifischen Arbeitsablauf. Ein Projektteam beispielsweise verfügt über den folgenden Arbeitsablauf: zu tun – in Arbeit – im Test – erledigt. Ein Designteam konzentriert sich auf die Bearbeitung von Anfragen und die Zusammenarbeit mit den Stakeholdern. Im Folgenden sehen Sie ein Beispiel für einen Workflow für ein Designteam.
Durch die Verwendung Ein Programmbrett Mit allen Anfragen im gesamten Programm können wir diese an verschiedene Projekte im Programm weiterleiten. Die Projekte, die im Rahmen des Programms unterstützt werden, werden nach einem etablierten, gut strukturierten und klar definierten Prozess vorgenommen, der vom Programmmanager vorgegeben wird.
Die Arbeit mit Abhängigkeiten, Schnittstellen und Einschränkungen von Projekten erfolgt bereits in der Phase der Erstellung des Programmplans. Die Yalantis-Manager arbeiten stets daran, die Abhängigkeiten zwischen den Projekten zu minimieren.
Entscheidungsfindung in der Programmverwaltung
Die Entscheidungsphase ist eine der wichtigsten Phasen der Programmverwaltung. Um den Hauptentscheidungsbefugten im Programm zu identifizieren, verwenden wir den Begriff „Technical Lead“. Nachdem das Designteam einen Backlog für die Veröffentlichung erstellt hat, sollte dieser von den Frontend-, Backend-, QA- und Mobile-Technischen Leitern überprüft werden.
Hier sehen wir einen Teil der internen SDLC-Verfahren des Designteams:
Die Verantwortlichkeiten eines Tech-Leiters Als Entscheidungsträgerin/er in der Phase, in der der Backlog noch bei der Designabteilung liegt, sind folgende Personen zuständig:
- Vergewissern Sie sich, dass alle rückläufigen Aufgaben erledigt werden können.
- Die Lösung so einfach wie möglich gestalten
- Sorgen Sie dafür, dass die Produktbacklog-Elemente (PBIs) tatsächlich den Wert bieten, den der Kunde benötigt.
- Überprüfen Sie, was wiederverwendet werden kann, um Ressourcen zu sparen (Produkte von Drittanbietern, Bibliotheken, Entwicklungen des Unternehmens).
Nachdem alle Aufgaben mit den technischen Verantwortlichen überprüft wurden, erstellt ein Programmmanager eine Hochrechnung für die Veröffentlichung, die anschließend vom Kunden genehmigt wird.
Erstellung der Programmdokumentation
Die Dokumentation eines Programms unterscheidet sich von der Dokumentation eines Projekts, da das Hauptaugenmerk des Programms auf Strategie, Kommunikation mit den Stakeholdern und dem RAID-Log (Risiken (R), Annahmen (A), Probleme (I) und Abhängigkeiten (D)) liegt. Außerdem konzentriert sich das Programm stärker auf Ressourcenplanung und Roadmap-Erstellung. Daher ist die obligatorische Dokumentation wie folgt:
- Programmstrategie (Programmcharter)
- Programm-RACI-Matrix
- Kommunikationsplan
- Programm RAID-Log
- Verteilung der Ressourcen und Budget
- Programmplan
Yalantis gibt Tipps zur Dokumentation im Programmmanagement:
- Halten Sie die Checklisten flexibel. Im Gegensatz zu einem Projekt gibt es in einem Programm eine konstante Freigabefrequenz. Daher besteht ein ständiger Bedarf an Checklisten und Kontrollen.
Wir verwenden keine strengen und unflexiblen Regeln. Alle Teams verfügen über Vorlagen und Wissensdatenbanken, um Checklisten für Prozesse einzuführen. Wir räumen außerdem den Teams die Möglichkeit ein, die Dokumentation selbst so zu gestalten, dass sie für ein bestimmtes Projekt praktisch und individuell angepasst ist. - Erfassen Sie die Roadmap. Unser Roadmap-System ermöglicht es jedem Team, seine Arbeitslast nach Bedarf einzusehen, während Interessengruppen und Programmmanager das Gesamtbild und alle Abhängigkeiten sehen und Probleme im Rahmen des Programms erkennen können.
Es ist anzumerken, dass wir ein ziemlich flexibles Format für den Roadmap-Planungsplan haben, nicht den klassischen orthodoxen. Dies ermöglicht es uns, sofort Änderungen vorzunehmen und neue Inputs einzubringen, falls diese im Rahmen der Programmverwaltung entstehen.
Die wichtigsten Prinzipien von Yalantis für erfolgreiches Programmmanagement
Die Programmmanager von Yalantis erstellen in dem Programm-Workflow individuelle Prozesse. Gleichzeitig gibt es viele Best Practices, die die Manager ständig implementieren, anpassen und verbessern. Einige Beispiele, die wir hier ohne die Informationen aus Projekten nennen können, die durch Geheimhaltungsvereinbarungen geschützt sind:
- Die Dezentralisierung des Programms soll die vertikale Führung innerhalb des Teams beseitigen. Formell existiert die Vertikalstruktur, in der Praxis sind jedoch alle Projektmanager innerhalb des Programms isoliert. In der Praxis bedeutet dies, dass jeder Projektmanager seinen eigenen Kontext und seine eigenen Prioritäten hat. Sie interagieren nur mit anderen Projekten, wenn sie eine bestimmte Funktion veröffentlichen wollen, und nur auf dem notwendigen kritischen Niveau.
Wir delegieren alles, was vertraut werden kann, an die eigene Projektgruppe. Nur bei Überschneidung von Teams oder komplexen Meilensteinen setzen wir auf Programmentwicklungswerkzeuge. Dadurch kann jede Gruppe ihre Ausführung unabhängig von der zentralen Organisation durchführen, die die Prozesse verlangsamen würde.
- Verbesserte Release-Management-Maßnahmen umfassen:
- Die Rolle des Release-Managers abgrenzen. Dies ist ein technischer Spezialist, der die Genauigkeit des Entwicklungsteams sicherstellt.
- Verwendung von Freigabekalendern. So können wir alle Aufgaben sehen, die bereits über Releases geplant sind, mit Terminen und Fortschrittsbalken.
- Entwickeln auf der Grundlage der Taktfolge, Freigeben auf Anfrage. Unsere Release-Kalendern basiert das Prinzip, dass ein Release alle zwei Wochen stattfinden sollte. Daher weiß das Team, dass in zwei Wochen immer ein Release stattfinden wird – und es liegt an dem Team, was es in das Release einfügt und was es nicht einfügt.
- Die Implementierung eines Kernteams in den Workflow. Der Arbeitsbereich für jedes Programm umfasst Arbeiten mit Innovationen und Proof-of-Concept (POC). Wir haben die Möglichkeit, diesen Arbeitsbereich entweder als Backlog in bestehenden Teams zu priorisieren oder separate Teams einzusetzen, die sich ausschließlich auf die oben genannten Aufgaben konzentrieren.
Bei Yalantis verfolgen wir den zweiten Ansatz. Wir haben Kernteams, die hauptsächlich aus Backend-Ingenieuren, DevOps-Experten und QA-Spezialisten bestehen. Dadurch können wir den Kunden regelmäßige Releases und regelmäßige Lieferungen innerhalb eines großen, skalierbaren Programms garantieren. - Mit dem Fokus auf die Abhängigkeitsverwaltung. Um zu vermeiden, dass ein Manager mit all den Aufgaben belastet wird, schaffen wir eine effektive Kommunikation zwischen den Projektmanagern, wobei der Programmmanager in Konfliktsituationen als Vermittler und Entscheidungsträger fungiert.
- Gründung eines Programmentwicklungsteams (PgMO). Aufgrund der Komplexität und des Umfangs des Programms erfordert dies die Unterstützung einer zentralen verantwortlichen Stelle: der Programmmanagementabteilung. Die PgMO hat in der Regel mehrere Mitglieder. Normalerweise sind mehr als ein Programmmanager erforderlich, um alle Anforderungen zu bewältigen.
Reife PgMO in Yalantis
Bei Yalantis ist unser PMO (Project Management Office) für die Zusammenarbeit mit Programmen zuständig. Das Yalantis PMO ist eine große Struktur, die organisatorische Prozessressourcen (OPA) etabliert und Führungskräften wesentliche Kenntnisse in Form von Vorlagen, Best Practices und Lehren vermittelt. Eine der Schlüsselbereiche, in denen wir diese Kenntnisse aktiv anwenden, ist die Implementierung Intelligente Automatisierung für HR-Workflows zur Rationalisierung der Routineprozesse und zur Verbesserung der Entscheidungsfindung.
Jeder der Yalantis-Programmmanager modernisiert die Prozesse in seinem Programm nach Bedarf. Anschließend werden Audits der Prozesse durchgeführt, um die Kompetenzen zu verbessern. Außerdem findet auf der vom NDA erlaubten Ebene eine Peer-Review statt, die es den Managern ermöglicht, neue Best Practices anzuwenden.
Die strategische Rolle des PgMO ist von entscheidender Bedeutung, da angepasste, nachhaltige Prozesse es uns ermöglichen, die Bedürfnisse des Kunden schnell und effizient zu erfüllen.
Das Programmmanagement besteht darin, sich darauf zu konzentrieren, strategische Vorteile für Ihr Unternehmen zu erzielen. Die Einstellung eines Programmentwicklers bedeutet letztlich, sich um den Erfolg Ihres Produkts zu kümmern.
Auf der Suche nach einem zuverlässigen Managementteam oder einem erfahrenen Programmdirektor?
Wir können Ihnen dabei helfen, die Verwaltung der Projekt-Interdependenzen und die Auswirkungen des Programms auf die Unternehmensziele zu verbessern.
FAQ
Welche Frameworks verwenden wir, um ein Programm zu verwalten?
Es hängt von dem spezifischen Programm und dem Kunden ab. Wir können das SAFe-Framework, das Nexus-Framework, das Scrum@Scale-Framework oder ein anderes Framework verwenden. Wir konzentrieren uns nicht stark auf ein bestimmtes Framework, sondern vielmehr darauf, wie man es den Bedürfnissen des Kunden entsprechend anpassen kann.
Was ist einzigartig an unserem Ansatz zur Programmverwaltung?
Unser Ansatz basiert auf einer Mischung aus agilen und klassischen Techniken. Wir nutzen die Feedback-Loops und schnellen Releases von Agile und liefern mit Hilfe klassischer Methoden ein vorhersagbares Budget und einen planbaren Zeitplan.
Was ist der entscheidende Unterschied zwischen einem Projektmanager und einem Programmanager?
Kurz gesagt: Ein Projektmanager konzentriert sich auf die aktuellen Aufgaben, während ein Programmmanager das Gesamtbild sieht und strategische Ziele und Ziele berücksichtigt.