Mehr als je zuvor in der Geschichte hat das vergangene Jahrzehnt bewiesen, dass es nicht mehr ausreicht, als Erster mit einem bahnbrechenden und innovativen Softwareprodukt oder einer Dienstleistung auf den Markt zu kommen.
Während die richtige Go-To-Market-Strategie und eine disziplinierte Umsetzung aus geschäftlicher Sicht von entscheidender Bedeutung sind, ist die Fähigkeit, sich durchgängig durch technologische Innovation auszuzeichnen, unbestritten das größte Unterscheidungsmerkmal für erfolgreiche Softwareunternehmen. Und in der heutigen digitalen Landschaft ist die Fähigkeit, kontinuierlich anspruchsvolle Software zu entwickeln und einzusetzen, der wichtigste Teil der Technologie- und Innovations-DNA eines Unternehmens.
In den letzten zwei Jahrzehnten habe ich zahlreichen Softwareunternehmen dabei geholfen, ihre Entwicklungsteams, Funktionen und Prozesse so zu organisieren, dass kontinuierliche Innovation möglich ist. Unabhängig von der Größe Ihres Unternehmens und dem Stadium des Produktlebenszyklus ist es wichtig, die 6 P's der Organisation von Software-Engineering als Kerngeschäftsfunktion zu verstehen:
Produktmanagement
Das Produktmanagement ist vielleicht die wichtigste organisatorische Aufgabe in einem Softwareunternehmen. Unabhängig davon, ob es sich um eine Einzelperson oder ein funktionsübergreifendes Team handelt, muss das Produktmanagement bei der Formulierung der Vision, der Festlegung der strategischen Roadmap und der Identifizierung/Priorisierung der zu lösenden Kundenprobleme eine entscheidende Rolle spielen. Noch wichtiger ist, dass das Produktmanagement den Markt genau kennt und genau weiß, wie und wodurch sich unsere Software von der der Wettbewerber unterscheidet.
Produktarchitektur
Diese Schlüsselrolle ist für die gesamte Technologiearchitektur sowie für das Design und die technologische Ausrichtung der Software verantwortlich. In größeren Unternehmen wird diese funktionale Rolle oft von einer Gruppe von Architekten übernommen, die wiederum für die Architektur/das Design einer bestimmten Komponente der Software oder einer bestimmten Technologiestufe verantwortlich sein können. Diese kritische Rolle definiert die technologische und technische Exzellenz der Software und muss danach streben, immer an der Spitze der technologischen Innovation zu stehen.
Projektleitung
Der "Projektmanager" in einer Einzelperson oder ein Project Management Office (PMO) in einer größeren Einrichtung muss für die systematische Planung, Ausführung und Lieferung jeder Softwareversion oder -iteration verantwortlich sein. Ein fähiger PM oder PMO ist in der Lage, potenzielle Engpässe bei Mitarbeitern, Prozessen und Technologien zu erkennen, Abhängigkeiten auszugleichen und dafür zu sorgen, dass alle Funktionsteams gemeinsam auf ein gemeinsames Veröffentlichungs-/Lieferungsziel hinarbeiten. In der heutigen Softwareentwicklungsumgebung muss diese Rolle häufig mit den besten Praktiken in Bezug auf agile Entwicklungsmethoden wie Scrum vertraut sein.
Produktentwicklung
Wir haben die Erfahrung gemacht, dass die Kernaktivitäten der Softwareentwicklung (Design, Kodierung, Testen und Integration) oft am besten von kleineren, dedizierten Teams mit funktionsübergreifender Expertise in verschiedenen Bereichen durchgeführt werden, die für bestimmte Komponenten der Software-Suite verantwortlich sind. Die einzelnen Komponententeams müssen die vollständige Verantwortung für die gesamte Infrastruktur sowie die Mitarbeiter und Prozesse für die Quellcodekontrolle, die Testautomatisierung und das Konfigurationsmanagement haben.
Produktunterstützung & Wartung
Während das Release Management Team (RMT) unter der Leitung des Produktmanagements die Lieferung und den Einsatz der Software physisch verwaltet, muss die Support- und Wartungsfunktion separat gehandhabt werden, um sicherzustellen, dass alle Live-Kunden angemessen unterstützt werden und über geeignete Lösungs- und Feedbackmechanismen verfügen.
Prozess für kontinuierliche Innovation
Zwar ist jede der oben genannten Kernfunktionen für jedes Softwareunternehmen wichtig, doch die Fähigkeit, sie alle auf systematische, wiederholbare und skalierbare Weise durch einen gestrafften Prozess auszuführen, ist das Herzstück von "Kontinuierliche Innovation".
Basierend auf unserer umfassenden Erfahrung in der Adaption agiler Prinzipien und Scrum-Praktiken haben wir bei coMakeIT die besten Praktiken für jeden funktionalen Schritt in der Software-Wertschöpfungskette erfasst und sie in unser proprietäres "JumpStart" Methodik gemacht; diese kann von jedem Unternehmen angepasst werden, um eine "Software-Fabrik" die zu kontinuierlicher Innovation fähig ist.
In einer Reihe von kommenden Blogs werden meine Kollegen, die erfahrene agile Praktiker sind und zahlreichen Unternehmen geholfen haben, "Softwarefabriken" zu schaffen, die "JumpStart" Methodik im Detail vorstellen.
Verfasst von
Sashikanth Pochimcharla
Sashi’s motto is “operational excellence” and it is easier said than done. Sashi has a knack for understanding the customer requirements, and translating them into tangible operational goals in terms of people and processes.
Unsere Ideen
Weitere Blogs
Contact



