Finanzrisikomanagement Software
Finanzrisikomanagement Software
Information
Standort:
USA
Branche:
Finanzsektor
Plattform:
Web
Arbeitsmodell:
Zeit und Material
Projektdauer:
App 1: 18 Monate, App 2: über 10 Jahre
Team-Mitglieder:
1 Team Leader, 2 Senior Entwickler, 2 QA-Experte, 5–7 Junior und Mid-level Entwickler
ID:
680
Verwendete Technologien
GWT/GXT
hibernate
Apache Tomcat
Jasper Reports
MongoDB
Angular JS
Java Script
PostgreSQL
REST web services
spring

Der Kunde

Ein im Silicon Valley ansässiges Business-Analytics-Unternehmen beauftragte Elinext mit der Entwicklung einer Software zur Bewertung finanzieller Risiken.

Herausforderungen

Diese Geschichte begann im Jahr 2011, als sich ein Analyseunternehmen mit Sitz in San Jose an Elinext wandte. Die Firmenkunden dieses Unternehmens, die in mehreren Märkten tätig sind, haben ihre Produkte in verschiedenen Währungen verkauft, was die Planung und Kalkulation von Risiken zu einer dynamischen Herausforderung machte.

Das Unternehmen half seinen Kunden bei der Lösung dieser Herausforderung durch eine Webanwendung, die mit Visual Basic erstellt wurde (weiter App 1 genannt). Die Benutzer würden sich für die Plattform anmelden und die Analysten des Unternehmens würden verschiedene währungsbezogene Berechnungen für sie durchführen.

Die ganze Arbeit manuell zu erledigen war nicht effizient, und das Tech-Stack-Update war schon lange überfällig und die Applikation muss neu erstellt werden. Und da sie nur genügend interne Programmierer für die Fehlerbeseitigung hatten, suchten sie nach weiterer Hilfe.

Schließlich stieß das Unternehmen über eine Online-Anzeige auf Elinext. Zufrieden mit unserem Know-How und unseren Preisen, beauftragte man uns mit der Aufgabe – und eine Reise von mehr als einem Jahrzehnt begann.

Der Entwicklungsprozess

Wir stellen ein engagiertes Team aus Entwicklern und Testern zusammen, das von einem leitenden Entwickler geleitet wird. Unterwegs führte der Kunde einige Tests durch, verwaltete Server und war aktiv an der Release-Planung beteiligt. Jede Version umfasste 10–20 Aufgaben, die wir im ersten Monat durchgeführt und über Jira nachverfolgt haben.

Im Jahr 2014, nachdem wir den größten Teil von App 1 neu erstellt hatten, forderte der Kunde das Erstellen eines zusätzlichen Moduls des Systems an. Und das war eine Anwendung zur Berechnung der tatsächlichen Kosten von Krediten und Vermögenswerten im Laufe der Zeit, wobei auf Kredittilgung, Instandhaltung und Zinssatzdynamik zurückgegriffen wurde.

Neuerstellung der App 1

Anfangs war es eine kommunikative Herausforderung. Der Kunde hatte keine technisch versierten Business-Analysten, um die anstehende Aufgabe zu beschreiben. Wir haben die umfangreiche Projektdokumentation studiert und in etwas mehr als einem Jahr die Anwendung mit dem Google Web Toolkit (GWT) neu geschrieben. Nach drei weiteren Testmonaten ging die Anwendung live.

Aber die Entwicklung war noch nicht zu Ende. Später setzten wir die Zusammenarbeit fort, indem wir die Anwendung unterstützten und neue Funktionen entwickelten.

Erstellen der App 2 von Grund auf

Als wir App 2 in Angriff genommen haben, sprachen wir mit dem Kunden bereits dieselbe Sprache. Insgesamt spiegelte der Prozess den des Erstellens von App 1 wider und verlief gut, bis wir auf ein Problem mit der Computerplattform MATLAB stießen.

