Zum Inhalt springen

Kundenspezifische Softwareentwicklung

Maß­geschnei­derte Lösungen

Spezifische Kundenanforderungen lassen sich nicht immer auf effiziente Weise mit Standardsoftware lösen. So kann es vorkommen, dass es am Markt keine passende Standardsoftware gibt, welche alle Anforderungen erfüllt. Weiterhin kann Standardsoftware für die konkrete Aufgabenstellung über­dimensioniert sein, was zu unnötigen Mehrkosten führt und die Bedienung sowie den Betrieb unübersichtlich macht.

Eine Alternative zu Standardsoftware besteht in maßgeschneiderten Lösungen. Diese Lösungen werden speziell für den Kunden entwickelt und erfüllen möglichst passgenau die gestellten Anforderungen – nicht mehr und nicht weniger.

ISACO entwickelt seit vielen Jahren kundenspezifische Lösungen. Unsere Leistungen beinhalten die Implementierung von Adaptern zur Erweiterung und Integration von existierender Software sowie die Umsetzung eigenständiger Komplettlösungen. Das Team der ISACO GmbH verfügt über langjährige Erfahrung und tiefes, technisches Know-How.

Wir verwenden unter anderem die Protokolle SOAP, REST, XML-RPC, RADIUS, Diameter, SIP, RTP, SDP, HTTP(S), (S)FTP, SNMP, LDAP sowie die Programmiersprachen Python, C, C++, Java, und JavaScript.

Dialplan-Management

Das Zusammen­spiel vieler Systeme kann zu einer Heraus­for­derung werden.

Komplexere VoIP-Plattformen bestehen aus einer Vielzahl von Komponenten. Die Konfiguration aller Komponenten konsistent zu halten kann zu einer großen Herausforderung werden. Das trifft insbesondere dann zu, wenn verschiedene Teile der Plattform von unterschiedlichen Organisationseinheiten betrieben und verantwortet werden.

Für einen großen Telefonanbieter wurde eine Komponente benötigt, die eine zentrale Steuerung und Verteilung von Dialplänen an alle relevanten Ziel­systeme seiner VoIP-Plattform erlaubt. Neben den überaus unter­schied­lichen Anforderungen der einzelnen Ziel­systeme in Bezug auf Dialplan-Formate und Schnittstellen bedurfte es auch eines komplexen Rollenkonzepts, das die organisatorischen Zuständigkeiten und Arbeitsabläufe wieder­spiegelt. Für diese Anforderungen war keine Standardsoftware verfügbar.

Die kundenspezifische Lösung von ISACO bestand in der Entwicklung eines zentralen Servers zur Verwaltung von Dialplänen. Zur Bedienung wurde eine grafische Weboberfläche implementiert, über die ein Benutzer alle not­wen­digen Arbeitsschritte durchführen kann. Die Anbindung an die einzelnen Zielsysteme wurde über Schnitt­stellen­module realisiert, wodurch die Lösung eine Vielzahl von unterschiedlichen Protokollen unterstützt (z.B. SOAP, XML-RPC, SFTP, LDAP, SMTP).

Der Kunde ist mit der Lösung von ISACO nun in der Lage, alle auf seiner VoIP-Plattform verwendeten Dialpläne an zentraler Stelle zu erstellen, zu validieren, zu verteilen und zu archivieren. Der Arbeitsaufwand konnte entscheidend reduziert werden: die grafische Weboberfläche unterstützt die Benutzer bei den notwendigen Arbeitsschritten und vereinfacht die Einarbeitung neuer Mitarbeiter. Zeitgleich wurde die Qualität und die Zuverlässig­keit der erzeugten Dialpläne durch eingebaute Prüfmechanismen entscheidend verbessert. 

Test-Automatisierung

Automatisierung ist der Schlüssel zur Effizienz.

Testautomatisierung ist der Schlüssel zu einer effizienten und verlässlichen Qualitätssicherung. Das trifft insbesondere auf Verbundtests in komplexen VoIP-Systemen zu, die aus einer Vielzahl von Einzelkomponenten der SIP-Signalisierung oder der Medienapplikationen bestehen können. Daraus ergibt sich eine sehr hohe Anzahl von unterschiedlichen Szenarien, die sich über manuelle Tests nicht mehr ausreichend verifizieren lassen.

Ein großer Telefonie-Provider hatte ein eigenes Testframework zur Qualitätssicherung entwickelt, das ursprünglich auf automatisierte Tests im Bereich der Datenprovisionierung beschränkt war. Das Testframework sollte nun um Funktionen der VoIP-Kommunikation erweitert werden, ohne jedoch einen SIP-Stack direkt in das Framework integrieren zu müssen. Deshalb wurde eine Lösung gesucht, mit der die technische Umsetzung der SIP-Kommunikation implementiert und über das Framework gesteuert werden konnte. Für diese Anforderungen war keine Standardsoftware verfügbar.

