Eine gute geplante Einführung der Microsoft Power Platform oder Microsoft Dynamics 365 bietet viele Potentiale zur Verbesserung bestehender Geschäftsprozesse und zum Vorantreiben von Innovationen. Auf dem Weg zur erfolgreichen Einführung gibt es jedoch einige Stolpersteine, die es erschweren können, das volle Potential modernen Technologien auszuschöpfen. Auf Basis unserer Erfahrungen aus vorherigen Projekten, sowohl erfolgreichen als auch weniger erfolgreichen, haben wir für Proximate und unsere Projekte einen Satz von Best Practices abgeleitet, die eine nachhaltige Nutzung von Microsoft-Plattformlösungen zur Modernisierung von Geschäftsanwendungen ermöglichen. Nachfolgend beschreiben wir diese kurz:
- Plattformansatz verankern
- Projekte nicht vorschnell starten
- Agile Projekte
- User- und test-getriebene Entwicklung
- Versionskontrolle und Continuous Deployment
- Low-Code da wo möglich, Code da wo nötig
- Monitoring der Power Platform
Frühzeitig den Plattformansatz verankern
Die Initiierung eines Projektes zur Einführung oder Modernisierung einer Geschäftsanwendung
erfolgt in der Regel aufgrund eines konkreten Bedarfs oder Problems. Mögliche Gründe sind
beispielsweise die Veraltung einer bestehenden Anwendung, das Auslaufen des Herstellersupports
oder die unzureichende Abbildung bestehender Geschäftsprozesse. Bei der Lösung dieser
Aufgabenstellung sollte frühzeitig kommuniziert werden, dass die Microsoft Cloud-Lösungen, wie
z.B. die Microsoft Power Platform oder Dynamics 365, natürlich genutzt werden können, um
lediglich eine Anwendung zu implementieren, jedoch liegt der größte Mehrwert in dem
Zusammenspiel der vielfältigen Werkzeuge, die Microsoft in der Cloud bietet.
Das nahtlose Zusammenspiel von der Power Platform mit zum Beispiel Microsoft 365 oder Microsoft Teams
erlaubt es Ihren Mitarbeiter:innen Prozesse neu zu denken und Aufgaben effizienter zu lösen. Aufgrund
dessen kommunizieren wir frühzeitig mit Ihnen, welche Mehrwerte Sie durch den Ansatz der Plattformlösung
erreichen können und zeigen Ihnen eine Strategie auf, wie Sie z.B. andere bereits bestehenden Geschäftsanwendungen
schrittweise auf die Plattform portieren können.
Projekte nicht vorschnell starten, sondern genügend Zeit beim Projektdesign einräumen
Projekte, bei denen die Ziele nicht genau benannt sind, relevante Stakeholder:innen nicht
involviert wurden, Risiken nicht vorhergesehen wurden und kein gemeinsames Projektverständnis
erarbeitet wurde, laufen Gefahr, dass die Komplexität nicht richtig eingeschätzt wird und somit
angestrebte Teilziele nicht erreicht werden. Um nicht bereits bei der Planung und
Konzeptionierung der Projekte das Risiko zu erhöhen, zu einem späteren Zeitpunkt des Projektes
in Schwierigkeiten zu geraten, lassen wir uns zu Beginn Zeit, um ein gemeinsames
Projektverständnis zu erarbeiten.
Hierfür nutzen wir das Project Canvas des open-source Services Over the Fence.
Visuell und interaktiv erarbeiten wir mit Ihnen die relevanten Rahmenbedingungen des Projektes,
damit unter anderem gemeinsame Ziele definiert und Zuständigkeiten bekannt sind.
Projekte agil durchführen und die Kommunikation mit Key User:innen stärken
Eines unserer Ziele bei Proximate ist es, Geschäftsanwendungen zu entwerfen, die einen Mehrwert und Nutzen für die Anwender:innen generieren. Aufgrund dessen setzen wir in unseren Projekten auf agile Projektmethoden. Unsere Entwickler:innen arbeiten auf Augenhöhe mit den Fachexpert:innen, um so Prozesse und Bedürfnisse besser zu verstehen. In regelmäßigen Meetingformaten tauschen sich das Projektteam und Fachexpert:innen über Anforderungen und Projektfortschritt aus. Folgende Formate nutzen wir:
- Planning: Im Planning wird das Ziel für das nächste Deployment definiert und die dazugehörigen User Stories vom Entwicklungsteam und dem Produktverantwortlichen von Kundenseite in kleine Teilaufgaben heruntergebrochen. So entsteht die Architektur für die zu implementierende Funktionalität.
- Daily: Im Daily StandUp bespricht das Entwicklungsteam den Plan für den Tag und benennt Probleme, die gemeinsam gelöst werden müssen.
- Refinement: In den Refinment-Meetings treffen Enticklungsteam und Fachexpert:innen aufeinander und klären Fragen zu User Stories auf einer fachlichen Ebene. Dies schärft das Wissen über Geschäftsprozesse im Entwicklungsteam und bietet Fachexpert:innen die Möglichkeit ihre Bedürfnisse zu artikulieren.
- Review: Nach einer Veröffentlichung neuer Funktionen zeigt das Entwicklungsteam interessierten Mitarbeiter:innen das entwickelte Ergebnis und holt deren Feedback ein.
All diese Formate helfen auf effektive Art und Weise, dass relevante Informationen im Gespräch von Angesicht zu Angesicht übermittelt werden. Wir bei Proximate verfolgen die Prinzipien des agilen Manifests.
User- und test-getriebene Entwicklung zur Erreichung eines hohen Qualitätsstandards
Bei dem Design von Funktionalitäten nutzen wir das Wissen der Mitarbeiter:innen, um eine benutzer:innenfreundliche Lösung zu finden. Dort wo möglich, nutzen wir automatisierte Testmöglichkeiten, um das erwartete Ergebnis und das tatsächliche Ergebnis einer Funktion miteinander zu vergleichen. Für Low-Code-Komponenten setzen wir auf die verfügbaren Werkzeuge von Microsoft, wie z.B. Test Studio oder die generellen Empfehlungen von Microsoft. Für Komponenten, die wir mit Hilfe von Programmierung entwickeln, setzen wir auf Unit Tests, die in einer für Fachexpert:innen verständliche Sprache geschrieben sind. Das Format für diese Tests folgt stets folgendem Aufbau:
Angenommen folgende Vorbedingungen sind erfüllt
Wenn eine Aktion ausgelöst wird
Dann erwarte ich folgendes Ergebnis.
Mit dieser Art von Testdefinition schließen wir die Lücke zwischen technischen und nicht-technischen
Akteuren und Akteurinnen in der Kollaboration bei der Testspezifikationen. So stellen wir sicher,
dass die Tests auch wirklich den Bedarf der Anwender:innen testen.Versionskontrolle und automatische Deployments zur Sicherung der Entwicklungen und schnelleren Bereitstellung neuer Funktionen
Damit all unsere Änderungen nachverfolgbar und alle Versionen einsehbar sind, nutzen wir Azure DevOps und Github zur Quellcodeversionierung. Selbst die Low-Code-Komponenten von Microsoft Dynamics 365 und der Microsoft Power Platform können mit ihren Dateiformaten gesichert werden. Wir haben uns das Ziel gesetzt, dass keine Anpassung, die wir vornehmen, manuell von einem Menschen aus der Entwicklungsumgebung in die Test- oder Produktivumgebung gespielt werden muss. Hierfür nutzen wir Azure DevOps Builds und Pipelines oder alternativ GitHub Actions.
Low-Code da wo möglich, Code da wo nötig
Die Microsoft Power Platform sowie Microsoft Azure bieten eine Vielzahl von Low-Code-Werkzeugen, die es ermöglichen ohne Programmiererfahrung Anforderungen von Mitarbeiter:innen umzusetzen. Die Vorteile von Low-Code-Werkzeugen sind unter anderem verkürzte Entwicklungszeiten sowie die Reduktion der Abhängikeit zu Softwareentwicklern. Wir bei Proximate setzen auf eine Kombination von Low-Code und Code. Je nach Komplexität der Anforderungen entscheiden wir, ob wir eine Lösung mit Low-Code-Werkzeugen oder mit Code entwickeln. So können wir sicherstellen, dass wir die Anforderungen unserer Kunden bestmöglich umsetzen und gleichzeitig die Wartbarkeit und Skalierbarkeit der Lösung gewährleisten.
Monitoring der Power Platform – sehen was in Ihrer Umgebung passiert
Mit der Einführung der Microsoft Power Platform bieten Sie Ihren Mitarbeiter:innen die
Möglichkeit mit Low-Code-Werkzeugen eigenständige Automatisierungen für wiederkehrenden Aufgaben
zu erstellen. Dies ist ein wünschenswertes Ergebnis der Einführung und sollte sowohl mit
Trainings als auch mit den richtigen Monitoring-Werkzeugen begleitet werden.
Mithilfe des CoE-Starter-Kit können Governance- und Compliance-Prozesse etabliert werden und die Nutzung der Power Platform analysiert
werden. Verwaiste oder unregelmäßig genutzte Automatisierungen können so zum Beispiel gefunden werden,
um Ressourcen freizugeben. Außerdem ist es eine gute Praxis regelmäßig den Speicherverbrauch Ihrer
Lösungen zu überwachen, damit Ihre IT-Verantwortlichen rechtzeitig geeignete Strategien erarbeiten
können, um einem zu hohen Verbrauch entgegenzuwirken. Eine weitere Möglichkeit zum Monitoring Ihrer
Power Platform sind verwaltete Umgebungen, die Ihnen bei dem Bezug der entsprechenden Lizenzen, Out-Of-The-Box-Funktionen zur
Überwachung mitliefern.
Mit geeigneten Werkzeugen zur Überwachung der Power Platform in unter anderem den Bereichen der Speicherauslastung,
der Anzahl der täglichen API-Aufrufe und der Anzahl der aktiven Benutzer:innen, Nutzungstatistiken
zu Apps und Flows, können Sie frühzeitig auf Engpässe reagieren und Ihre Lösungen optimieren.