Wir haben App 2 in MATLAB integriert, um komplexe Kostenberechnungen über mehrere Parameter hinweg zu ermöglichen. Aber es würde nicht mehrere Threads gleichzeitig verarbeiten. Wenn also ein Benutzer-Client einen Berechnungsprozess gestartet hätte, könnten andere dies nicht tun. Unser Team löste das Problem, indem es ein separates Ausführungsmodul erstellte und es so konfigurierte, dass es bei Bedarf einen Pool von Java-Prozessen aufruft. Qualitätssicherung Wir haben fast 100% Testabdeckung des Systems erreicht. Dazu nutzte unser Team etwa 500 automatisierte Tests, die nachts auf dem TeamCity-Server ausgeführt wurden, und etwa 650 Unit-Tests.

Produkt

Das Produkt besteht aus zwei Applikationen: App 1 (zur Kalkulation von mit mehreren Währungen verbundenen Risiken) und App 2 (zur Bestimmung der tatsächlichen Kosten von Krediten und Vermögenswerten).

Die beiden Applikationen haben gemeinsame Funktionen: Sie übernehmen Daten aus einer anderen Anwendung, App 3 (früher Teil von App 2). App 3 verbindet sich mit einem Anbieter von Marktdaten wie Kreditzinsen oder Wechselkursen und überträgt sie von dort an die Apps 1 und 2. Und diese Daten werden von den beiden Apps weiter für Berechnungen und Prognosen verwendet.

Werfen wir einen Blick auf die wichtigsten Module der Software.

App 1: Unternehmens- und Entitätseinstellungen

Der Bildschirm „Firmeneinrichtung“ ermöglicht es Systemoperatoren, Benutzerfirmen einzubinden und diese Details hinzuzufügen:
  • Allgemeine Geschäftsinformationen
  • Zugelassene finanzielle Gegenparteien
  • Abrechnungszeiträume
  • Aktive Währungen
  • Regionen
  • Logik für die automatische Exposition

Wenn ein Unternehmen Untergliederungen hat, die berücksichtigt werden müssen, kann unser Kunde durch die groben Züge der konzipierten Anwendungslogik, die hauptsächlich Finanziersprache spricht, dies tun. Das Entitäts-Setup umfasst die Hauptbuchkonten der Unterabteilung und Devisenhandelskonventionen.

App 1: Hedge-Accounting Dashboard

Das Hedge-Accounting-Dashboard zeigt Diagramme zur Verfolgung von Derivatelaufzeitplänen, Währungsengagements nach Unternehmen, Trends und Kurshistorien.

App 1: Hedge Item und Trade Management Im Trade Management Panel kann ein Operator Handelsoperationen für jeden Kunden registrieren und dabei verschiedene Parameter angeben. Eine Operation kann mit Zahlen abgeschlossen werden, die aus dem aktuellen Wechselkurs berechnet werden.

 App 1: Sicherheit: Rollen und Berechtigungen Um Benutzer zu verwalten, Rollen und Berechtigungen zuzuweisen, Rollen zu verwalten und Benutzeraktivitäten übergreifend zu überwachen, können Systembetreiber das Sicherheitsmodul verwenden.

App 1: Zeitraum abschließen

Wenn ein Geschäftszeitraum zu Ende geht, kann sie im Modul Periodenabschluss abgeschlossen werden. In diesem Modul werden für jede Geschäftseinheit verschiedene Market-to-Market (MTM)-Parameter (z. B. Marktwert in aktiver Währung) berechnet. Bediener können die Einstellungen von MTM-Berechnungen konfigurieren.

App 1: Berichterstattung

Dieses Modul bietet zwei Arten von Berichten: regelmäßige Berichte und RTZ-Berichte. Regelmäßige Berichte werden weiter in 50 weitere Untertypen wie Handelsinventar, Buchhaltung und Sicherungsgeschäfte unterteilt.

Darüber hinaus haben wir mit der Jasper Reports-Engine einen benutzerdefinierten Report Writer erstellt. App 1: RTZ- Speichertresor Damit Systembenutzer ihre Berichte und andere zugehörige Dokumente online und griffbereit aufbewahren können, haben wir den RTZ-Speichertresor entwickelt. App 2: Einrichtung

