SlideShare ist ein Scribd-Unternehmen logo
FormEngine
imatics Software GmbH
    Java-Framework für
 dynamische Web-Formulare
imatics Lösungs-Portfolio
                 Web, Portale
                                 ProcessPortal   ProcessGallery
Applika-
 tionen



                                 ITrack          Anamnese                             Mobil (iPhone, iPad, Blackberry,
                                                                                                 Android)
                                 Netzwerkportal Umfragen
Anwendungs-
 infrastruktur




                                Content- & Portal-
                                                              FormEngine (FE)                   ProcessSuite (IPS)
                                management (ICM)
Backend-
Systeme




                                                                  © imatics Software GmbH                                2
Zielsetzung
•    Formulardefinition zur Laufzeit über eine Java-API oder XML
•    Sofortige Validierung der Eingaben; Implementierung der Validierer mit
     Java (kein Javascript)
•    Dynamische Berechnung von Feldinhalten abhängig von anderen
     Feldern
•    Abbildung komplexer Datenstrukturen wie Gruppen und
     Wiederholungen (Repeats)
•    Internationalisierung aller Komponenten (Beschriftung, Auswahlwerte,
     Datumseingabe)
•    Einfache Integration in beliebige HTML-Seiten
•    Flexible Erweiterbarkeit um neue Renderer, Validierer usw.



                                                                              3
Historie
•    Entwicklungsbeginn im Januar 2007
•    Integration in die imatics *ProcessSuite im August 2007 zur dynamischen
     Erzeugung benutzerdefinierter Formulare
•    2008/2009 projektgetriebene Weiterentwicklung
•    Einsatz in mehreren Kundenprojekten
•    Veröffentlichung unter einer Open-Use-Lizenz im Dezember 2009
•    Nutzung auf Websites diverser mittelgroßer – sehr großer Unternehmen
•    Einsatz als Basistechnologie bei mehreren IT-Systemhäusern und
     Integratoren in D-A-CH




                                                                               4
Architektur
•    Datenhaltung in serverseitigem
     FormContext
•    HTML-Darstellung und Eingabe
     über Renderer (Konvertierung der
     Daten)
•    Formular-Logik über dynamische
     Validierer und Kalkulatoren
•    Anbindung an Back-End
     über Konnektoren
•    Anbindung auch auf andere
     Technologien (Swing, XCode...)
     adaptierbar


                                        5
Komponenten – Definition der Datenstruktur
•    Definition der Datenstruktur eines Formulars per XML oder über die Java
     API
•    Für Komponenten können beliebige Datentypen festgelegt werden
     (Integer, Text, Binärdaten, Datum usw.)
•    Hierarchische Strukturen durch Gruppen und Wiederholungen
     (Tabellarische Daten mit beliebiger Länge)
•    Definition von Validierungsregeln, Berechnungen und Darstellung für die
     Komponenten in der Formulardefinition
•    Aktuelle Formulardaten werden zur Ausführungszeit vollständig
     serverseitig gehalten und stehen somit der weiteren Auswertung per
     Java zur Verfügung



                                                                              6
Renderer – Die Schnittstelle zum Anwender
•    Render-Engine erzeugt XHTML-Code zur Integration in beliebige Seiten
•    Datenaustausch zwischen Browser und FormContext erfolgt über
     Renderer-Implementierung
•    Für jede Komponente können ein oder auch mehrere Renderer
     verwendet werden
•    Umfangreiche Auswahl an Standard-Renderern für alle
     Komponententypen verfügbar
•    Eigene Renderer können bei Bedarf hinzugefügt werden
•    Layout-Anpassungen erfolgen über eigene CSS-Dateien




                                                                            7
Validierer
•    Sofortige Überprüfung der eingegebenen Inhalte und Anzeige
     internationalisierter Meldungen
•    Vordefinierte Validierer für Standardregeln (z.B. Textlänge, Wertebereich
     von Zahlen)
      •    Beispielcode
           <validator>
            <required/>
            <length max=“10“>
           </validator>
•    Kombination unterschiedlicher Validierer in der Formulardefinition
•    Implementierung spezifischer Validierer per Java (z.B. Adressprüfung)




                                                                                8
