Support

Support


Mit dem FLAM-Support wollen wir den hohen Anforderungen unserer Kunden gerecht werden. Wenn FLAM als Infrastruktur eingesetzt wird, hängen oft kritische Systeme unserer Kunden von der Verfügbarkeit der Daten ab, die wir mit FLAM verwalten. Daher ist ein qualifizierter Support ein wichtiger Aspekt. Dazu gehört ein professionelles Problemmanagement, das über ein Ticketsystem (support@flam.de) als Teil unseres zentralen ERP/CRM abgewickelt wird. Hinzu kommt die Softwarepflege, bei der neben der Unterstützung neuester Technologien und Betriebssystemversionen auch die Rückwärtskompatibilität eine große Rolle spielt.


Über das Ticketsystem können unsere Kunden auch Requirements und Feature Requests einstellen, die dann im Rahmen der Releaseplanung eingetaktet werden.  Über einen Newsletter kann man sich automatisch über wichtige Fixes und neue Releases informieren lassen. Zusätzlich bieten wir hier einen speziellen Newsletter für die Anbindung eines Secure Operation Centers (SOC) an. Dieser informiert Ihr SOC nach den Vorgaben des BSI und NIST über neu erkannte Sicherheitslücken in unserer Software oder in den von uns verwendeten externen Bibliotheken.


Im Download-Bereich finden Sie unsere gesamte Dokumentation, die Softwarepakete für alle Plattformen, diverse Addons und die von uns vorgenommenen Anpassungen an externen Bibliotheken, die wir auf GitHub veröffentlichen.


Unterstützte Plattformen:

FLAM wird derzeit auf folgenden Plattformen standardmäßig zur Verfügung gestellt:


  • x86 - Windows (MSI) - 32/64
  • x86 - Linux (RPM, DEB/APT, PAC, TAR) - 32/64
  • x86 - Solaris (Sun, Open (PKG, TAR)) - 32/64
  • SPARC - Solaris (Sun, Open (PKG, TAR)) - 32
  • Power - Linux (RPM, TAR) - 32/64
  • Power - AIX (RPM, TAR) - 32/64
  • Power - Solaris (Open (PKG, TAR)) - 32/64
  • System z - z/OS (XMIT, SMPE) - 24/31
  • System z - z/USS (TAR) - 31/64
  • System z - z/LINUX (RPM, TAR) - 31/64
  • BS2000 - OSD - 24/31 (nur für FLAM4 Komponenten)


Auf Anfrage oder im Rahmen der Wartung können wir die Unterstützung für weitere Plattformen einrichten. Für alle Unix-, WINDOWS-, MAC-Derivate (inkl. Mobile Devices (ARM)) kann der FLAM-Client sehr schnell bereitgestellt werden. Für proprietäre Plattformen, wie z.B. zVM, VSE, AS400 etc. kann der Support mit etwas mehr Vorlaufzeit aufgebaut werden.


In der Vergangenheit hatten wir bis zu 60 verschiedene Plattformen im Support und haben dafür gesorgt, dass der Datenaustausch zwischen diesen teilweise sehr unterschiedlichen Rechnern funktioniert hat.


Wer auf einer dieser 60 Plattformen mit FLAM eine FLAMFILE erzeugt hat, kann diese selbstverständlich auf jedem der heute mit FLAM unterstützten Systeme auspacken, sofern die Daten auf der neuen Plattform 1 zu 1 als binärer Bytestrom zur Verfügung stehen.



Lizenz und Wartung:


Jeder professionelle Nutzer von FLAM schließt einen Lizenz- und Wartungsvertrag ab, welcher folgende Bestandteile enthält:


  • Nutzungsrecht der urheberrechtlich geschützten Software für produktive und kommerzielle Zwecke
  • Softwarepflege, Bugfixes und Change Requests
    • Anpassung der Software an neue Versionen der betr. System-Plattform
    • Bereitstellung neuer Versionen und Releases der lizenzierten Softwarekomponenten
    • Behebung von Fehlern und Einarbeitung von Kundenanforderungen
  • Support (Mail, Hotline, Ticket-System, 5x8 oder 24x7)
  • Schulung, Beratung- und Unterstützungsleistungen


Ein solcher Wartungsvertrag ist Voraussetzung für die Inanspruchnahme von Supportleistungen. Es gelten die vertraglichen Vereinbarungen.


Probleme und Anforderungen:

Um Anforderungen, Feature Requests oder Probleme für FLAM zu melden oder einfach technische Fragen zu stellen, senden Sie bitte eine formlose eMail an unseren Support-Helpdesk.

support@flam.de

Nachfolgend aufgeführte Angaben werden bei Meldungen von Problemen benötigt:

  • Version von FLAM bzw. der genutzten Komponente
  • FLAM-Kommando (COMP, DECO, CONV, ARCHIVE, ...)
  • Fehlermeldungen und Errortrace von FLAM
  • Aufstellung aller Änderungen an der Systemumgebung, die vor dem Auftreten des Problems durchgeführt wurden
  • Am Admin-PC, Host-Konsole etc: Die gesamte Information, die beim Fehlerauftritt auf dem Monitor zu sehen ist
  • Seriennummern, Versionsnummern und andere Kennzeichen für die betroffene Hardware oder Software (z.B. Rechnerarchitektur und Betriebssystem des ​sendenden und empfangenden Systems)
  • Datum, Uhrzeit zum Fehlerereignis
  • Schwere und Priorität des Fehlers
  • Beschreibung des Vorgangs, bei dem der Fehler aufgetreten ist
  • Fehlerbeschreibung, Reproduzierbarkeit
  • Beschreibung der Hardware- und Softwareumgebung incl. Standplatz
  • Ansprechpartner des Auftraggebers incl. Tel.-Nr.
  • Name und Tel.-Nr. des Operators, der den Fehler bemerkt hat

Je nach Fehlertyp kann durch weitergehende Informationen der Gesamtaufwand der Fehleranalyse und Fehlerbehebung reduziert werden. Solche Informationen sind z.B.:

  • Link Listing der FLAM-Module
  • Trace Listings der FLAM-Komponenten
  • Konfigurationdataset für FLAM
  • Dumps, Logs, etc.

Bitte beachten Sie, dass wir nur den Schutz Ihrer Kontaktdaten gewährleisten können (siehe AGB, AVV und TOM für die Wartung) und daher keine sensiblen Daten über diesen ungeschützten Kanal (unverschlüsselte eMail) an uns gesendet werden. Wenn wir das Problem bei uns nicht reproduzieren können und zur Fehleranalyse auf Ihre Daten zurückgreifen müssen, werden wir uns in Ihre sichere Umgebung begeben. Dazu unterzeichnen unsere Mitarbeiter ggf. ein NDA und eine zweite AVV, in der die TOM auf die sichere Kundenumgebung verweist.


Wir sind ein reines Softwarehaus (kein Rechenzentrum), unsere Software selbst hat keine Verbindung zu uns und wir betreiben auch keine Software für unsere Kunden. Die Ergebnisverantwortung für den Einsatz von FLAM liegt bei unseren Kunden.


Qualitätssicherung:

Die Entwicklung unserer Software erfolgt methodisch und strukturiert mit einer Mischung aus Scrum und Rational Team Concert (IBM). Die koordinierte Arbeit der Mitarbeiterinnen und Mitarbeiter wird durch das Projektmanagement über unser ERP/CRM-System (Odoo) und die Quellcodeverwaltung mit Git ermöglicht. Beides ist in die gemeinsame Entwicklungsumgebung VS-Code bzw. Eclipse integriert. Unser effizientes und agiles Entwicklungsmodell erzwingt Regressionstests der Software (Continuous Integration) bei jedem Build (viele kleine Tests) und nach dem Push der Änderungen in das zentrale Repository (alle mittelgroßen Tests). Zusätzlich gibt es Nightly Builds, bei denen Tests mit längerer Laufzeit jede Nacht automatisiert ausgeführt werden. Dadurch können Fehler und Inkompatibilitäten zu älteren Versionen auf allen Plattformen frühzeitig erkannt, behoben und somit Fehlentwicklungen vermieden werden. Jedes Wochenende findet ein kompletter Durchlauf statt, so dass zu Beginn jeder Woche, sofern keine Fehler auftreten, ein neuer Stand unserer Software veröffentlicht werden kann, was FLAM zu einem Rolling-Release macht.