Das Einrichtungsmodul von App 2 ähnelt dem App 1. Betreiber können es auch verwenden, um Kundendatensätze zu konfigurieren, Benutzer und Rollen zu verwalten, Unternehmensinformationen einzugeben, Einheiten hinzuzufügen und Handelsstrategien zu konfigurieren.

App 2: Bewertungen und Handelsmanagement Bewertungen sind das Hauptberechnungsmodul in App 2. Mit ihm können Betreiber, die von App 3 empfangenen Tarife überwachen und andere zugehörige Daten verwalten.

Die im Handelsmanagement verfügbaren Handelsoperationen verfügen über Dutzende von Einstellungen und Parametern wie Zahlungsstrecken, Empfangsstrecken und vieles mehr.

Während App 1 statische Prognosen für einen bestimmten Zeitpunkt liefert, kann dieses Modul verwendet werden, um die erwartete Kostenvolatilität auf zwei Arten darzustellen: Kurven und Matrizen. Genau wie Kurven zeigen Matrizen Kostenänderungen gegenüber Leitzinsen und Streik – aber es gibt noch eine dritte Dimension, nämlich den Begriff. Die Visualisierung basiert auf Daten aus App 3, darunter Mark-to-Market-Wert, aufgelaufene Zinsen, pv01, Breakeven-Rate, aktiver Reset und vieles mehr.

App 2: Zeitraum abschließen

Dieses Modul ähnelt dem in App 1 vorgestellten Periodenabschlussmodul. Es kann verwendet werden, um Zeiträume abzuschließen und Berichte zu erstellen.

App 2: Berichterstattung

Das Berichtsmodul in App 2 ist einfacher als das in App 1. Es enthält vier Arten von Berichten, wie z. B. MTM-Detail (einfach), MTM-Verlauf (vergangene Daten), ME-Zusammenfassung, Benutzerdefiniert (ein benutzerdefinierter Berichtersteller für die Verwendung beliebiger Tabellenkalkulationen und eventuelle Berechnungen). Benutzer können benutzerdefinierte Berichte erstellen, indem sie xls-Tags in Dokumenten platzieren.

Bediener können den Start von Berichten im Voraus planen. Die Benutzer können den automatischen Erhalt bestimmter Berichte abonnieren.

Ergebnisse

Im Laufe von elf Jahren hat der Kunde unsere Hilfe intensiv in Anspruch genommen. Und die Zahl der großen Unternehmen, die das System nutzen, wuchs im Laufe der Entwicklung um Dutzende.

Im Jahr 2022 ging der CEO des Unternehmens in den Ruhestand und verkaufte das Produkt an ein größeres transnationales Unternehmen. Sie änderten das gesamte Konzept der Software, und unsere Beteiligung sowie die der meisten ursprünglichen Mitarbeiter gingen zu Ende.

Dieses Projekt war von Anfang bis Ende lehrreich. Wir haben unsere Fähigkeiten zur Ermöglichung umfangreicher Berechnungen verbessert und gelernt, mit komplexen Finanzparametern zu arbeiten, sie aus externen Quellen zu beziehen und zu verarbeiten.

ir_valuations-2
ir_trade
ir_report
ir_landing_page
ir_admininstration_batches
ir_accounting
fx_trades-2
fx_security-2
fx_reports
fx_period_close
fx_new_trade
fx_main_page
fx_landing
fx_dashboard-2
ir_valuations
fx_security
fx_trades
fx_dashboard
Haben Sie vor, ein gleiches Projekt zu schaffen?
Haben Sie eine Projektidee? Lassen Sie uns darüber diskutieren
Kontakt


    Insert math as
    Block
    Inline
    Additional settings
    Formula color
    Text color
    #333333
    Type math using LaTeX
    Preview
    \({}\)
    Nothing to preview
    Insert