Berechnungen über Kalkulatoren
•    Berechnung von Komponentenwerten während der
     Formularbearbeitung
•    Werte aus anderen Komponente können für die Berechnungen
     verwendet werden; Änderungen führen zur sofortigen Neuberechnung
     in abhängigen Komponenten
•    Zahlreiche Kalkulatoren sind bereits implementiert
      •    LengthCalculator, MultiplyCalculator, ConcatCalculator, Base64Calculator,
           DateCalculator etc. (insgesamt 65 vordefinierte Kalkulatoren vorhanden)
•    Komplexe Berechnung durch Kombination bestehender oder
     Implementierung eigener Kalkulatoren möglich




                                                                                       9
Optionslisten und Bäume
•    Bereitstellung von Auswahl-Optionen für Auswahl-Renderer (z.B.
     Dropdown, Picklist) über Java-API




•    Dynamische Aktualisierung von
     Optionslisten abhängig von Eingaben
     in anderen Komponenten


•    OptionTreeFactory für Optionen mit Baumstruktur zur Auswahl in Baum-
     Darstellung



                                                                            10
Vorteile und Einsatzbereich

•    Trennung zwischen Datenerfassung im Formular und
     Anbindung der Daten an die Anwendung
•    Flexible Erweiterbarkeit per Java
•    Performant und resourcenschonend
•    Einfache Integration in jeden Servlet Container
•    Beispielhafte Einsatzbereiche
     •    E-Mail-Formulare
     •    Upload-Formulare
     •    Passwort-Validierung
     •    Umfragelisten
     •    ...
                                                        11
Veröffentlichung
•    Erste Veröffentlichung im Dezember 2009 unter einer Open-Use-Lizenz
     auf http://www.form-engine.de
•    Umfangreiche Beispiele und Tutorials
•    Regelmäßige Updates (ca. 3 mal im Jahr)
•    Support kann bei Bedarf vereinbart werden
•    Entwicklung spezieller Komponenten auf Anfrage


•    Die FormEngine in der Presse
      –  JavaMagazin 01/2010 (ToolRadar) (erschienen Dezember 2009)
      –  JavaSpektrum 04/2010 (erschienen im Juni 2010)




                                                                          12
Sie haben eine Idee oder eine Frage?
Sprechen Sie uns an!


Stefan Zorn
s.zorn@imatics.de

imatics Software GmbH


www.imatics.de  Unternehmens-Website
www.ProcessSuite.de  Produktwebsite
www.ProcessGallery.de  Prozessportal
www.form-engine.de  Basistechnologie Formulardefinition, -abarbeitung etc.

Weitere ähnliche Inhalte

Andere mochten auch

The Big One 21.04.2014
The Big One 21.04.2014The Big One 21.04.2014
The Big One 21.04.2014
Gerold Szonn
 
Vom Suchen und Finden der Influencer unter den Bloggern
Vom Suchen und Finden der Influencer unter den BloggernVom Suchen und Finden der Influencer unter den Bloggern
Vom Suchen und Finden der Influencer unter den Bloggern
ADENION GmbH
 
28 32 primeros pasos www.gftaognosticaespiritual.org
28 32 primeros pasos www.gftaognosticaespiritual.org28 32 primeros pasos www.gftaognosticaespiritual.org
28 32 primeros pasos www.gftaognosticaespiritual.org
Gran Fratervidad Tao Gnostica Espiritual Org
 
Steven jackson 1995 10.07.2014
Steven jackson 1995   10.07.2014Steven jackson 1995   10.07.2014
Steven jackson 1995 10.07.2014
Gerold Szonn
 
The Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
The Biggest Secret - Geistige Weltstrukturen von Gerold SzonnThe Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
The Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
Gerold Szonn
 
Freund, Follower, Kunde?
Freund, Follower, Kunde?Freund, Follower, Kunde?
Freund, Follower, Kunde?
gpsloco
 
Der TYPO3 File Abstraction Layer
Der TYPO3 File Abstraction LayerDer TYPO3 File Abstraction Layer
Der TYPO3 File Abstraction Layer
andreaswo
 
Frauen
FrauenFrauen
Abschlussveranstaltung Medienforschung und berufliche Bildung
Abschlussveranstaltung Medienforschung und berufliche BildungAbschlussveranstaltung Medienforschung und berufliche Bildung
Abschlussveranstaltung Medienforschung und berufliche Bildung
Andrea Lißner
 
