MaTriX ist unser Werkzeug zur Modernisierung von proprietären, antiquierten Benutzeroberflächen, welche z.B. auf IFG, SCREEN COBOL bzw. CICS basieren. Mit MaTriX werden diese Masken automatisiert durch zeitgemäße, standardisierte Technologien abgelöst. Dabei kommen moderne Webtechnologien zum Einsatz.
MOTIVATION
Mainframe-Masken besitzen auch heute noch häufig den Charme der 70er und 80er Jahre des vergangenen Jahrhunderts:
- Die Maskenfenster sind oft auf 80 x 25 Zeichen beschränkt.
- Funktionstasten spielen eine wesentliche Rolle beim Vorwärts- und Rückwärtsblättern und Alternativen werden durch „AniXen” von Eingabefeldern ausgewählt.
- Eingaben können erst nach dem Abschicken der Maske geprüft werden, Reaktionen während der Eingabe sind nicht möglich.
- Moderne GUI-Gestaltungsmöglichkeiten wie Menüs, Links, Comboboxen etc. fehlen.
- Ggf. ist die Größe der Message, die zum Datenaustausch zwischen proprietärem Maskensystem und den Online-Programmen dient, auf eine gewisse (geringe) Anzahl an Zeichen beschränkt.
Mit MaTriX können die Mainframe-Masken durch zeitgemäße, standardisierte Webtechnologien abgelöst werden.
FEATURES
MaTriX zeichnet sich durch folgende Eigenschaften aus:
MaTriX nutzt moderne Technologien wie HTML5, Ajax und gängige JavaScript-Frameworks bei der Entwicklung von Web‑2.0‑basierten Oberflächen.
Auf den Clients muss keine Software installiert werden, was maßgeblich zur Kosteneinsparung beiträgt. Zudem wird dadurch eine große Anzahl von möglichen Client-Architekturen unterstützt.
Der als Web-Anwendung ausgelegte Maskeneditor ermöglicht die komfortable Entwicklung von Oberflächen nach dem WYSIWYG-Prinzip und bietet umfangreiche Gestaltungselemente.
Liegen die Maskenbeschreibungen in einer automatisiert verarbeitbaren Form vor, können sie mit dem in MaTriX integrierten Maskenmigrationstool automatisch in die neue Technologie überführt werden.
AUTOMATISIERTE MASKENMODERNISIERUNG
Die Migration der Bildschirmmasken des Legacy-Systems erfolgt mit MaTriX weitgehend automatisch, was die Projektkosten und den ‑zeitraum gegenüber einer manuellen Umstellung deutlich verkürzt. Ausgangspunkt bilden hierbei einerseits die originalen Maskenbeschreibungen (z.B. IFG, SCREEN COBOL) und andererseits die COBOL-Message-Strukturen, welche die Schnittstelle zwischen den in COBOL erstellten Server-Programmen und den Masken definieren.
Das Maskenmigrationstool (MMT) konvertiert die Maskenbeschreibungen und speichert diese zur weiteren Verarbeitung im XML-Format ab.
Bei der Konvertierung werden die Masken nicht 1:1 umgesetzt, es werden verschiedene Änderungen/Optimierungen vorgenommen wie z.B.:
- Das kundenspezifische CI wird berücksichtigt. Das Layout wird in CSS-Dateien hinterlegt und bereits bei der Migration den Masken „angezogen“.
- Die feste Positionierung wird in ein Grid-Layout überführt.
- Im Original vorhandene Tabellenstrukturen denen z.B. in COBOL Datenfelder mit OCCURS-Klausel zugrunde liegen, werden in spezielle Datentabellen mit Sortier-/Filter- und Scroll-Funktion überführt.
- Elemente mit bestimmten Wertebereichen werden mit speziellen Mustern ausgestattet, welche dem Nutzer falsche Eingaben bereits zur Laufzeit kenntlich machen.
Nacharbeiten an den Masken werden mit dem MaTriX-Maskeneditor vorgenommen.
MASKENGESTALTUNG
Zur Bearbeitung der modernisierten Bildschirmmasken wird der MaTriX-Maskeneditor eingesetzt. Dieser arbeitet nach dem WYSIWYG-Prinzip, d.h., das Erlernen einer Maskenbeschreibungssprache ist nicht erforderlich. Analog zu bekannten grafischen HTML-Editoren gestattet er dem Anwender die komfortable Erstellung und Bearbeitung der Masken über Maus-Interaktionen, Menüs und Toolbars. Dabei wird ein breites Spektrum von Gestaltungselementen unterstützt:
- Textanzeigeelemente mit und ohne Anbindung an die Message, welche die Schnittstelle zwischen den Server-Programmen und den Masken definiert,
- Texteingabeelemente mit Message-Anbindung (optional mit vorgegebenem Muster zur Einschränkung von möglichen Nutzereingaben),
- Buttons, Radiobuttons, Checkboxen, Selectboxen, Comboboxen, Fieldsets mit Message-Anbindung,
- Kalender (für Datumseingabe),
- Bilder in verschiedensten Grafikformaten,
- Links, die mit JavaScript-Aktionen hinterlegt werden können,
- Gitternetze zur Positionierung der Gestaltungselemente,
- spezielle Tabellen zur Anzeige von Message-Daten mit umfangreichen Konfigurationsmöglichkeiten. Diese Tabellen ermöglichen u.a.:
- Sortieren der Daten,
- Suchen in den Daten (Filtern der Daten),
- Festlegen des aktuell sichtbaren Datenbereichs durch Aktivierung einer Blätterfunktion bzw. eines Scrollbalkens.
Vielfältige Attribute zu den einzelnen Elementen (Farben, Schriftarten etc.) eröffnen einen weiten Spielraum für Gestaltungsmöglichkeiten. Für die Anordnung der Elemente wird ein flexibles Grid-Layout und keine Positionierung an festen X/Y‑Koordinaten verwendet.
“Oberflächenmodernisierung mit MaTriX”
Abstract zum 14. Workshop “Software-Reengineering” am 2.–4. Mai 2012 in Bad Honnef, erschienen in:
Softwaretechnik-Trends, Band 32, Heft 2, Mai 2012