robotron*SimpleApplicationBuilder (SAB) - ein Tool zur

Werbung
robotron*SAB
Simple Application Builder
Anwendungsentwicklung mit dem
Java und XML basierten
Framework robotron*eXForms
23.09.2004, Claudia Böhm
Agenda
robotron*SAB
Anwendungsgenerierung vs. Anwendungsentwicklung
robotron*eXForms
Vorteile und Nachteile von Frameworks
Module des Frameworks
XML in eXForms
Java in eXForms
GUI-Spezifikation
Generischer GUI-Builder
Vorführung
robotron*SAB
Simple Application Builder:
 Datenbankwerkzeug
– Anlegen von Datenbankobjekten
 Anwendungsgenerator
– Erstellen von Anwendungen zur
Bearbeitung der Daten
 Entwicklungswerkzeug
– Unterstützung bei der Entwicklung von
eXForms-Anwendungen
– GUI-Builder
 Berichtwerkzeug
– Erstellen von Auswertungen und Berichte
robotron*SAB und robotron*eXForms
robotron*eXForms
Java-Framework zur
XML-basierten
Anwendungsentwicklung
robotron*SAB
Generierte
Anwendun
g
Werkzeug zur datenbankbasierten,
programmierlosen
Anwendungsgenerierung
Generierung der XML-Masken
Anwendungsgenerator
Bildet Laufzeitumgebung
(Verarbeitung der XML-Masken)
Entwickelte
Anwendung
Unterstützt bei Maskenerstellung, ...
Entwicklungsumgebung
Swing-Client
Web-Client
Berichtwerkzeug
Access-Schicht
Datenbankwerkzeug
Anwendungsgenerierung
 Erstellung von Anwendungen nur durch Spezifikation
 Anwendung besteht aus Meta-Daten
 Anwendungsgenerator trägt die Verantwortung für
Konsistenz und Korrektheit der Anwendung
 einfach und schnell
– 5-Minuten-Anwendung
– Prototyping
 Geringe Vorkenntnisse erforderlich
– „Power User“ innerhalb der Fachabteilung
 Begrenzter Funktionsumfang
 Abdeckung von Standardfällen
Anwendungsentwicklung
 Manuelle Implementierung von Anwendungen
 Anwendungen bestehen aus Oberflächen- (GUI) und
Geschäftslogik-Komponenten
 Entwickler trägt die Verantwortung für Konsistenz und
Korrektheit der Anwendung
 flexibel und problem-angepasst
 Kenntnisse in der jeweiligen Programmiersprache
erforderlich
 lange Entwicklungszeiten und hohe Kosten
Generierung vs. Entwicklung
Häufig ist eine Problemlösung durch
Anwendungsgenerierung nicht möglich, da die
Standardfunktionen nicht alle Wünsche abdecken.
Verbesserung der Anwendungentwicklung durch:
Unterstützung bei der Entwicklung
– Frameworks
Validierung / Tests der Ergebnisse
Frameworks
 Bereitstellung von Standardkomponenten
 Schnittstellen zur Ergänzung von individuellen
Komponenten
 Daten-Persistenz-Frameworks
• BC4J, EJB, JDO, TopLink, ...
 Bussiness-Logik
• BC4J, EJB, ...
 GUI-Frameworks
• JFC (Swing), UIX, ...
Frameworks
Vorteile:
– Standardkomponenten
– Einheitlichkeit (Strukturierung der Anwendung,
Entwicklungsparadigmen)
Nachteile:
– Einarbeitungsaufwand
– Kosten (abhängig von gewähltem Framework)
– Abhängigkeit
robotron*eXForms
eXtensible Forms
 Framework zur Entwicklung datenbankbasierter
Unternehmensanwendungen
 Klare Trennung von GUI (XML) und Geschäftslogik
(Java)
 Open Source
XML
JAVA
als Beschreibungssprache
zur Verarbeitung
robotron*eXForms
GUI-Änderungen werden beschrieben, nicht
programmiert
– Beschreibung in XML-File
– Masken können ggf. durch Fachbereich gestaltet werden
Trennung von Layout und Logik
– Verteilung/Parallelisierung der Entwicklung
– Einfachere Wartung und unabhängige Änderung des Layouts
möglich
einmalige Entwicklung für unterschiedliche Clients
– Web-Client
• Unterstützung von aktuellen Browsern (IEx 5.5+, Netscape 6+, Mozilla 1+)
und alter Browser (Netscape 4.7)
• automatisierte Konvertierung für unterschiedliche Auflösungen
– Swing-Client, .Net-Client, XForms-Client, …
robotron*eXForms
Module:
eXFormsWebclient
Projekt-
eXFormsGUISwing
Editor eXFormsclient
monitor
spezifsch
eXForms-access
eXForms-data
JDBC
Datenbank
eXFormstools
EJB
Datenbank
robotron*eXForms
XML in eXForms – Warum?
XML bietet Vorteile bei:
– Verarbeitung
• Komponenten zur Verarbeitung in nahezu allen Sprachen
verfügbar
• Tools zur Verarbeitung (Parsing, Xpath, Transformation,
Validierung,...)
– Transport
• Textbasiert, dadurch Transport über verbreitete und standardisierte
Protokolle (HTTP, SMTP, etc.) einfach realisierbar
– Speicherung
• je nach Anforderung unterschiedliche Medien möglich
• breite Unterstützung durch Hersteller von Persistenz-Systemen
robotron*eXForms
XML in eXForms – Wofür?
– GUI-Komponenten
• Maskenbeschreibungen
• Beschreibung von Bäumen
• Menüdefinitionen
– Aktionsverknüpfungen (Trigger)
– Datenzugriffschicht
robotron*eXForms
Java in eXForms – Warum?
– Plattformunabhängigkeit
– Freie Bibliotheken (XML, Mail, Charts, Logging, ...)
Java in eXForms – Wofür?
– Framework-Runtime
– FormHandler, TreeHandler, LoginHandler, Authenticator,
...
robotron*eXForms
EJB:
EntityBeans
– Performance-Problem beim Zugriff auf die Daten
und beim Deployment
direkte Verwendung
als der Bean-Klasse oder
einer beliebigen anderen Klasse
SessionBeans
Aufrufende
Klasse
Ixxx
Proxy
Klasse
„normaler Aufruf“
über Home-Object
GUI-Spezifikation
GUI-Builder
Produkt-/Projektspezifsche
Gui-Builder-Bestandteile
Renderer
Wizards
GUI-Builder
Drag & Drop, Resize, Move,
XML-Text-/Struktur-Editor,
Speichern, Öffnen
Vorführung
Herunterladen