Ezetz asmatu !
Ezetz asmatu !Ezetz asmatu !
Ezetz asmatu !
nererekal
 
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und ReichweiteNeue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
ADENION GmbH
 

Andere mochten auch (16)

Integr
IntegrIntegr
Integr
 
Unternehmergeist und Gratuität
Unternehmergeist und GratuitätUnternehmergeist und Gratuität
Unternehmergeist und Gratuität
 
The Big One 21.04.2014
The Big One 21.04.2014The Big One 21.04.2014
The Big One 21.04.2014
 
Vom Suchen und Finden der Influencer unter den Bloggern
Vom Suchen und Finden der Influencer unter den BloggernVom Suchen und Finden der Influencer unter den Bloggern
Vom Suchen und Finden der Influencer unter den Bloggern
 
28 32 primeros pasos www.gftaognosticaespiritual.org
28 32 primeros pasos www.gftaognosticaespiritual.org28 32 primeros pasos www.gftaognosticaespiritual.org
28 32 primeros pasos www.gftaognosticaespiritual.org
 
Steven jackson 1995 10.07.2014
Steven jackson 1995   10.07.2014Steven jackson 1995   10.07.2014
Steven jackson 1995 10.07.2014
 
The Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
The Biggest Secret - Geistige Weltstrukturen von Gerold SzonnThe Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
The Biggest Secret - Geistige Weltstrukturen von Gerold Szonn
 
KonzeptNnetzaktivismus
KonzeptNnetzaktivismusKonzeptNnetzaktivismus
KonzeptNnetzaktivismus
 
Freund, Follower, Kunde?
Freund, Follower, Kunde?Freund, Follower, Kunde?
Freund, Follower, Kunde?
 
Der TYPO3 File Abstraction Layer
Der TYPO3 File Abstraction LayerDer TYPO3 File Abstraction Layer
Der TYPO3 File Abstraction Layer
 
Frauen
FrauenFrauen
Frauen
 
Porsche
PorschePorsche
Porsche
 
Abschlussveranstaltung Medienforschung und berufliche Bildung
Abschlussveranstaltung Medienforschung und berufliche BildungAbschlussveranstaltung Medienforschung und berufliche Bildung
Abschlussveranstaltung Medienforschung und berufliche Bildung
 
Ezetz asmatu !
Ezetz asmatu !Ezetz asmatu !
Ezetz asmatu !
 
1 kaufe einen_hund1
1 kaufe einen_hund11 kaufe einen_hund1
1 kaufe einen_hund1
 
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und ReichweiteNeue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
Neue Premium-Angebote bei PR-Gateway bringen Relevanz und Reichweite
 

Ähnlich wie imatics FormEngine

Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
adesso AG
 
JavaFX Real-World Apps
JavaFX Real-World AppsJavaFX Real-World Apps
JavaFX Real-World Apps
Alexander Casall
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of Life
Kremer Consulting
 
MEAN SCS in der Cloud
MEAN SCS in der CloudMEAN SCS in der Cloud
MEAN SCS in der Cloud
Torsten Fink
 
GWT – Google Web Toolkit in der Praxis
GWT – Google Web Toolkit in der PraxisGWT – Google Web Toolkit in der Praxis
GWT – Google Web Toolkit in der Praxis
Cenarion Information Systems GmbH
 
AwareIM - Low-Code Entwicklungsplattform
AwareIM - Low-Code EntwicklungsplattformAwareIM - Low-Code Entwicklungsplattform
AwareIM - Low-Code Entwicklungsplattform
Jiri Kaufhold
 
2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc
Daniel Fisher
 
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DNUG e.V.
 
Basta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der CloudBasta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der Cloud
Marc Müller
 
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
DNUG e.V.
 
Python in der Luft- und Raumfahrt
Python in der Luft- und RaumfahrtPython in der Luft- und Raumfahrt
Python in der Luft- und Raumfahrt
Andreas Schreiber
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systeme
rdmeyer
 
On the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a ServiceOn the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a Service
Stefan Kolb
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Aarno Aukia
 
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
PROJECT CONSULT Unternehmensberatung Dr. Ulrich Kampffmeyer GmbH
 
