Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Ausgangslage Historie

Ähnliche Präsentationen


Präsentation zum Thema: "Ausgangslage Historie"—  Präsentation transkript:

0 Präsentation 2: EBICS Dr. Christian Friberg

1 Ausgangslage Historie
Java-Entwicklung schreitet mit neuen Methoden voran ii-Vorgehen oo-Entwurf und -Programmierung automatische Tests automatische Builds Herstellertests Host bleibt wie er ist C-Programmierung (wenn wir Glück haben!) Wasserfallmodell händische Entwicklertests händische Kompiliersteuerung Wie kann diese „neue Welt“ auf den „alten Host“ übertragen werden? © PPI AG Hanseatic Mainframe Summit

2 Vorgeschichte Make auf dem Host (hmake) Seit 2002
Mittlerweile in fast allen Projekten auf dem Host eingesetzt Herstellertests Seit TCH 3.0 Iterativ-Inkrementelle Entwicklung Immer mal wieder Ansätze © PPI AG Hanseatic Mainframe Summit

3 Berichte aus Projekten
EBICS-Server für TRAVIC Corporate/HOST Zum ersten Mal XML-Verarbeitung auf dem Host Das war die Chance! ;-) Wir nutzten sie zum großen Umbau Änderung der Programmiersprache C++ Automatische Entwicklertests Änderung der Umgebung Skriptsprache Lua als Metasprache für viele Anwendungsfälle Generierung von SQL-Sourcen und DDLs Verbesserung des Make-Prozesses © PPI AG Hanseatic Mainframe Summit

4 C++ (1) C++ als OO-Sprache Deutlich besser verständlicher Code
Bessere Strukturierung, Kapselungsmöglichkeiten und Ausdrucksstärke Höhere Typsicherheit zur Compilezeit Bessere Performance als C (z.B. wg. Code-Inlining, Templates) Automatische Ressourcenverwaltung (Destruktoren) Speicher, Dateien, TCP-Verbindungen, ... Besonderheiten Einschränkung auf Untermenge mit „Java-feeling“ Sprechende (lange) Namen Kaum Mehrfachvererbung Keine „nackten“ Pointer Heapobjekte mit Smartpointern und Referenzzählern C++ „Tricks“ in grundlegenden Basisklassen, nicht in der Fachlichkeit © PPI AG Hanseatic Mainframe Summit

5 C++ (2) Automatische Entwicklertests Eingebunden in Make-Prozess
Mehrere Plattformen Übersetzung unter UNIX und z/OS Auch DB2 unter UNIX und z/OS Auch Entwicklertests ... © PPI AG Hanseatic Mainframe Summit

6 C++ (Beispiel) Hier beginnt der Text Hier beginnt eine Aufzählung
© PPI AG Hanseatic Mainframe Summit

7 Lua (1) Grundlagen/Vorteile Einfache Scriptsprache Kleines C-Programm
Sehr schnell Läuft problemlos auf allen Plattformen (also auch Host) Völlig frei einsetzbar (MIT Open Source Lizenz) Verwendung als Meta-Sprache Beschreibung von Strukturen (z.B. DB-Tabellen, Listen, ...) Hilfsfunktionen, z.B. Generatoren Integration in Buildprozess als Präprozessor (Emlua) DB2 Generierung von Source-Fragmenten (.cpp und .hpp) So viel wie möglich händisch programmieren (siehe Beispiel) Generierung der DDL => Kein Case mehr Generierte Assertions für Belegung von DB-Objekten © PPI AG Hanseatic Mainframe Summit

8 Lua (2) Übertragung zum Host Integration in Sendeprozess
Im Wesentlichen Variablenersetzung Build-Prozess auf dem Host C, C++ Jobs DB-Befüllung Verwaltung von Testsystemen Lua und Makefiles Definition mehrerer Testsysteme mit allen benötigen Jobs und Daten Installation der Testsysteme aus der Auslieferung heraus © PPI AG Hanseatic Mainframe Summit

9 Lua (Beispiel: database.lua)
© PPI AG Hanseatic Mainframe Summit

10 Lua (Beispiel: Einfaches SQL)
© PPI AG Hanseatic Mainframe Summit

11 Lua (Beispiel: Fallunterscheidung)
© PPI AG Hanseatic Mainframe Summit

12 TRAVIC Interbank/HOST
Dialoge 3270-Dialoge Fest definierte Platzhalter und Kennzeichen (z.B. „Eingabefeld“ ...) Einfache Beschreibung des Fensterinhalts in Lua Lua-Framework zur Generierung von Panel Panelobject mit Status und Zugriffsfunktionen Überprüfung von Meldungen Framework zur Listenverarbeitung mit Cursor Extra Pointer wg. zyklischer Verkettung von Masken mit „Alterungsregel“ Auslieferung „Ständiger“ Build auf dem Host Referenzumgebung immer auf dem neuesten Stand Herstellertest mit QF-Test Ansteuerung von TRAVIC-Link und TCU als Testkomponenten Ansteuerung von TIH über 3270-Web-Emulation © PPI AG Hanseatic Mainframe Summit

13 Lua (Beispiel: Panelbeschreibung)
© PPI AG Hanseatic Mainframe Summit

14 Was kommt jetzt noch? TCH 3.2
Ziel: Kontrolle über Differenzauslieferungen Liste aller Module, DBRMs, Panel, Jobs, ... Erstellt zu gegebener Modulliste „minimale Hülle“, inkl. Releasenotes Dazu Generierung von Makefiles mit Lua Zusätzlicher Benefit: Trennung von Technik und Inhalt bei hmake © PPI AG Hanseatic Mainframe Summit

15 Fazit Wesentliche Neuerungen auf dem Host möglich
Objektorientierte Programmierung Iterativ-inkrementelle Entwicklung Gesteuerte Build-Prozesse Gesteuerte Auslieferungsprozesse Automatische Entwicklertests Automatische Herstellertests Oberste Philosophie: Alles leichtgewichtig Ausgangsdaten und Ergebnisse immer in Textform Generierung durch Lua-Funktionen und Emlua-Präprozessor Jederzeit manipulierbar Mehr und mehr in Projekten erfolgreich eingesetzt EBICS-Server TCH 3.0 ff. (mittlerweile auch in anderen TCH-Komponenten) TRAVIC-Interbank/HOST EU-Steuerung Q-Sig (Qualifizierte Signatur und TAN-Generator) Erste Bausteine schon in TCU © PPI AG Hanseatic Mainframe Summit


Herunterladen ppt "Ausgangslage Historie"

Ähnliche Präsentationen


Google-Anzeigen