Die kundenspezifische Lösung von ISACO bestand in der Entwicklung eines eigenständigen Systems zur Steuerung der SIP-Kommunikation. Dieses System ist in der Lage, beliebige Gespräche in der Rolle des Anrufers und des Angerufenen aufzubauen und zu führen. Im laufenden Gespräch können DTMF-Töne gesendet sowie Audiodateien abgespielt und aufgezeichnet werden. Die Lösung ist zusätzlich in der Lage, die Kommunikation über ISDN und analoge Telefonie zu führen, sodass auch Gateway-Funktionalität der VoIP-Plattform getestet werden kann. Zur Steuerung des Systems steht eine gut dokumentierte REST-Schnittstelle zur Verfügung, die den Integrationsaufwand in das Testframework des Kunden auf ein Minimum reduziert hat.

Der Kunde ist damit nun in der Lage, sein bestehendes Testframework weiter zu nutzen und zusätzlich den Bereich der VoIP-Kommunikation abzudecken. Der manuelle Testaufwand konnte stark reduziert und gleichzeitig die Qualität sowie Abdeckung der Tests erhöht werden. Sowohl Endgeräte als auch die VoIP-Plattform selbst sowie einzelne Medienapplikationen können weitgehend automatisiert getestet werden. Unser Kunde ist damit jetzt sogar in Lage, komplexe Szenarien wie das Setzen einer Weiterleitung im Kundenportal mit anschließender Verifizierung in der VoIP-Plattform automatisiert zu prüfen. 

Abrechnungsadapter

Mit flexiblen Adaptern Kosten sparen.

Die Verwendung von Standardsoftware größerer Hersteller hat oftmals den Nachteil von langen Release-Zyklen und kostenintensiven Anpassungen. Das führt insbesondere für kleinere Projekte dazu, dass Anpassungen auf ein Minimum reduziert oder ganz vermieden werden müssen um wirtschaftlich zu bleiben.

Ein großer Telefonanbieter setzt zur Abrechnung die weltweit erfolgreiche Standardsoftware eines großen Her­stel­lers ein. In einem kleineren Projekt sollten gemeinsame Leistungen im Bereich der Videotelefonie in Ko­ope­ra­tion mit einem externen Partner erbracht werden. Hierzu war es notwendig, die Abrechnungsdaten des externen Partners für das genutzte Abrechnungs­system aufzubereiten. Die Aufbereitung ging dabei über einfache Format­anpassungen weit hinaus. Die Qualität der vom Partner angelieferten Rohdaten war nach­weislich schlecht: sie mussten in mehreren Stufen korreliert und ausgiebig validiert werden.

Die kundenspezifische Lösung von ISACO bestand in der Entwicklung eines Servers zum Import, zur Korrelierung und Validierung und zur Übermittlung der Abrechnungsdaten an das bestehende Abrechnungssystem. Für die Bedienung wurde eine grafische Weboberfläche implementiert, über die ein Benutzer alle notwendigen Arbeits­schritte durchführen kann. Inkonsistenzen werden direkt in der Oberfläche angezeigt und Vorschläge zur Korrektur angeboten. Eine Vielzahl von kundenspezifischen Prüfregeln helfen, die erwünschte Qualität der Abrechnungsdaten sicherzustellen.

Der Kunde ist mit der Adapter-Lösung von ISACO nun in der Lage, die Rohdaten des Partners umfangreich zu prüfen und in das Abrechnungssystem einzuspeisen. Außerdem konnten projektspezifische Anpassungen im Abrechnungssystem vermieden und damit verbundene Kosten eingespart werden. 

Notrufkodierung

Bei konkurrieren­den Herstellern kommt es häufig zu Inter­operabili­täts­problemen.

Bei Standardsoftware unterschiedlicher Hersteller kommt es nicht selten zu Interoperabilitätsproblemen, für deren Behebung es keine Standardlösung gibt. Ein großer Telefonie-Provider setzte auf die Produkte zweier großer, konkurrierender Hersteller. Eine gehostete PBX für Geschäftskunden sollte über eine IMS-Plattform mit Ic-Schnitt­stelle an eine andere IMS-Plattform angeschlossen werden.

Hierbei kam es gleich zu mehreren Problemen: Trotz definierter Schnittstelle gab es (teilweise gravierende) Interoperabilitätsprobleme aufgrund von Spezifikationslücken. Die gehostete PBX unterstütze zudem keine Notrufkodierung, wie sie über die spezifizierte Schnittstelle für Notrufe erforderlich ist.

Die kundenspezifische Lösung von ISACO bestand aus einem SIP-Proxy mit Datenbankanbindung, der alle nötigen Anpassungen vornimmt. Aufgrund der flexiblen Konfigurierbarkeit der Lösung und der Flexibilität von ISACO bei der Softwareentwicklung konnten im Projektverlauf auftretende Probleme zwischen den beiden Plattformen schnell und zur Zufriedenheit des Kunden gelöst werden. Durch die schnelle, flexible und lösungsorientierte Herangehensweise konnten kritische Meilensteine und Zeitpläne gehalten werden.

Trotz der agilen Entwicklung konnte durch automatische funktionale Tests, Last- und Stabilitätstests und CI eine sehr hohe Softwarequalität und Robustheit sichergestellt werden. So sind im gesamten Verlauf dieses etwas größeren Projekts lediglich zwei Softwarefehler im Verbundtest aufgetreten, die umgehend behoben wurden. Im Produktivbetrieb ist bis heute kein einziger Fehler aufgetreten.