Modernisierung einer SaaS-Spieleplattform durch SOA

Kunde

Der Kunde ist ein europäisches Unternehmen, das urheberrechtlich geschützte Softwaresysteme für Online-Spiele, Poker, Kasino, Wetten und Bingo sowie nebensächliche Dienstleistungen wie Zahlungslösungen, Webseite-Design, Gaming-Lizenzen, Werbe-Tools und Kundenbetreuung anbietet.

Aufgabe

Der Kunde hatte ein SaaS-Produkt – eine Spielplattform, die mit einer Reihe von SaaS-Diensten von Drittanbietern integriert ist. Das System enthält hochentwickelte Abrechnungs- und Reporting-Tools, um Zahlungen zu berechnen und zu überwachen.

Da der Kundenstamm des Unternehmens erheblich gewachsen ist (neben den Plänen, neue Funktionalität hinzuzufügen), entschied sich der Kunde dafür, eine neue serviceorientierte Architektur (SOA) zu implementieren, um das System effektiver und skalierbarer zu machen. Die Aufteilung von internen Modulen in abgeschlossene Services würde somit die Wartung und Erweiterung des Systems erleichtern und eine parallele Entwicklung ermöglichen.

Lösung

ScienceSoft setzte ein Team von 4 Entwicklern ein, um auf der Seite des Kunden zu arbeiten. Zunächst war das Team mit der individuellen Softwareentwicklung und mit der Ausführung von anspruchsvollen Design-Aufgaben beschäftigt. Danach kam ScienceSoft auf bestimmte Ideen im Hinblick auf die komplizierte Architektur der Kerndienste und erklärte, welche Nachteile und Vorteile unterschiedliche Ansätze haben. Die Entwickler schlugen zum Beispiel eine flexible und zuverlässige Lösung für die Authentifizierung & Autorisierungsinfrastruktur vor. Sie umfasste unter anderem einige WCF-Dienste und garantierte eine sichere Verbindung zwischen Unternehmensinfrastruktur, Benutzern und Dritten. 

Da das System kompliziert war und viele verbundene Geschäftslogikmodule hatte, war die profunde Entwicklungskompetenz für das Ersetzen von Elementen erforderlich. Zu diesem Zweck begann ScienceSoft mit der Erstellung von automatisierten Tests für das veraltete System. Nach der Entwicklung die Ersatzlösung setzte die Entwickler die Tests ein, um zu überprüfen, ob die neuen Elemente der bestehenden Umgebung entsprechen. Dieser komplizierte Ansatz ermöglichte es ScienceSoft, die Lösung ohne Ausfallzeiten zu implementieren.

Darüber hinaus haben die Entwickler von ScienceSoft eine Menge von Funktionen überarbeitet und die folgenden Systemmodule von Grund auf neu entwickelt:

  • Sicherheit (Betrugserkennung, IP-Filterung usw.)
  • Benachrichtigungssystem
  • Logging-Infrastruktur
  • Statistiken
  • Poker-System

Obwohl das Team mit einer unbekannten Codebasis zu tun hatte und sich auf die Kommunikation mit zahlreichen entfernten Entwicklungsgruppen angewiesen war, ist es ihn gelungen, agile Praktiken effizient einzusetzen.

Ergebnisse

Das Projekt wurde im Laufe von 4 Monaten erfolgreich umgesetzt. Der Kunde arbeitete mit ScienceSoft bei der Entwicklung von neuen Produkten weiterhin zusammen.

Technologien und Tools

Frameworks&Bibliotheken: .NET, WCF, WIF, ASP.NET, ASP.MVC, WinForms, Enterprise Library, Moq, Entities Framework, NUnit

Sprachen: C#, Transact-SQL, XML, XSLT, XAML, HTML, CSS

Systeme zum Datenbank-Management: MS SQL Server, MySQL

Revisionskontrollsystem: SVN

IDE: MS Visual Studio

Andere Tools: SMTP, MSMQ, WIX, LINQ, XSD, RSA, Team City, Enterprise Architect, FxCop, StyleCop, NCover, Flex, Flash