Die Qualitätssicherung unserer Software wird durch die folgenden Werkzeuge unterstützt:


  • Vulnerability-Scanner für MISRA und CERT
  • ​Statische Codeanalyse mit Cppcheck und scan-build (Clang)
  • Dynamische Codeanalyse über Valgrind unter Linux und dem HEAPCHK auf der Host
  • Selbst entwickeltes Speicher und Resourcen Monitoring zur Erkennung von Pufferüberläufen, Double Frees und ähnlichen Problemen
  • Selbst entwickeltes Test-Framework für alle Plattformen, über das einfach, schnell und effektiv Funktions-, Modul-, Komponenten- und Regression-Tests ​entwickelt sowie gewartet werden können.
  • Code Coverage Analyse mit Coco von QT als integraler Bestandteil unseres Testframeworks
  • Die graphischen Oberflächen unter Unix und Windows werden mit Squish von QTc automatisiert im Framework getestet.
  • Für die ISPF Panels unter z/OS nutzen wir x3270 mit Phyton-Scripts (py3270) welche wir als Hosttest remote über die FLCL auf einen zentralen Linux-Server starten.
  • zACS-Scann unserer Started-Tsak (FLAMSTC) auf der Host


Wir planen, unser Testframework (FLTF) analog zum CLEP zu einem eigenen Open-Source-Produkt weiterzuentwickeln. Mittels C-Code können schnell und einfach komplexe Massentests abgebildet werden, um mit wenigen Zeilen Code eine hohe Testabdeckung zu erzeugen. Regressionstests für die Kundenschnittstellen und Unittests für die einzelnen Komponenten können sehr einfach geschrieben oder durch KI generiert werden. Die Tests können vollautomatisch ausgeführt werden. Alle Testergebnisse werden in HTML-Dateien zusammengefasst, so dass alle Tests auf allen Plattformen für jeden Entwickler und im Rahmen der Automatisierung im Intranet einsehbar sind.


Jeder Entwickler muss vor dem Einchecken von neuem Code diesen für Linux, Windows, USS und z/OS bauen und alle Build Regression Tests erfolgreich bestehen. Nach dem Einchecken in das zentrale Git-Repository werden weitere Tests durchgeführt. Wenn ein Problem gefunden wird, erhält der betroffene Entwickler eine E-Mail und seine Änderungen werden nicht mit dem Hauptentwicklungszweig zusammengeführt, bis das Problem behoben ist.


Zusätzlich führen wir Cross-Plattform-Tests durch, um die Interoperabilität zwischen den Plattformen sicherzustellen. Das bedeutet, dass z.B. auf einem Linux-System erzeugte Ausgaben auf einem z/OS-System auf korrekte Lesbarkeit getestet werden und umgekehrt, aber auch, dass kryptographische Hardware wie PKCS#11-Token und IBM-CCA-Devices mit unseren Software-Implementierungen der kryptographischen Algorithmen zusammenarbeiten müssen. Bei Standarddatenformaten wird auch die Interoperabilität mit Standardwerkzeugen wie GnuPG, gzip, 7-Zip getestet. Bei unseren Archivformaten werden die Crosstests auch über alle Versionen durchgeführt, die im Laufe der Zeit unterstützt wurden. Diese zusätzliche zeitliche Dimension stellt sicher, dass unsere Software auch alle älteren Versionen unserer Archive lesen kann und somit eine 100%ige Abwärtskompatibilität gewährleistet ist.


Alle diese Kontrollen werden in einem Quality-Gateway im Intranet zusammengefasst. Wenn alle Tests erfolgreich verlaufen sind und alle Tools grünes Licht geben, stellt unser Quality-Gateway einen Button zur Veröffentlichung des jeweiligen Softwarestandes zur Verfügung.


Neben der Versionsnummer, die jede FLAM-Auslieferung hat, hat auch jede einzelne Komponente eine eigene Versionsnummer. Dies hilft uns im Supportfall, den genauen Softwarestand der Kundeninstallation festzustellen und somit zeitnah Hilfe anbieten zu können. Außerdem können inkonsistente Installationen leichter erkannt werden.


Noch ein Hinweis aus langjähriger Erfahrung:

Neben der Vertraulichkeit schützt FLAM auch die Integrität und Vollständigkeit der Daten. Dabei stellt FLAM sehr oft Übertragungs- oder Speicherfehler fest, obwohl FLAM selbst nicht die Ursache ist. Dies führt einerseits zu ungerechtfertigtem Supportaufwand, den wir im Rahmen der Wartung gerne für unsere Kunden leisten. Andererseits können dadurch oft Fehler an anderer Stelle gefunden und behoben werden. Auf diese Weise konnten schon große Schäden vermieden werden und so mancher Kunde setzt FLAM inzwischen genau aus diesem Grund ein.