Systemvorstellung: dante cms im Überblick
Systemvorstellung: dante cms im ÜberblickSystemvorstellung: dante cms im Überblick
Systemvorstellung: dante cms im Überblick
a3 systems GmbH
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
DNUG e.V.
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferay
inovex GmbH
 

Ähnlich wie imatics FormEngine (20)

Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
Wozu Portlets – reichen HTML5 und Rest nicht aus für moderne Portale?
 
JavaFX Real-World Apps
JavaFX Real-World AppsJavaFX Real-World Apps
JavaFX Real-World Apps
 
Continuous Delivery as a Way of Life
Continuous Delivery as a Way of LifeContinuous Delivery as a Way of Life
Continuous Delivery as a Way of Life
 
MEAN SCS in der Cloud
MEAN SCS in der CloudMEAN SCS in der Cloud
MEAN SCS in der Cloud
 
GWT – Google Web Toolkit in der Praxis
GWT – Google Web Toolkit in der PraxisGWT – Google Web Toolkit in der Praxis
GWT – Google Web Toolkit in der Praxis
 
AwareIM - Low-Code Entwicklungsplattform
AwareIM - Low-Code EntwicklungsplattformAwareIM - Low-Code Entwicklungsplattform
AwareIM - Low-Code Entwicklungsplattform
 
2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc2007 - Basta!: Nach soa kommt soc
2007 - Basta!: Nach soa kommt soc
 
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Die Domino REST API - Konzepte und Hintergruende.pdf
 
Basta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der CloudBasta 2016 - Test- und Releaseumgebungen in der Cloud
Basta 2016 - Test- und Releaseumgebungen in der Cloud
 
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdfDACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
DACHNUG50 Domino REST API - Konzepte und Hintergruende.pdf
 
Python in der Luft- und Raumfahrt
Python in der Luft- und RaumfahrtPython in der Luft- und Raumfahrt
Python in der Luft- und Raumfahrt
 
Kevin Hofer
Kevin HoferKevin Hofer
Kevin Hofer
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systeme
 
On the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a ServiceOn the Portability of Applications in Platform as a Service
On the Portability of Applications in Platform as a Service
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
 
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
[DE] Workflow vom mainframe ins internet | Dr. Ulrich Kampffmeyer | Safe Tagu...
 
GWT
GWTGWT
GWT
 
Systemvorstellung: dante cms im Überblick
Systemvorstellung: dante cms im ÜberblickSystemvorstellung: dante cms im Überblick
Systemvorstellung: dante cms im Überblick
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferay
 

Mehr von imatics Software GmbH

Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
imatics Software GmbH
 
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
imatics Software GmbH
 
Social Media im Gesundheitswesen
Social Media im GesundheitswesenSocial Media im Gesundheitswesen
Social Media im Gesundheitswesen
imatics Software GmbH
 
Patienten in der Cloud
Patienten in der CloudPatienten in der Cloud
Patienten in der Cloud
imatics Software GmbH
 
Elektronische Patientenakte EPIC Health
Elektronische Patientenakte EPIC HealthElektronische Patientenakte EPIC Health
Elektronische Patientenakte EPIC Health
imatics Software GmbH
 
Umfrage iPad im Gesundheitwesen
Umfrage iPad im GesundheitwesenUmfrage iPad im Gesundheitwesen
Umfrage iPad im Gesundheitwesen
imatics Software GmbH
 
SIBB Netzwerk Gesundheit
SIBB Netzwerk GesundheitSIBB Netzwerk Gesundheit
SIBB Netzwerk Gesundheit
imatics Software GmbH
 
BPMS Studie 2008
BPMS Studie 2008BPMS Studie 2008
BPMS Studie 2008
imatics Software GmbH
 
Mobile Motion
Mobile MotionMobile Motion
Mobile Motion
imatics Software GmbH
 
Imatics Corporate Presenation (EN)
Imatics Corporate Presenation (EN)Imatics Corporate Presenation (EN)
Imatics Corporate Presenation (EN)
imatics Software GmbH
 
imatics ProcessSuite
imatics ProcessSuiteimatics ProcessSuite
imatics ProcessSuite
imatics Software GmbH
 
