Share via


Definieren des Problembereichs

Bei der Definition Ihrer internen Entwicklerplattform ist es von entscheidender Bedeutung, zuerst dünnste praktikable Plattform (TVP) zu definieren. Dies ist eine Variante der Idee eines Minimum Viable Product (MVP) im klassischen Produktmanagement.

Unter Planen und Priorisieren erfahren Sie mehr über das Definieren (oder Verbessern) Ihres TVP. Aber bevor wir dahin kommen, kann Dieses Diagramm Ihnen helfen, Ihr Denken daran zu orientieren, wie Sie sich im Laufe der Zeit weiterentwickeln können. Denken Sie daran, dass das größte Problem Ihres organization aufgrund Ihrer vorhandenen Investitionen oder organisatorischen Anforderungen möglicherweise von den hier beschriebenen Abweichen kann. Wichtig ist, dass Sie nicht mit der nächsten Phase fortfahren müssen, es sei denn, Ihr organization benötigt sie.

Diagramm, das zeigt, wie sich das Plattform-Engineering im Laufe der Zeit weiterentwickeln kann.

Wenn Sie von Grund auf neu beginnen, stellt dies einen allgemeinen Fortschritt dar. Konzentrieren Sie sich in frühen Phasen auf die Ermittlung der benötigten Funktionen, die Analyse der Anpassungslücken von Produkten mit Verkleinerung und die Erstellung der Minimalanzahl von Tools oder Plattformfunktionen. Als Nächstes werden Sie sich bei der Skalierung wahrscheinlich auf die Wiederverwendbarkeit konzentrieren und Die Menschen auf vordefinierten gepflasterten Pfaden mit wiederverwendbaren Ressourcen führen. Schließlich bewegen Sie sich zu einem verbraucherähnlichen "digitalen Store"-Modell, um das Erstellen und Verwalten von Anwendungen zu vereinfachen. Sie sollten durchweg eine Produkt-Denkweise verfolgen, daher empfehlen wir nicht, bis zum Ende zu springen, und Ihre spezifische Reise variiert. Diese letzten Phasen ähneln am meisten verkleinerten "Produkt" im herkömmlichen Sinne, aber dies ist ein Ziel, kein Ausgangspunkt.

Angesichts der schieren Größe dieses Themas empfehlen wir, die Art und Art des Themas Plattformentwicklung in vier Themenbereiche zu unterteilen. Die Kategorisierung Ihres Denkens auf diese Weise kann die Erstellung und Kommunikation eines Plans für Ihre Investitionen im Laufe der Zeit vereinfachen. Diese Bereiche sind:

  • Engineering-Systeme: Eine kuratierte Mischung aus DevOps-Suiten wie GitHub und Azure DevOps sowie anderen Entwicklertools und -diensten. Neben wichtigen DevOps-Tools und -Diensten wie CI/CD oder Paketverwaltung umfasst dieser Bereich auch Funktionen, die direkt während des Codierungsprozesses verwendet werden, z. B. cloudbasierte Codierungsumgebungen, Codescanner und Liter sowie KI-Assistenten wie GitHub Copilot.
  • Anwendungsplattform: Eine zusammengestellte Auswahl von Diensten (z. B. IaaS, PaaS und Beobachtbarkeit), die auf jeden "App-Stapel" (Anwendungsklasse, App-Modell, Sprachen) abzielen, die ein organization verwenden möchte, um geschäftlichen Nutzen zu erzielen. Dies umfasst eine Mischung aus App-Stack-spezifischen Diensten und gängigen Diensten, die überall verwendet werden. Ein Beispiel für eine Anwendungsplattform könnte Azure Container Apps, Cosmos DB für Speicher, Azure Key Vault für Geheimnisse, für Identitäts- und rollenbasierte Zugriffssteuerung, Azure Policy für Compliance und Überwachung, Beobachtbarkeit durch Grafana und eine zugehörige Netzwerktopologie umfassen.
  • Anwendungsvorlagen: Eine Reihe von klar definierten, organization erstellten Schnellstartvorlagen, die den richtigen Start und die richtige Anleitung für eine bestimmte Anwendungsplattform, Sprache und eine Reihe von Technischen Systemen kapseln. Sie können auf andere zentralisierte Vorlagen verweisen und Startercode, API- und SDK-Verweise, CI/CD-Pipelines, Toolkonfiguration und vieles mehr bereitstellen.
  • Self-Service-Funktionen für Entwickler: Dies ist der Klebstoff für Ihre Plattformentwicklung. Es handelt sich um eine Kombination aus APIs, Orchestratoren, einem Katalog, Vorlagen und Benutzeroberfläche, die entwickelt wurde, um die Mühe von Entwicklern zu reduzieren und Entwicklungsteams zu ermöglichen, sich selbst zu bedienen und autonomer zu sein, während gleichzeitig die Auswahl und Anleitung/Governance aus den vorherigen drei Bereichen eingehalten werden.

Grafik der Kernbereiche des Plattform-Engineerings.