Prozessmanagement

Ständig erhöhte Anforderungen, Leistungs- und Kostendruck, zunehmende Komplexität, neue Technologien und steigende Geschwindigkeit fordern Unternehmen, ihre Wertschöpfung kundenorientiert und flexibel zu verbessern. Prozessmanagement unterstützt die Bewältigung dieser Herausforderung und umfasst

Für die Umsetzung können zwei Ansätze gewählt werden:

Für die Softwareentwicklung haben sich am V-Modell (SPICE, CMMI, ISO26262) oder an agilen Prinzipien orientierte Frameworks (Scrum, Kanban, DevOps, SAFe) etabliert.

Agile ist von Vorteil
  • Organisationen, die schnell erste Ergebnisse vorweisen oder Feedback erhalten müssen
  • Klärung von Anforderungen, wenn Bedenken an der Funktionalität oder Usability bestehen oder Anforderungen nicht verstanden werden
  • Eine Organisation muss neue Funktionen veröffentlichen, um kontinuierlich Einnahmen zu erzielen
  • Wenn die schnelle Markteinführung für einen Wettbewerbsvorteil in einem dynamischen Markt erforderlich ist
Agile ist weniger von Vorteil
  • Wenn der Entwicklungsumfang in einem Vertrag festgelegt wurde
  • Entwicklungsteams, die sehr groß und geografisch verteilt sind
  • Wo offene Kommunikation in einer Organisation schwierig ist
  • Ein Projekt hat eine starre Struktur
  • Entwicklungsvorhaben mit hohen regulatorischen Auflagen (z.B. Automotive mt Anforderungen an die Funktionale Sicherheit (ISO26262))

DevOps

DevOps implementiert die Prozessmodellierung, -messung und -optimierung auf Basis des Deming-Zyklus.

Die Ziele im Fokus sind

Die Umsetzung erfolgt mit den drei Wegen.

Der Erste Weg -
Prinzipien des Flow
Schnellen Arbeitsfluss von der Entwicklung über Operations zum Kunden ermöglichen
  • Sichtbar machen der Arbeit, Größe der Arbeitspakete verringern, Anzahl der Arbeitspakete in Bearbeitung beschränken
Kontinuierlich Engpässe mit Goldratt’s fünf Schritten (Theory of Constraints) identifizieren und eliminieren
  • Typische Engpässe während einer DevOps Transformation: Aufsetzen von Umgebungen, Code Deployment, Test Setup und Durchführung, monolythische Architekturen
  • Reduzierung der Engpässe durch Self-Services und weitestgehende Automatisierung der Builds, Deployments und Tests
Schwierigkeiten und Verschwendung in der Software Entwicklung eliminieren
  • Teilweise fertiggestellte Arbeit, Implementierung zusätzlicher spezieller Prozesse und Features, häufiger Wechsel zwischen Arbeitspaketen, Wartezeiten, Defects, Sonderarbeiten und manuelle Tätigkeiten, Heldentaten
Der Zweite Weg - Feedback Schnelles Feedback im Arbeitsfluss vom ersten bis zum letzten Schritt im Entwicklungsprozess sicherstellen
  • Rasch und häufig hochwertige Informationen weitergeben; erkannte Probleme umfassend mit allen notwendigen Knowhow-Trägern lösen; eine Reißleine (Andon Cord) zur sofortigen Lösung aufgetretender Problem einführen, bevor weiter gearbeitet wird
Der Dritte Weg -
Experimentieren und Lernen
Eine hoch entwickelte Vertrauenskultur etablieren, um ein dynamisches, diszipliniertes, wissenschaftliches Vorgehen für das Experimentieren und das Abwägen von Risiken zu unterstützen
  • Das Lernen fördern und bei Experimenten coachen, Reservierung von Arbeitszeit für die Beseitigung technischer Schulden und Fehler sowie Refactoring und Optimierung von Code und Umgebungen, systematische Verbreitung von Verbesserungen in der gesamten Organisation

Assessment für Software-Entwicklung mit hohen regulatorischen Auflagen

Für Organisationen, die Software mit hohen regulatorischen Auflagen (Automotive, Luft-/Raumfahrt) implementieren, stellt sich die Frage der Bewertung ihrer Prozesse, sei es als Basis für Optimierungsschritte oder um als Lieferanten zugelassen zu werden bzw. zu bleiben. Hier unterstützen Assessmentmodelle wie CMMI oder SPICE (ISO 15504).

Prozess Assemenst können für zwei grundsätzlich unterschiedliche Ziele eingesetzt werden:

  • Prozessverbesserung - Bewertung der Umsetzung eines Prozesses zur Ermittlung seiner Stärken, Schwächen und Risiken, um festzustellen, ob er effektiv und zielorientiert ist, sowie signifikante Ursachen schlechter Qualität, Zeit- und Kostenüberschreitungen zu identifizieren.
  • Prozessfähigkeit - Bewertung eines Prozesses mit dem Zweck, das Risiko für den Einsatz in einem Projekt zu ermitteln

ISO/IEC 15504 Process Assessment (SPICE, Software Process Improvement and Capability dEtermination) stellt einen Rahmen für die Bewertung der Softwareorganisationen zur Verfügung. Das strukturierte Vorgehen unterstützt beim Assessment für folgende Zwecke:

  • den Reifegrad der Softwareprozesse zur Erfüllung der Anforderungen aus den Unternehmenszielen festzustellen
  • die Eignung der Softwareprozesse als Zulieferer für die Entwicklung sicherheitskritischer Software zu bewerten
  • die Eignung der Softwareprozesse eines (potentiellen) Zulieferers für die Entwicklung sicherheitskritischer Software zu bewerten

Dieser Assessmentrahmen liefert Prozess-Ratings (ein Prozessprofil) und nicht Richtig/Falsch-Ergebnisse.


Im Bereich Prozessmanagement unterstütze ich Sie je nach Bedarf mit Beratung, Coaching oder Projektarbeit bei folgenden Tätigkeiten:

  • Leitung von Prozessmanagementprojekten
  • Implementierung von Frameworks
  • Gestaltung individueller Software-Entwicklungsprozesse, mit Schwerpunkt
    • Anforderungsmanagement
    • Konfigurations- und Change-Management
    • Testmanagement
    • Qualitätssicherung
    • Review
    • Risikomanagement
    • Abnahmen
    • Auslieferungen
  • Prozess Assessments