imatics Kurzpräsentation
imatics Kurzpräsentationimatics Kurzpräsentation
imatics Kurzpräsentation
imatics Software GmbH
 
iPad conhIT 2010
iPad conhIT 2010iPad conhIT 2010
iPad conhIT 2010
imatics Software GmbH
 

Mehr von imatics Software GmbH (14)

Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
Konzeption einer Industrie- in-Klinik-Plattform für Brandenburg – Das Verbund...
 
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
Grundlagen Industrie in-Klinik und seine Bedeutung für Regionen am Beispiel W...
 
Social Media im Gesundheitswesen
Social Media im GesundheitswesenSocial Media im Gesundheitswesen
Social Media im Gesundheitswesen
 
Patienten in der Cloud
Patienten in der CloudPatienten in der Cloud
Patienten in der Cloud
 
Elektronische Patientenakte EPIC Health
Elektronische Patientenakte EPIC HealthElektronische Patientenakte EPIC Health
Elektronische Patientenakte EPIC Health
 
Umfrage iPad im Gesundheitwesen
Umfrage iPad im GesundheitwesenUmfrage iPad im Gesundheitwesen
Umfrage iPad im Gesundheitwesen
 
SIBB Netzwerk Gesundheit
SIBB Netzwerk GesundheitSIBB Netzwerk Gesundheit
SIBB Netzwerk Gesundheit
 
BPMS Studie 2008
BPMS Studie 2008BPMS Studie 2008
BPMS Studie 2008
 
Mobile Motion
Mobile MotionMobile Motion
Mobile Motion
 
Imatics Corporate Presenation (EN)
Imatics Corporate Presenation (EN)Imatics Corporate Presenation (EN)
Imatics Corporate Presenation (EN)
 
imatics ProcessSuite
imatics ProcessSuiteimatics ProcessSuite
imatics ProcessSuite
 
imatics Kurzpräsentation
imatics Kurzpräsentationimatics Kurzpräsentation
imatics Kurzpräsentation
 
iPad conhIT 2010
iPad conhIT 2010iPad conhIT 2010
iPad conhIT 2010
 
imatics & ModelLabs Integration
imatics & ModelLabs Integrationimatics & ModelLabs Integration
imatics & ModelLabs Integration
 

