Ausgangslage Historie

Slides:



Advertisements
Ähnliche Präsentationen
Vortrag Code-Dokumentation
Advertisements

Prüfung objektorientierter Programme -1
Apache - PHP - MySQL Apache-PHP-MySQL.
Objektorientierte Programmierung
Druck / Ausgaben unter LSF
eXist Open Source Native XML Database
Spec# Proseminar Assertions im SS 2007 Uni Paderborn Andreas Martens Betreuer: Dipl. Inform. Björn Metzler.
Seminar: XML für Fortgeschrittene Referent: Katrin Apel
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Java: Objektorientierte Programmierung
Java: Grundlagen der Sprache
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Das Build-Tool ANT ETIS SS05. ETIS SS05 - Nadine FröhlichANT 2 Gliederung Motivation Build - Datei –Allgemeiner Aufbau –Project –Target –Task –Properties.
Christian Kästner Modellgetriebene Softwareentwicklung Eclipse Modelling Framework.
XDoclet ETIS SS05.
NetUSE Web Application Framework Kai Voigt NetUSE AG 28. Februar 2003.
Smalltalk für Quereinsteiger
Bidirektionales VFX-XML-Interface für Daten-Import/Export Visual Extend Anwendertreffen 2009 Rainer Becker, Frank Kropp deutschsprachige FoxPro User Group.
Wizards & Builders GmbH Schulung Visual SourceSafe für Visual FoxPro Norbert Abb W&B.
Uwe Habermann Venelina Jordanova dFPUG – Silverlight Wizard.
Active Extend deutschsprachige FoxPro User Group Rainer Becker VFXAFX06.
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
Jetzt lernen wir.
Delphi Eine objektorientierte Programmiersprache © Beushausen 2000.
Distributed Multimedia Control Steuerung und Überwachung von Präsentationen in Netzwerken.
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Wir bauen uns eine Webapplikation!
08. September 2010Entwicklungsstrategien in Liferay 1 Christian Krause, URZ FSU Jena, IDM-Arbeitsgruppe.
Einführung / Geschichte Einführung / Geschichte Motivation Motivation Beispiel Beispiel Architektur / Komponenten Architektur / Komponenten Konfiguration.
Dateien Datei = File (engl.) Mögliche Inhalte einer Datei
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
INFORMATIONSSYSTEM ZUR STUDIERENDENVERWALTUNG OPUS-College.
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
1.2 Trennung von Struktur und Inhalt
Allgemeines zu Datenbanken
HORIZONT 1 XINFO ® Das IT - Informationssystem XINFO V3R2 HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
HORIZONT 1 XINFO ® Das IT - Informationssystem Eclipse Plugin HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Ein neues Zeitalter beginnt
Tose – Gruppe Applikation
Vom Geschäftsprozess zum Quellcode
Oliver Spritzendorfer Thomas Fekete
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
Torque robert.resch-wolfgang.schneider. uebersicht Was ist Torque Komponenten von Torque Generator Erzeugte Klassen Methoden Torque in Turbine Demobeispiel.
® IBM Software Group © 2005 IBM Corporation Hanseatic Mainframe Summit 2009.
Programmieren ... in C++ Prof. Dr.-Ing. Franz-Josef Behr, HfT Stuttgart Programmeiren I.
Informatik II Grundlagen der Programmierung Programmieren in C Funktionen, Adressen, Zeiger Hochschule Fulda – FB ET Sommersemester 2014
Inhalt Die Anforderungen Das Architekturkonzept
Hanseatic Mainframe Summit Rolle des Mainframe bei PPI und bei unseren Kunden Dr. Christian Friberg.
Objektorientierung.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
Präsentation: Google Picasa
Java-Kurs Übung Benutzeroberflächen und Graphik Frames (Fenster)
PHP:: Hypertext Preprocessor Einführung Praxis. PHP:: Hypertext Preprocessor Jetzt mal von der anderen Seite © All rights reversed2 PHP:: Hypertext Preprocessor.
Datenbanken im Web 1.
2 Grundlagen In diesem Abschnitt werden die Grundbegriffe und Methoden der Theorie der formalen Sprachen und der Automaten wiederholt, soweit diese ben.
Text Encoding Initiative Universität zu Köln Daten- und Metadatenstandards Seminarleitung: Patrick Sahle Seminarleitung: Patrick Sahle Referentin: Anna.
EJB Architektur für große Web - Applikationen Gerald Weber
Bruno Feurer LivCos. Das Problem  Nur Ansichten  Individuelle Ansichten  Dynamische Änderungen  Repräsentieren nur Teil der Information.
Continuous Integration
XML Technologie für NOKIS Software Wassilios Kazakos, Andreas Schmidt, Alexei Valikov, Alexei Akhounov FZI Forschungszentrum Informatik Karlsruhe
, Claudia Böhm robotron*SAB Anwendungsentwicklung mit dem Java und XML basierten Framework robotron*eXForms Simple Application Builder.
IT-Dienstleistungen E-Learning Systeme Content Management 1 Fallbeispiel ILIAS: Das Repository-Objekt-Plugin „Centra“
1. Betreuer: Prof. Dr. Jörg Striegnitz 2. Betreuer: Dr. Martin Schindler Kontextsensitive Autocompletion für Klassendiagramme in der UML/P Florian Leppers.
 Präsentation transkript:

Präsentation 2: EBICS Dr. Christian Friberg

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit

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

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit

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

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

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

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 18.09.2008 Hanseatic Mainframe Summit

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

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 18.09.2008 Hanseatic Mainframe Summit

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 18.09.2008 Hanseatic Mainframe Summit