OutSystems ist auf dem Vormarsch und setzt sich auf dem Unternehmensmarkt durch. Heute gibt es viele große, multinationale Organisationen, die OutSystems nicht für die einfache Erstellung von Apps, sondern als strategische Kernplattform für geschäftskritische Anwendungen nutzen. Die Verantwortung für diese Low-Code-Plattformen liegt bei der IT-Zentrale, und die Plattform unterliegt den gleichen Sicherheits- und Informationsklassifizierungsprüfungen wie jede andere IT-Kernkomponente, z. B. ERP-Systeme – und obwohl diese Prüfungen Zeit in Anspruch nehmen, handelt es sich um einmalige Maßnahmen, die sich auszahlen, da die Plattform von allen Ebenen der internen Organisation akzeptiert wird, sobald alle internen Kontrollen bestanden sind.
Die Gründe, warum sich Unternehmen für Low-Code-Entwicklung entscheiden, können vielfältig sein. Es könnte sein, dass es einen massiven Rückstand bei der Entwicklung von Anwendungen gibt, deren Erstellung mit herkömmlicher Technologie Jahre dauern würde; einige Unternehmen haben schlechte Erfahrungen (Kosten, Qualität, Wartbarkeit) mit der Erstellung von Anwendungen mit klassischen Techniken wie C# oder Fiori gemacht; und andere Unternehmen möchten eine unabhängige Entwicklungsplattform haben, die sich in jedes System integrieren lässt, nicht nur in ihr führendes ERP-System.
Aber auch wenn alle Ebenen die Plattform akzeptiert haben, gibt es immer noch einige Fallstricke, die der Akzeptanz von Low-Code-Entwicklung innerhalb des Unternehmens schaden können. Um nur einige zu nennen:
- die bestehende IT-Organisation führt Projekte nach dem Wasserfallprinzip durch und ist gegenüber Veränderungen abwehrend
- Der größte Teil der Entwicklung wird in andere Länder/Kontinente verlagert, und die Leistung wird streng durch SLAs geregelt.
Waterfall
Ein großer Fehler ist es, den Aufwand zu unterschätzen, der nötig ist, um die internen Mitarbeiter in Agile und Scrum zu schulen. Sie können OutSystems-Projekte nicht nach dem Wasserfall-Prinzip durchführen, weil Sie dabei viele der Vorteile von Low-Code verlieren würden. Vergewissern Sie sich, dass die IT-Führungskräfte Agile verstehen und wissen, warum es eingesetzt werden muss, und überzeugen Sie sie davon, dass bei jeder Projektinitiierung und jeder Entwurfssitzung Zeit für die Erläuterung der agilen Arbeitsweise reserviert werden muss. Betonen Sie stets die Bedeutung des Product Owners und erklären Sie ausführlich, was diese Rolle mit sich bringt. Und stellen Sie sicher, dass Sie tatsächlich einen bekommen, der diese Rolle versteht!
Ein weiteres Problem entsteht, wenn Sie an die Grenzen zwischen Ihrem inzwischen gut ausgebildeten agilen Low-Code-Team und den bestehenden Wasserfall-Teams des Unternehmens stoßen, zum Beispiel wenn Sie eine Integration mit Oracle oder SAP vornehmen müssen. Oder wenn Sie ein Stück benutzerdefinierten Code für ein Altsystem entwickeln müssen. Stellen Sie sicher, dass Sie Ihre Stakeholder über die Auswirkungen informieren. Das Warten auf den internen ERP-Freigabekalender kann viel Zeit kosten. Während Sie eine neue Funktion auf Ihrer ERP-Entwicklungsinstanz entwickeln und diese neue Funktion dann in Ihrer OutSytems-App in etwa einer Stunde einbauen können, kann es Monate dauern, bis diese ERP-Funktion schließlich in die ERP-Produktionsumgebung transportiert wird. Wenn Sie in Ihrem Projekt eine solche Entwicklung benötigen, sollten Sie sich zu Beginn des Projekts immer mit Ihren ERP-Partnern abstimmen.
Offshore
Wenn Ihr Unternehmen daran gewöhnt ist, Entwicklungsarbeiten in ein Niedriglohnland zu verlagern, dann wird das Unternehmen den natürlichen Drang verspüren, zu prüfen, ob die Entwicklung von OutSystems ebenfalls ins Ausland verlagert werden kann.
Dies ist ein hohes Risiko für die Akzeptanz der Plattform. Obwohl jeder, der über ein wenig IT-Talent verfügt, schnell lernen kann, wie man eine OutSystems-Anwendung erstellt, ist die Entwicklung von Unternehmensanwendungen eine ganz andere Sache. Diese Anwendungen müssen sicher, wartbar, datenschutzsensibel, SSO-fähig und möglicherweise verschlüsselt sein, und die Autorisierung und Benutzerzuweisung wird möglicherweise durch ein internes Identitätsmanagementsystem gesteuert. Darüber hinaus muss die Anwendung möglicherweise mit lokalen und Cloud-Lösungen verbunden werden, was verschiedene Arten von Integrationen erfordert, die in den Händen vieler verschiedener Teams liegen. Diese Integrationen müssen alle gut durchdacht und entkoppelt sein, um spaghetti-artige Low-Code-Anwendungen zu vermeiden, die möglicherweise anfällig für Angriffe sind.
Jedes OutSystems-Team, das an komplexen Anwendungen mit mehreren Integrationspunkten und mehreren Personas arbeitet, muss über leitende Entwicklungskapazitäten im Team verfügen. Es ist nahezu unmöglich, eine Design-Sitzung durchzuführen und die User Stories in technische Stories zu übersetzen, wenn man nicht über mehrere Jahre Erfahrung verfügt. Und es ist unmöglich, die Lösung technisch korrekt mit der richtigen Architektur zu entwerfen, wenn diese Erfahrung fehlt.
Darüber hinaus ist eine direkte und offene Kommunikation mit den Geschäftsanwendern unerlässlich für die Bereitstellung von Anwendungen, die das Unternehmen tatsächlich benötigt und annehmen wird. Ein paar tausend Kilometer zwischen dem Entwicklungsteam und dem Unternehmen lassen sich zwar überwinden, aber die Überwindung erheblicher kultureller Unterschiede könnte eine härtere Nuss sein.
Meine Erfahrung mit Billig-Offshore-Firmen ist, dass sie gut darin sind, wasserfallartige Arbeit zu leisten, die umfassend spezifiziert wurde. Sie sind nicht so gut im agilen Arbeiten, wo sich das Produkt in jedem Sprint ändern kann und eine enge proaktive Zusammenarbeit erforderlich ist. Außerdem neigen Offshore-Firmen dazu, Mitarbeiter einzustellen, die nicht über die erforderliche Erfahrung verfügen, aber im Laufe der Arbeit lernen werden. Im Fall von OutSystems ist das ein Rezept für eine Katastrophe: Low-Code mit niedrigen Löhnen führt unweigerlich zu schlechter Qualität.
High quality
Sie erhalten qualitativ hochwertige OutSystems-Anwendungen in einer Unternehmensumgebung, wenn Sie Entwicklungsteams haben, die eng mit dem Unternehmen zusammenarbeiten. Dies kann auch funktionieren, wenn Ihre Geschäftsteams über den ganzen Globus verstreut sind. Führen Sie die Entwicklungssitzung mit den wichtigsten Beteiligten vor Ort durch, so dass Sie ein Niveau der Zusammenarbeit erreichen, das Sie mit Videokonferenzen niemals erreichen können. Gemeinsames Essen und Trinken, der Austausch von Fotos Ihrer Katze oder Ihrer Familie festigt die Beziehung, die Ihnen helfen wird, wenn Sie gemeinsam an Hindernissen arbeiten müssen. Beziehen Sie einen Lösungsarchitekten ein, um Ihren Code richtig zu strukturieren. Am wichtigsten ist jedoch, dass Sie das richtige Fachwissen und die richtige Erfahrung in Ihrem Team haben, um die hohen Erwartungen des Unternehmens zu erfüllen.
Du muss angemeldet sein, um einen Kommentar zu veröffentlichen.