imatics FormEngine

  • 1. FormEngine imatics Software GmbH Java-Framework für dynamische Web-Formulare
  • 2. imatics Lösungs-Portfolio Web, Portale ProcessPortal ProcessGallery Applika- tionen ITrack Anamnese Mobil (iPhone, iPad, Blackberry, Android) Netzwerkportal Umfragen Anwendungs- infrastruktur Content- & Portal- FormEngine (FE) ProcessSuite (IPS) management (ICM) Backend- Systeme © imatics Software GmbH 2
  • 3. Zielsetzung •  Formulardefinition zur Laufzeit über eine Java-API oder XML •  Sofortige Validierung der Eingaben; Implementierung der Validierer mit Java (kein Javascript) •  Dynamische Berechnung von Feldinhalten abhängig von anderen Feldern •  Abbildung komplexer Datenstrukturen wie Gruppen und Wiederholungen (Repeats) •  Internationalisierung aller Komponenten (Beschriftung, Auswahlwerte, Datumseingabe) •  Einfache Integration in beliebige HTML-Seiten •  Flexible Erweiterbarkeit um neue Renderer, Validierer usw. 3
  • 4. Historie •  Entwicklungsbeginn im Januar 2007 •  Integration in die imatics *ProcessSuite im August 2007 zur dynamischen Erzeugung benutzerdefinierter Formulare •  2008/2009 projektgetriebene Weiterentwicklung •  Einsatz in mehreren Kundenprojekten •  Veröffentlichung unter einer Open-Use-Lizenz im Dezember 2009 •  Nutzung auf Websites diverser mittelgroßer – sehr großer Unternehmen •  Einsatz als Basistechnologie bei mehreren IT-Systemhäusern und Integratoren in D-A-CH 4
  • 5. Architektur •  Datenhaltung in serverseitigem FormContext •  HTML-Darstellung und Eingabe über Renderer (Konvertierung der Daten) •  Formular-Logik über dynamische Validierer und Kalkulatoren •  Anbindung an Back-End über Konnektoren •  Anbindung auch auf andere Technologien (Swing, XCode...) adaptierbar 5
  • 6. Komponenten – Definition der Datenstruktur •  Definition der Datenstruktur eines Formulars per XML oder über die Java API •  Für Komponenten können beliebige Datentypen festgelegt werden (Integer, Text, Binärdaten, Datum usw.) •  Hierarchische Strukturen durch Gruppen und Wiederholungen (Tabellarische Daten mit beliebiger Länge) •  Definition von Validierungsregeln, Berechnungen und Darstellung für die Komponenten in der Formulardefinition •  Aktuelle Formulardaten werden zur Ausführungszeit vollständig serverseitig gehalten und stehen somit der weiteren Auswertung per Java zur Verfügung 6
  • 7. Renderer – Die Schnittstelle zum Anwender •  Render-Engine erzeugt XHTML-Code zur Integration in beliebige Seiten •  Datenaustausch zwischen Browser und FormContext erfolgt über Renderer-Implementierung •  Für jede Komponente können ein oder auch mehrere Renderer verwendet werden •  Umfangreiche Auswahl an Standard-Renderern für alle Komponententypen verfügbar •  Eigene Renderer können bei Bedarf hinzugefügt werden •  Layout-Anpassungen erfolgen über eigene CSS-Dateien 7
  • 8. Validierer •  Sofortige Überprüfung der eingegebenen Inhalte und Anzeige internationalisierter Meldungen •  Vordefinierte Validierer für Standardregeln (z.B. Textlänge, Wertebereich von Zahlen) •  Beispielcode <validator> <required/> <length max=“10“> </validator> •  Kombination unterschiedlicher Validierer in der Formulardefinition •  Implementierung spezifischer Validierer per Java (z.B. Adressprüfung) 8
  • 9. Berechnungen über Kalkulatoren •  Berechnung von Komponentenwerten während der Formularbearbeitung •  Werte aus anderen Komponente können für die Berechnungen verwendet werden; Änderungen führen zur sofortigen Neuberechnung in abhängigen Komponenten •  Zahlreiche Kalkulatoren sind bereits implementiert •  LengthCalculator, MultiplyCalculator, ConcatCalculator, Base64Calculator, DateCalculator etc. (insgesamt 65 vordefinierte Kalkulatoren vorhanden) •  Komplexe Berechnung durch Kombination bestehender oder Implementierung eigener Kalkulatoren möglich 9
  • 10. Optionslisten und Bäume •  Bereitstellung von Auswahl-Optionen für Auswahl-Renderer (z.B. Dropdown, Picklist) über Java-API •  Dynamische Aktualisierung von Optionslisten abhängig von Eingaben in anderen Komponenten •  OptionTreeFactory für Optionen mit Baumstruktur zur Auswahl in Baum- Darstellung 10
  • 11. Vorteile und Einsatzbereich •  Trennung zwischen Datenerfassung im Formular und Anbindung der Daten an die Anwendung •  Flexible Erweiterbarkeit per Java •  Performant und resourcenschonend •  Einfache Integration in jeden Servlet Container •  Beispielhafte Einsatzbereiche •  E-Mail-Formulare •  Upload-Formulare •  Passwort-Validierung •  Umfragelisten •  ... 11
  • 12. Veröffentlichung •  Erste Veröffentlichung im Dezember 2009 unter einer Open-Use-Lizenz auf http://www.form-engine.de •  Umfangreiche Beispiele und Tutorials •  Regelmäßige Updates (ca. 3 mal im Jahr) •  Support kann bei Bedarf vereinbart werden •  Entwicklung spezieller Komponenten auf Anfrage •  Die FormEngine in der Presse –  JavaMagazin 01/2010 (ToolRadar) (erschienen Dezember 2009) –  JavaSpektrum 04/2010 (erschienen im Juni 2010) 12
  • 13. Sie haben eine Idee oder eine Frage? Sprechen Sie uns an! Stefan Zorn s.zorn@imatics.de imatics Software GmbH www.imatics.de  Unternehmens-Website www.ProcessSuite.de  Produktwebsite www.ProcessGallery.de  Prozessportal www.form-engine.de  Basistechnologie Formulardefinition, -abarbeitung etc.