sqs.com Case Study – banken & Finanzdienstleister Aufbau einer Single-Dealer-Plattform Einsatz der agilen Methodik in einer hochgradig regulierten Finanzdienstleistungsumgebung Hintergrund Eine führende globale Investmentbank bietet eine Auswahl von Wertpapierprodukten für Kunden in den Regionen USA, EMEA (Europa, Nahost und Afrika) und APAC (Asien und Pazifik) an. Die Bank operiert in einem Umfeld, das stark durch Regulierung geprägt ist, und stellte ihre Wertpapierprodukte bislang über einige eigenständige Desktop- und Internetanwendungen bereit. Die vorhandenen Anwendungen verfügten über umfangreiche Funktionen und hatten jeweils eine starke Marktposition. Sie bauten jedoch auf unterschiedlichen Technologieplattformen auf und waren von verschiedenen Teams entwickelt worden. Die Integrationsoptionen waren begrenzt und der Gesamteindruck uneinheitlich.Oft mussten Kunden für den Zugang zu den einzelnen Anwendungen unterschiedliche Benutzernamen und Kennwörter verwenden. Die alten, separaten Technologieplattformen erschwerten die Erfüllung moderner Kundenanforderungen wie mobile Nutzung, Social Media und Suchfunktionen. Die resultierende User Experience war also alles andere als optimal. Außerdem waren erhebliche kontinuierliche Investitionen erforderlich. Etliche Mitbewerber in der Branche hatten ihr Angebot bereits auf einer einzigen Plattform bzw. unter einer einzigen Marke konsolidiert. Die Bank lief Gefahr, im Wettbewerb zurückzufallen. Daher wurde die strategische Entscheidung getroffen, eine einheitliche, bestandsübergreifende Single-Dealer-Plattform zu schaffen, statt die alten Anwendungen weiterzuführen. Man wollte die Mitbewerber überholen, nicht nur ihnen nacheifern. Sämtliche Budgets sollten in eine einzige Plattform fließen, mit dem Ziel, alle alten Anwendungen in kurzer Zeit zu ersetzen. Die neue Plattform sollte von Anfang an so entwickelt werden, dass sie auf allen Geräten (Desktop, Internet, Tablet und Handy) einheitliche Funktionalität unter Berücksichtigung der jeweiligen Geräte-Features bietet. Es sollten für sämtliche Wertpapierprodukte Recherche und Marktpreise bereitgestellt sowie alle Phasen vor, während und nach dem Handel abgedeckt werden. Zudem sollten moderne Tools für die Zusammenarbeit integriert werden, darunter Social Media, Chat, Konferenzen, Texterstellung und -veröffentlichung sowie leistungsstarke Suchfunktionen. Während die neue Plattform erstellt wurde, erforderten Marktentwicklung und gesetzliche Vorgaben weiterhin kleinere Updates der alten Anwendungen. Daher war die Markteinführungszeit ein entscheidender Faktor, um neue Funktionen nicht zweimal implementieren zu müssen. Die beträchtlichen Investitionen und die Beteiligung wichtiger Interessenvertreter der Investmentbank machten Transparenz sowie das schnelle und regelmäßige Nachweisen von Fortschritten erforderlich. Daraus resultierte die Entscheidung, die Plattform intern zu entwickeln und dabei eine agile Entwicklungsmethodik (Scrum) einzusetzen. Da die Bank nur begrenzte Erfahrung mit agilen Methoden hatte, wurde für dieses Projekt ein bereichsübergreifendes Team aus sorgfältig ausgewählten, hochqualifizierten Mitarbeitern und Beratern zusammengestellt. 24 Stunden 2 Wochen Product backlog Herausforderung Sprint backlog Sprint Arbeitserhöhung der Software Abbildung 1: Agile Bereitstellungsmethodik Die größte Herausforderung bei diesem Projekt war die begrenzte Erfahrung der internen Mitarbeiter mit agilen Methoden für umfangreiche Programme dieser Art. Daher wurden externe Berater hinzugezogen, um bei der Definition von Organisationsstruktur, Strategie und Governance, Schulung, Informationsvermittlung und Delivery Pods zu helfen. Zudem mussten die Rollen und Verantwortlichkeiten in dieser neuen agilen Struktur festgelegt werden, insbesondere hinsichtlich Risiko, Compliance, Sicherheit, Architektur und anderen Unternehmensfunktionen. Jedes Scrum-Team enthielt folgende Rollen: Eine weitere Herausforderung lag darin, in einem sehr knapp kalkulierten Zeitrahmen ein Minimalprodukt (Minimal Viable Product, MVP) mit großem Funktionsumfang zu erstellen. Die neue Plattform sollte mit ausreichend Funktionen ausgestattet werden, um die alten Systeme deaktivieren und mit der Migration interner Benutzer und externer Kunden beginnen zu können. • 1 Scrum Master – aus dem Qualitätssicherungs- oder Entwicklungsbereich des Projekts ausgewählt, verantwortlich für die Beseitigung von Sprint-Hindernissen und die korrekte Implementierung der Agile-Methodik in den Teams Abhängig von den erforderlichen Funktionen wurden flexibel 10 bis 20 bereichsübergreifende Scrum-Teams eingesetzt, die in 2-Wochen-Sprints arbeiteten. Die Teams wurden ständig neu konfiguriert, um immer die Ressourcen abzudecken, die für die Feature Storys im Sprint Backlog erforderlich waren. • 5 Entwickler – Entwickler für Benutzeroberfläche und serverseitige Funktionen, verantwortlich für Codierung und Unit Tests • 2 Qualitätssicherer/Tester – verantwortlich für Akzeptanztests (in der Regel 1 Tester für die Benutzeroberfläche und 1 Tester für Backend-Tests), zudem verantwortlich für explorative Tests Aufgrund der alten Struktur hatte die Bank bisher in der Regel einmal pro Quartal eine große Upgrade-Version für den produktiven Einsatz implementiert. Als das Projekt vollständig angelaufen war, wurden jede Woche bis zu 60 Releases für den produktiven Einsatz bereitgestellt. Jede davon brachte eine kleine inkrementelle Änderung oder Fehlerbehebung. Größere Funktionen oder Infrastruktur-Upgrades wurden einmal im Monat implementiert, da diese oft Systemausfallzeiten erforderten. Woche 1 Release 1–60 Q1 – Release 1 Q2 – Release 2 Q3 – Release 3 Q4 – Release 4 Neue Systementwicklung 60 Releases pro Woche Für das Projekt wurden Scrum-Schulungen und Scrum-Master eingeführt. Außerdem wurden Bereitstellungsteams in einer Nabe-Speichen-Struktur aufgebaut. Die gemeinsamen bzw. zentralen Funktionen wurden auf der Plattformebene (Nabe) entwickelt. Damit waren etwa 75 % der gesamten Funktionen abgedeckt. Jedes Speichenteam konnte dann diese zentralen Funktionen für sein jeweiliges Produkt anpassen (z. B. Devisen oder Stammaktien). • 2 UX (User Experience) Engineers – Informationsarchitekt und Grafikdesigner, verantwortlich für das Design der User Experience Alte Systementwicklung 1 Jahr / 4 Releases Lösung • 1 Produktmanager – Hauptansprechpartner für die Business User, wählt und priorisiert die User Storys für die Sprints Woche 2 Release 60–120 ... ... ... Woche 156 Release 9300–9360 Abbildung 2: Skalierung der Implementierungen für den produktiven Einsatz Alle Teams arbeiteten zunächst im gleichen Gebäude, doch mit zunehmendem Fortschritt des Projekts wurde das Team weltweit ausgebaut. Der agile Prozess wurde mit der Zeit angepasst, um den global verteilten Teams gerecht zu werden. Spezielle Teams waren dafür verantwortlich, die Implementierung der Releases in Entwicklungs- und Testumgebungen zu verwalten. Es gab 15 Entwicklungsumgebungen für Codierung und Unit Tests sowie eine Qualitätssicherungsumgebung. Dort erfolgte die Qualitätssicherung für die Funktionen, die von den einzelnen Scrum-Teams bereitgestellt wurden. Entwicklungsumgebung 1 QS Integrierte Umgebung Tool Vewendungszweck Version One Übergreifendes AgileProjektmanagement HP Quality Centre Testmanagement TeamCity Kontinuierliche Integration GitHub Versionskontrollsystem RIATest, weitere Open-SourceTools für die Testautomation und ein eigens entwickeltes Automationsframework Testautomation Entwicklungsumgebung 2 VersionOne Entwicklungsumgebung 3 Entwicklungsumgebung 4 PMO UX DEV QA Support HP Quality Centre Automation Framework RIA Test Team City GitHub Entwicklungsumgebung ... Entwicklungsumgebung 15 Abbildung 3: Umgebungsübersicht Abbildung 4: Integrierte Toolkette Das Projekt hatte ein eigenes Team für Entwurf und Durchführung von Automationstests. Ein weiteres separates Team führte nicht-funktionale Tests, z. B. hinsichtlich Performance und Sicherheit, durch. Die Tests für das Projekt wurden zu 80 bis 90 % durch Automation abgedeckt. Dies erhöhte die Qualität des bereitgestellten Codes erheblich und reduzierte den manuellen Testaufwand. Eine Untergruppe der Automationstests wurde auch im produktiven Einsatz durchgeführt, in Form von automatisierten Health Checks, die zu jeder vollen Stunde durchgeführt wurden. Dadurch wurde der ROI durch die Automation noch weiter erhöht. Ein PMO (Project Management Office) überwachte das Projekt durchgängig. Dieses Team war dafür verantwortlich, die Fortschritte im gesamten, äußerst umfangreichen Projekt an den vereinbarten Zielen zu messen und Transparenz für die unterschiedlichen Interessenvertreter zu gewährleisten. Das PMO-Team arbeitete zudem mit der Finanzabteilung zusammen, um die Ausgaben im Budgetrahmen zu halten. Zu jeder Story wurden im ALM-Tool VersionOne Akzeptanztests hinzugefügt. Diese wurden dann zum Regressionstest in das zentrale Testmanagement-Tool, HP Quality Centre, importiert. Sämtliche Tests wurden über HP QC automatisiert und geplant. So wurden alle Testergebnisse und Testdaten zentral verfolgt und standen zu Prüfzwecken zur Verfügung. In der gesamten Organisation wurde eine Reihe von maßgeschneiderten und spezialisierten Tools implementiert. Diese wurden soweit wie möglich miteinander verkettet, um eine durchgängige Lösung bereitzustellen. Das Haupt-Tool für das übergreifende agile Projektmanagement war VersionOne, unterstützt durch HP Quality Centre für das Testmanagement. Für die kontinuierliche Integration wurde TeamCity angewendet, als verteiltes Versionskontrollsystem wurde GitHub eingesetzt. Als Haupt-Tool für die Testautomation diente RIATest. Dieses Tool wurde durch andere Open-Source-Tools für die Testautomation und ein eigens entwickeltes Automationsrahmenwerk unterstützt. Vorteile für den Kunden Der Erfolg des Projekts wurde in der Finanzbranche vielfach bestätigt. Die Single-Dealer-Plattform gewann mehrere Auszeichnungen, darunter „One To Watch“, „Best Platform“ und „Best Navigation“. Die neue Plattform bringt der Bank und ihren Kunden zahlreiche Vorteile. Jeden Tag werden dort Transaktionen im Wert von mehreren Milliarden Euro abgewickelt. Die Bank profitiert von einer beträchtlichen Deduplizierung ihres Aufwands, da zahlreiche wiederverwendbare Assets, Services und Prozesse im gesamten Unternehmen eingeführt wurden. Den Kunden kommt eine individuell anpassbaren User Experience zugute. Sie können Transaktionen für alle Anlagekategorien nahtlos abwickeln und mit einem Mausklick Zugang zu hochqualifizierten Experten für Recherche, Verkäufe und Handel erhalten. SQS-Berater wirkten in allen Phasen des Projekts entscheidend mit, von den Anfängen bis zum Aufbau der Infrastruktur, der Inbetriebnahme und der Migration der Kunden zur neuen Plattform. Dies erforderte lange Arbeitstage und Wochenendarbeit, um das Projekt rechtzeitig und mit minimalen Beeinträchtigungen für die Kunden abschließen zu können. SQS-Berater brachten ihr einzigartiges Know-how ein, um die Qualitätssicherungs-/Teststrategie und vor allem auch die Governance in dieser komplexen Umgebung zu definieren. Sie waren haupsächlich verantwortlich für: • Aufbau eines hochqualifizierten QS-/Testteams mit den erforderlichen Erfahrungen im Bereich komplexer Finanzdienstleistungen in kurzer Zeit Darüber hinaus war das Qualitätssicherungsteam während der Laufzeit des Projekts auch an folgenden Aspekten beteiligt: User-Design-Planung, Story-Planung, Versionsplanung, Game/ Sprint -Planung, Ergebnisberichte, Freigaben, Go-/No-GoEntscheidungen, rückblickende Besprechungen usw. SQS-Berater halfen bei der fristgerechten Umzusetzung des Projekts; die Methodik wurde in der gesamten Bank eingeführt. • Management von QS/Tests in jedem Scrum und im Scrum of Scrums • Integration von technischen Testern in jedes Scrum-Team von Anfang bis Ende • Bereitstellung der plattformweiten Teststrategie • Governance-Bereitstellung für QS mit mehreren Anbietern • Bereitstellung der mobilen QS-Strategie für das Unternehmen • Implementierung und Fertigstellung des Automations-Frameworks für Adobe Flex, HTML5 und mobile Produkte • Erstellung der Teststrategie für Performance, Sicherheit und Belastbarkeit aller eingeführten neuen Technologien und Aufbau der Infrastruktur in den Regionen USA, EMEA und APAC • Identifizierung und Einholen der Freigabe der Akzeptanzkriterien für die User Storys • Planung, Design, Management und Umsetzung der Tests von User Experience, Kompatibilität, Sicherheit, Automation und Performance sowie von manuellen Tests von Benutzeroberfläche und Backend und explorativen Tests für das Projekt • Schaffung von Transparenz für alle Beteiligten zum Status und zur Gesamtqualität der Plattform und ihrer Einsatzbereitschaft Governance der Qualitätssicherung Plattformweite Teststrategie Mobile Teststrategie für das Unternehmen Teststrategie für Performance, Sicherheit und Belastbarkeit Testautomations-Framework Release Governance für mehrere Anbieter Bereitstellung von aktuellen Informationen zu Status, Gesamtqualität und Einsatzbereitschaft Fazit Die Ergebnisse dieses Projekts erzielten erhebliche Vorteile, die das Geschäft des Kunden verbesserten. Zu den wichtigsten Vorteilen gehörten: • Die Abschaffung mehrerer alter IT-Systeme ermöglichte große Kosteneinsparungen und eine Reduzierung des langfristigen Supportaufwands für die Produktion, da mehrere separate Anwendungen durch ein integriertes System ersetzt wurden. • Die Einführung des agilen Frameworks im gesamten Unternehmen erhöhte die Flexibilität und Agilität der Teams und führten zur schnelleren Umsetzung der sich ständig wandelnden Geschäftsanforderungen. Dies ermöglichte eine schnelle Markteinführungszeit für das Unternehmen. • Automatisierte Regressionstests reduzierten die Wartungskosten, beschleunigten die Produktbereitstellung und verbesserten die Produktqualität. Das Projekt wurde planmäßig abgeschlossen und führte in dieser Zeit zudem zu einer vollständigen Umgestaltung der Prozesse der IT-Abteilung und einem Mentalitätswandel in den Geschäftseinheiten der Organisation. So konnte das Unternehmen seine Wettbewerbsfähigkeit in einem durch ständigen Wandel geprägten Markt stärken. Die preisgekrönte Plattform setzt ihre Erfolgsgeschichte fort und wird laufend weiterentwickelt, um ihren Vorsprung gegenüber Mitbewerbern zu wahren. Wir sind gespannt, was die Zukunft bringt … Integration von technischen Testern in jedes Scrum-Team Akzeptanzkriterien für die User Storys Tests für User Experience, Kompatibilität, Sicherheit, Automation, Performance, manuelle Tests von Benutzeroberfläche und Backend, explorative Tests Governance Strategie Bereitstellung Kontakt Wenn Sie sich für SQS und unsere Agile Services interessieren, mailen Sie an [email protected] oder besuchen Sie unsere Website sqs.com Abbildung 5: Bereitstellungs-Framework für die Qualitätssicherung SQS – der weltweit führende Spezialist für Software-Qualität
© Copyright 2024 ExpyDoc