Kunde
Ein Startup aus Luxemburg wünschte sich eine Software für die Zusammenarbeit an Dokumenten im Zusammenhang mit Anleihehandelsgeschäften entwickeln lassen.
Herausforderungen
Die Emission von Anleihen ist ein komplexer Prozess. Es umfasst mehrere Parteien, die Dokumente austauschen, Due Diligence durchführen, die Einhaltung gesetzlicher Vorschriften sicherstellen und mehrere Genehmigungsebenen durchlaufen müssen. Manchmal müssen die Parteien Dutzende von Verträgen vorbereiten, die sich nur in wenigen Klauseln unterscheiden. All das kostet viel Zeit und Mühe. Ein Startup aus Luxemburg machte sich daran, den Prozess zu verbessern. Sie hatten die Idee für eine Anwendung, die die Vertragserstellung halbautomatisiert und es mehreren Parteien ermöglicht, beim Abschluss zusammenzuarbeiten. Und die Idee war so verlockend, dass sie Investoren von den Top 10 der weltweiten Investmentbanken an Bord holte. Das Startup stellte zunächst einen freiberuflichen Entwickler ein, um die Anwendung zu erstellen. Aber der Entwickler erkannte bald, dass das Projekt zu schwer war, und schlug Elinext als Ersatz vor. Wir stellten schnell das richtige Team zusammen und das Startup entschied sich für uns.
Prozess
Das Team, das wir zusammenstellten, war ziemlich groß. Die Größe änderte sich im Laufe des Projekts und zählte im Durchschnitt 22 Personen. Dazu gehörten Middle und Senior Entwickler, die auf JavaScript, C++ und PHP spezialisiert sind, ein Team für Qualitätssicherung, ein DevOps-Ingenieur, ein Projektmanager und ein Business-Analyst.
Wir näherten uns der Herausforderung mit agilen, Scrum-orientierten Praktiken. Und bevor wir jeden Sprint planten, haben wir mit unserem Kunden die Anforderungen geklärt, um der Gesamtkomplexität der Software gerecht zu werden.
Anforderungen und Prioritäten änderten sich schnell und wir mussten im Projekt auf Kanban zurückgreifen. Dies half uns, den Fokus von der Neuerstellung der Architektur auf die Verbesserung des Produkts nach dem Feedback der Stakeholder zu verlagern. Gleichzeitig haben wir die Plattform schrittweise weiter umgestaltet. Für die weitere Entwicklung neuer Funktionen sind wir mit zuvor implementierten Kanban-Verbesserungen wieder auf die Scrum-Methodik umgestiegen.
Umgestaltung der Plattform
Der vorherige Entwickler hatte C++ verwendet, um einen Prototyp zusammenzustellen, den wir in eine Betriebsplattform verwandeln sollten. Aber nachdem wir den Prototyp durchgesehen hatten, stellten wir fest, dass die Plattform nicht aktualisiert/erweitert werden konnte.
Während des Refactorings mussten wir mit einer bestimmten Architektur umgehen. Es stellte Hunderte von internen Abhängigkeiten sowie Integrationen mit Anwendungen von Drittanbietern dar.
Wir haben uns der Herausforderung gestellt, indem wir unseren Ansatz und unsere Teamzusammensetzung angepasst haben. Und dann mussten wir all diese internen und externen Abhängigkeiten testen.
Ersetzen eines abonnementbasierten Drittanbieterdienstes
Ursprünglich hatte unser Kunde eine Integration mit dem Drittanbieter-Tool Contract Express (CI) verwendet, um Dokumente aus den im System eingegebenen Informationen zu generieren. Und die Nutzung dieses Dienstes hatte das Startup Geld gekostet. Wir haben unseren eigenen internen Parser entwickelt, der die gleiche Funktion wie CI für die Bearbeitung von Fragebögen und Dokumenten hat, was auch den Ablauf der Dokumentenerstellung optimiert und erweitert. Dadurch wurde die Dokumentenerstellung benutzerfreundlicher und bequemer.
Testen
Das Hauptmerkmal der Plattform sind vom Benutzer ausgefüllte Fragebögen. Fehler traten typischerweise auf, während das System Benutzereingaben verarbeitete und Fragebögen in Dokumente umwandelte.
Die Verarbeitung hängt von zwei Dingen ab: der voreingestellten Vorlage für einen bestimmten Fragebogen und der Software-Geschäftslogik. Ein kleiner Fehler in beiden konnte Probleme verursachen, also mussten beide getestet werden. Und obendrein gibt es Millionen Möglichkeiten, wie Nutzer die Fragebögen ausfüllen können.
Wie kann man also ein so komplexes System testen und Probleme aufdecken? Über automatisierte Tests. Wir haben Skripte erstellt, die eine Vielzahl zufällig ausgefüllter Fragebögen generierten. Aber wir haben die Qualitätssicherung nicht auf die Automatisierung beschränkt – unsere QA-Abteilung hat sie mit manuellen Prüfungen begleitet.
Produkt
Die von uns erstellte Plattform besteht aus fünf Anwendungen, die zusammenarbeiten. Nennen wir sie Vorlagen, Verträge, Dokumente, Zusammenarbeit und Verwaltung.
Mit der Vorlagenanwendung können Benutzer Vorlagen und Fragebögen verwalten, während Verträge und Dokumente Fragebögen in Dokumente umwandeln. Die Collaborations-Anwendung ermöglicht es mehreren Benutzern, gemeinsam an Dokumenten zu arbeiten. Schließlich richten Administratoren in der Verwaltung Benutzerrollen und -Berechtigungen ein.
Lassen Sie uns eine Benutzerreise über die Plattform unternehmen.
Hochladen von Vorlagen
Alles beginnt mit einer Vorlage. Eine Vorlage ist eine DOCX-Datei, die Formeln enthält und vom Systemadministrator vorbereitet wird.
Der Systemadministrator lädt die Vorlage für das System hoch, um sie in einen Fragebogen umzuwandeln. Vor dem Hochladen sollte man angeben, für welche Partei dieses Dokument bestimmt ist: ein Emittent, Händler oder interner Benutzer.
Erstellen von Fragebögen und Teilvorlagen
Sobald die Vorlage hochgeladen wurde, wechselt der Administrator zu einem anderen Tab. Dort müssen sie ein Unternehmen (Händler oder Emittent) und eine Vorlage angeben, die bei der Erstellung von Dokumenten für diese Partei verwendet werden sollen. Alle Optionen sind in entsprechenden Dropdown-Menüs verfügbar.
Darüber hinaus kann der Administrator eine Untervorlage hinzufügen – eine optionale, aber wirklich nützliche Funktion. Vorlagenfelder sind oft mit sich wiederholenden Informationen gefüllt, und um zu vermeiden, dass dieselben Informationen erneut eingegeben werden, kann ein Vorlagen-Sublayer wiederverwendet werden.
Nachdem ein Fragebogen aus der Vorlage erstellt wurde, sieht der Benutzer mehrere Felder unterschiedlicher Art, z. B. Dropdowns oder Optionsfelder. Sie sind benutzerfreundlich in mehreren Registerkarten organisiert (z. B. Finanzinformationen, Daten und Swap-Details).
Darüber hinaus werden neue Unterfelder aufgedeckt. Wenn beispielsweise eine Ratingagentur angegeben ist, sieht der Benutzer ein Dropdown-Menü mit Ratings zur Auswahl für einen bestimmten Emittenten.
Sobald alle Felder ausgefüllt sind, kann der Benutzer seine Arbeit entweder als Fragebogen oder als Untervorlage für weitere Verwendungen speichern. Die Fragebogenfelder werden in der Anwendung „Verträge“ gespeichert. Schließlich kann der Fragebogen später zur Zusammenarbeit eingereicht werden.
Weitere Maßnahmen zu Fragebögen
Der Benutzer kann eingereichte Fragebögen im jeweiligen Tab verfolgen und bearbeiten. Dort können sie verschiedene Versionen der Einreichung überprüfen, die daran vorgenommenen Änderungen verfolgen und sie in die nächsten Phasen schieben.
Zwei dieser Schritte sind die Vergabe einer ID nach europäischen Standards und das Senden einer Anfrage an das Investmentnetzwerk Liquidnet. Und diese Aktionen werden durch die Integration mit Diensten von Drittanbietern durchgeführt. Der dritte ist die Fertigstellung des Dokuments.
Zusätzlich kann der Fragebogen als JSON-Datei zur Wiederverwendung im System heruntergeladen werden. Und wenn der Benutzer die Informationen in andere Anwendungen integrieren muss, kann er sie in CSV oder anderen gängigen Formaten herunterladen.
Last but not least können Benutzer mithilfe der Kommentarfunktion der Collaborations-App an Dokumenten zusammenarbeiten. Wenn jemand einen Vorschlag zu einem Dokument hinterlassen hat, sieht ein anderer Benutzer eine Benachrichtigung in der entsprechenden Spalte. Ein Klick darauf bringt den Benutzer zum Kommentarbereich, wo er eine vorgeschlagene Änderung und einen begleitenden Kommentar sieht.
Der Benutzer kann den Vorschlag annehmen, ablehnen oder eine Alternative vorschlagen.
Collaborations
Nachdem der Fragebogen fertiggestellt und dessen Ausführungsversion erstellt wurde, erhält die Einreichung auf der Liste einen Transaktionstitel. Durch Klicken auf diesen Titel wird der Benutzer zur Collaboration-Anwendung weitergeleitet.
In dieser Anwendung sieht der Benutzer verschiedene automatisch erstellte Ordner, die nach Unternehmen wie Händlern, Investoren und Emittenten benannt sind. Jeder Ordner enthält verwandte Dokumente, und derjenige, der das gerade erstellte neue Dokument enthält, wird mit einer anderen Farbe hervorgehoben.
Jetzt kann der Benutzer das von ihm erstellte Dokument anzeigen und andere zur Zusammenarbeit einladen, indem er es im Kommentarbereich diskutiert. Mit jedem neuen Kommentar wird eine neue Version des Dokuments erstellt.
Manchmal muss der Benutzer möglicherweise Dokumente mit Personen teilen, die nicht im System registriert sind. Dazu können sie in Collaborations einen öffentlichen Ordner erstellen, der es jedem mit dem Link ermöglicht, an Dokumenten mitzuarbeiten.
Ergebnisse
Wir haben in fast drei Jahren ein stabiles, leistungsstarkes Produkt mit komplexer Architektur gebaut. Als die Investitionen flossen, spürte unser Kunde, dass sein Selbstvertrauen wuchs, und baute schließlich sein eigenes internes Team auf.
Heute ist es ein erfolgreiches Unternehmen mit einer beträchtlichen Belegschaft, die über Luxemburg, das Vereinigte Königreich, Portugal und Frankreich verteilt ist.