© 2000 by matrix-computer1 upline ® - the application framework ein generisches information...
TRANSCRIPT
© 2000 by Matrix-Computer 1
Upline® - The Application Framework
Ein generisches Information Management System
© 2000 by Matrix-Computer 2
Gliederung
GrundlagenWas ist das Application Framework Upline® ?
EinsatzszenarienWelche Vorteile bringt mir Upline® ?
TechnikDie verschiedenen Module im Detail
HintergrundVorteile der 3-Tier – Architektur von Upline®
BeispieleReferenzen
© 2000 by Matrix-Computer 3
Grundlagen
Frei konfigurierbares Information Management System mit höchster Performance
Arbeitet mit jeder ODBC – fähigenDatenbank
Modulares Multi-Tier Application Framework als Basis eigenentwickelter Client/Server-Anwendungen
Extraktion komplexer Informationen aus heterogenen EDV-Strukturen
Einfache Darstellung umfangreicher Information
© 2000 by Matrix-Computer 4
Was ist Upline®
Schnell integrierbar in bestehende EDV durch flexible Konzeption und simple Installation
Leicht erlernbar durch einfache Skriptsprache für zeitnahe Entwicklung unternehmensweiter Applikationen
Zentrale Administration für alle Clients des Unternehmens
Geringer Ressourcenverbrauch und höchste Performance durch nativen Code
© 2000 by Matrix-Computer 5
Die Basis-Module
Listgenerator
Maskengenerator
Tabellengenerator
Chartgenerator
Reportgenerator
Hierarchiegenerator
© 2000 by Matrix-Computer 6
Einsatzszenarien
Sie haben bestehende Systeme zur Visualisierung Ihrer Datenbestände, sind aber an unflexible Programme und starre Strukturen gebunden.
Ihre kleine Single-User-Datenbank ist über die Jahre gewachsen oder soll nun für den Multi-User-Betrieb angepasst werden.
Bestehende alte Software soll um Listen, Reports oder eCommerce-Funktionalität erweitert werden; dies ist aber nicht realisierbar oder viel zu teuer.
© 2000 by Matrix-Computer 7
Einsatzszenarien
Sie wünschen sich eine Umstellung von Terminal/Mainframe-Struktur auf moderne Client/Server-Umgebung.
Die Datenbank besteht und Ihnen fehlt eine benutzerfreundliche Oberfläche
Außendienst soll unproblematisch per Modem (auch Handy-Modem) oder über Internet Bestände abrufen oder Bestellungen/Aufträge durchgeben können
Provisionsberechnungen erfordern komplexe Verteilungsschlüssel, die Ihnen kein Standardprodukt anbietet.
© 2000 by Matrix-Computer 8
Einsatzszenarien
Standardprodukte erfüllen Ihre Vorstellungen nicht, Individuallösungen sind zu teuer
Sie brauchen individualisierten Zugriff auf Echtzeit-Daten
Ihre Anforderungen an die Auskunftsfähigkeit bedarf schneller Auswertungen ohne Batch-Jobs
© 2000 by Matrix-Computer 9
Einsatzgebiete
Controlling konzernweit
Logistik
Auftragsabwicklung
Callcenter- undHotline-Management
Kundenverwaltung
Außendienstanbindung
Provisionsabrechnung
Prämienentlohnung
Materialfluss
Garantieabwicklung
© 2000 by Matrix-Computer 10
Implementationsstrategie
MATRIX-ComputerUpline®-Entwicklung
SystemhäuserIntegration Center
KundeAnwendung
MATRIX-ComputerIntegration Center
© 2000 by Matrix-Computer 11
Technik
Client
Darstellung in intelligenten und aktiven Ansichten
Integration von Fremdprogrammen
Kommunikation über 1 Socket
Server
Applikationslogik
Zugriff auf RDBMS
Externe Module und Programme
Skripting mit „embedded Perl“
DatenSQL Datenbank
Gemeinsame Daten
Trigger, Regeln, etc.
Upline Server
Applikationslogik
Schnittstellen
ODBC
externeErweiterungen
Upline Client Applikation
Benutzeroberfläche
Eingabeüberprüfung
TCP/IP
© 2000 by Matrix-Computer 12
Technische Details
ModularerAufbau
Multi-Tier-Konzept
OptionaleKryptographie
Frei definierbareBildschirme
© 2000 by Matrix-Computer 13
Upline® - Kernmodule
Generische Ansichten
Frames
Listgenerator
Tabellengenerator
Chartgenerator
HTML-Ansicht
Integrierte Menüs
Reportgenerator
Hierarchiegenerator
Systemprozeduren
Generische Dialoge
Maskengenerator
Einbettung von generischen Ansichten
Benutzer- und Gruppenrechte
© 2000 by Matrix-Computer 14
Listgenerator
Definition Tabelle „Turnover“
beinhaltet alle monatlichen Umsätze
Festlegung der Abfrage:„SELECT 0 as ID, 0 as TYPE, 3 as ICON, YEAR, MONTH, SUMNET FROM Turnover“
Festlegung der Spaltentypen:„3.7\10\Jahr@3\10\[email protected]\20\Gesamtbeträge@“
Eintrag in der Tabelle Lists unter der ID „STATINV“
Client Sortieren Kopieren Gruppieren Drucken Und mehr...
© 2000 by Matrix-Computer 15
Chartgenerator
Die gerade eben erstellte Liste soll als Barchart ausgegeben werden
Die Ausgabe soll zusammen mit der Liste in einem Fenster erfolgen
Eintrag in Tabelle „Views“:
hsplit 50,50 width 3 moveable list "Rechnungslegung", "STATINV" end chart "Rechnungslegung", "STATINV" barchart axislabel "x", "Monat" axislabel "y", "Umsatz" endend
© 2000 by Matrix-Computer 16
Tabellengenerator
Die dynamischen Spreadsheets werden in der Datenbank hinterlegt.
Einzelne Zellen und auch Zellenbereiche können mit verschiedenen SQL-Abfragen gefüllt werden.
© 2000 by Matrix-Computer 17
Generische Ansichten
Frametechnik erlaubt freie Definition von Ansichten
Kombination verschiedener Ansichtstypen in einer Ansicht
Kaskadierbar
vsplit 20 width 3 moveable functions tabstop title "Administration" underline separator itemgroup "TYPE“ "Hierarchy Generator", „ADM_HIER„ "List Generator", „ADM_LIST“ default "Table Generator", „ADM_TABLE„ "Generic Views",„ADM_VIEWS„ "Report Generator", „ADM_REP„ "Generic Dialogs", „ADM_DLG„ "Procedure Management",„ADM_PROC„ end end hsplit 50,50 width 3 moveable generic "{TYPE:RAWVALUE}" end html "http://www.upline.de" end endend
© 2000 by Matrix-Computer 18
Generische Ansichten
vsplit 20 width 3 moveable functions tabstop title "Administration" underline separator itemgroup "TYPE“ "Hierarchy", „ADM_HIER„ "List Generator", „ADM_LIST“ "Table Generator", „ADM_TABLE„ "Generic Views",„ADM_VIEWS„ "Report Generator", „ADM_REP„ "Generic Dialogs", „ADM_DLG„ "Procedures",„ADM_PROC“ end end hsplit 50,50 width 3 moveable generic "{TYPE:RAWVALUE}" end html "http://www.upline.de" end endend
In der Funktionsansicht werden Auswahl- Ansichts- und Prozedur-funktionen definiert.
© 2000 by Matrix-Computer 19
Upline® - Reportgenerator
Unterschiedliche Vorlagen je Sprache
Trennung in Erstseite, mittlere Seiten und Endseite
Unterstützung von „printf“ Formatierungen
ReportGenerator
FeldabfrageSQL-Query
Typ- und Formatdefinition
RTF-Vorlage(n)Variable Felder
optionale 1:n Liste
1:n ListenabfrageSQL-Query
Typ- und Formatdefinition
Ausdruckinteraktiv am Client-PC
Ausdruckautomatisch vom Server aus
© 2000 by Matrix-Computer 20
Upline® - Reportgenerator
ReportGenerator
© 2000 by Matrix-Computer 21
Systemprozeduren
Serverseitige Ausführung
embedded Perl
Client Notifications
Aufruf von externen Programmen und DLL-Funktionen
Integrierter e-Mail Versand via SMTP
Net-Messages
AS/400 RPGs
Userlog
Errorlog (auch per e-Mail)
SQL-Queries
Embedded Perl Script
© 2000 by Matrix-Computer 22
Generische Dialoge
Modale Masken
Suchdialoge
Präsentationslogik definiert durch Skriptsprache
Generische Ansichten integrierbar
DialogGenerator
Dialog Definition
Skript in der Datenbank
definiert Präsentationslogik
Dialog Abfragen
SQL-Queries in der Datenbank
definieren Applikationslogik
Feld Abfragen
SQL-Queries in der Datenbank
definieren Applikationslogik
Systemprozeduren
Prozeduren
definieren Applikationslogik
Daten
© 2000 by Matrix-Computer 23
Generische Dialoge
dialog "~[Order]",-1,-1,340,210,"","SACALCORDER" page "~[Vehicle definition]" group "~[Vehicle Info]",0,0,160,135 end droplist "~[FRID]",5,18,80,120 as "WPID" columns 20,90 notempty end droplist "~[MCCD]",5,43,150,120 as "ALLO" columns 70,150 uses "WPID" notempty end droplist "~[COCD]",5, 68,150,120 as "INOR" columns 70,150 uses "WPID","ALLO" notempty end droplist "~[UPCD]",5,93,150,120 as "UPCD" columns 70,150 uses "WPID","ALLO" notempty end edit "~[PROD]",5,118,70,11,8 as "PROD" end group "~[Order Info]",165,0,100,135 end edit "~[ORNR]",170,18,50,11 as "ID1" counter "ORDER ID" countermessage "New order created with number %s" end edit "~[REFN]",170,43,80,11,10 as "REFN" end group "~[Offer]",0,140,255,29 end checkbox "~[Offer]",80,155,30,10 as "OFFER" boolasvalue end dateedit "~[OFFR]",115,155,60,11 as "OFFR" enableby "OFFER" format "%04d%02d%02d" setempty end end...
Feldabfragen
© 2000 by Matrix-Computer 24
Benutzerrechte
Frei definierbare Rechte
Rechte-Zuordnung zu Benutzern und Benutzergruppen
Benutzerverwaltung unabhängig von OS
Kontrollierte Rechtevergabe
Serverseitige Validierung bzw. Freischaltung einzelner Funktionen (Listen, Prozeduren, etc.)
© 2000 by Matrix-Computer 25
Upline® - Integration
Ideal: Client-Server (nur 1 Socket, frei wählbar, ideal für Firewalls)
Optional: Lokalbetrieb (kleine Installationen)
Zentrale Administrierbarkeit: (Präsentations- und Applikationslogik in Datenbank hinterlegt)
ODBC Typ 2
Perl 5.053 (CPAN-Distribution)
Plattform: (Client: Windows 9x+, Server: Windows NT 4.0+)Unix-Portierung auf Linux und Solaris in Vorbereitung
Verschlüsselung mit CryptoAPI
Server-Monitor
Scheduler
© 2000 by Matrix-Computer 26
Hintergrund
2-Tier – Architektur
bekannte 2-Schicht-Struktur der meisten Client/Server Applikationen, d. h. die Clients greifen über das LAN auf einen Datenbankserver zu.
Server müssen alle zu verarbeitenden Daten an die Clients übertragen. Server verfügen hierbei nicht über eigene Methoden zur Aufbereitung der Daten.
Beliebt, da viele RAD-Tools verfügbar (MS-Access, Visual Basic, Power-Builder, etc.)
Client
Daten-Server
LeistungsfähigesLAN
© 2000 by Matrix-Computer 27
Nachteile der 2-Schicht-Lösungam Client
Client muss die Verarbeitung und Darstellung der Information übernehmen große, monolithische und teuer zu wartende Applikationen („Fat Clients“).
Entwickler brauchen detaillierte Kenntnisse über API der Fenstersysteme
Viele zum Betrieb notwendige Programme und Treiber verursachen leicht Versionskonflikte hoher Administrationsaufwand. Zentrale Kontrolle meist schwierig
Alle Daten müssen trotz SQL-Aufbereitung der Clients über das LAN transportiert werden erhöhte Netzlast oder teuere Netzwerktechnik.
© 2000 by Matrix-Computer 28
Nachteile der 2-Schicht-Lösung am Client
Transaktionsverhalten clientgesteuert, daher Problem verteilter „Updates“ – bei Programmerneuerungen müssen alle angeschlossenen Clients einzeln aktualisiert werden hoher Einsatz von Manpower
Deutliche Sicherheitsprobleme (PCs gelten als „untrusted“ und einfach zu knacken – Authentisierung schwieriger als bei Servern) und dennoch Übertragung sensibler Daten für Betrieb notwendig.
© 2000 by Matrix-Computer 29
Nachteile der 2-Schicht-Lösung am Server
Server können nur Daten anbieten, nicht aber deren Verarbeitung vornehmen – „Stored Procedures“ beschränkt und nur proprietär vorhanden.
Applikationslogik an einzelnen Anwendungen gebunden – daher ist deren Verwendbarkeit nur sehr eingeschränkt möglich bzw. muss jedes mal neu programmiert werden.
Verteilungsproblem bei neuer Version – Anwender muss installieren – keine Erfolgsgarantie
© 2000 by Matrix-Computer 30
Nachteile der 2-Schicht-Lösung am Server
Globale Änderungen am Programmcode (bedingt durch gesetzliche, geschäftliche Änderungen etc.) ziehen Anpassungen am gesamten System nach sich – Qualitätssicherung vieler Programme in teils unterschiedlichen Umgebungen (Win95, Win98, NT4, Win2000 etc.) – drastischer Einfluss auf Change-Management
Automatische Verteilung der monolithischen Applikationen (z.B. im Login-Skript) führen prinzipbedingt bis zu Überlastungen des LAN
© 2000 by Matrix-Computer 31
3-Schicht-Architektur
Klare Trennung von Präsentationslogik und Applikationslogik, daher starke Wiederverwendbarkeit
Nähe von Business-Objekten zur Datenspeicherung auf physisch gleichen oder nahen Servern Übertragung nur des Resultats zum Client geringe Netzwerklast
Realisierung des Datenschutzes auf trusted Servern viel einfacher und effektiver als bei Hunderten von Clients
Verlagerung der Applikationslogik vom Client zum Server
© 2000 by Matrix-Computer 32
3-Schicht-Architektur
Komponenten der gesamten Software können zentral gewartet und aktualisiert werden – Change Management sehr einfach
Dynamische Lastverteilung („Load Balancing“) möglich – Einsatz im eCommerce als Backend
Wrapping möglich, daher langsame und transparente Migration umsetzbar
Entkopplung von Client und Datenspeicherung Wechsel der Speicherungsstrategie Client-unabhängig
© 2000 by Matrix-Computer 33
Die 3 Schichten von Upline®
Client
Präsentation der Daten Entgegennahme von
Benutzer-Events
Applikations-Server
Applikationslogik Business - Objekte Schutz des Datenbestandes
vor direktem Zugriff
Datenbank-Server
RDBMS
Daten
SQL Datenbank
Gemeinsame Daten
Trigger, Regeln, etc.
Upline Server
Applikationslogik
Schnittstellen
ODBC
externeErweiterungen
Upline Client Applikation
Benutzeroberfläche
Eingabeüberprüfung
TCP/IP
© 2000 by Matrix-Computer 34
Kritische Erfolgsfaktoren
Technische Infrastruktur TCP/IP LAN und WAN Upline
System-Schnittstellen Dauerhaft – sorgfältiger
Entwurf und Dokumentation Entscheidend für die spätere
Wartung Transaktionen
Datenintegrität gewährleistet „2-Phase-Commit“ Verschachtelte Transaktionen
Sicherheit Hoher Anspruch an verteiltes
System „Secure Socket Layer“ SSL Physische Server-Plazierung
© 2000 by Matrix-Computer 35
Effizienzgewinn - Upline®
Kein kurzfristig fokussierter, tool–basierter Ansatz mit langfristig fraglichem Ausgang
Brainware mit definiertem Verhalten
Architekturpapier als Standarddokument für alle Prozessbeteiligten
reduzierter Wartungsaufwand führt mittel- und langfristig zu zusätzlichem Gewinn
© 2000 by Matrix-Computer 36
Realisierung
Funktionalität
Performance
Change-Management
Interoperabilitätder Komponenten
Sicherheit
Definition
Systemtechniker
Applikations-Entwickler
Management
OperationelleMitarbeiter
Kompetenz
© 2000 by Matrix-Computer 37
Beispiele
Automotive Sales
Lottospielen mit System
Call-Center Infosystem und FAQ
Realisierte Anwendungen
© 2000 by Matrix-Computer 38
Bestellungsübersicht
Übersicht über bestellte Fahrzeuge
Detaillierte Liste der Ausstattung
Information über Ablauf in der Produktion
Übersicht über zugehörige Dokumente
© 2000 by Matrix-Computer 39
Bestellungabwicklung
Server Überprüfung der Bestellung Übertragung an Hersteller
Client Auswahl des
Fahrzeugs und der Farbe
Auswahl der Ausstattung und des Zubehörs aus fahrzeugspezifischer Liste
Auswahl von Ausstattungspaketen
© 2000 by Matrix-Computer 40
Lottospielen mit System
Verwaltung einer Tippgemeinschaft im Strukturvertrieb
© 2000 by Matrix-Computer 41
Komplettverwaltung
Ermittlung &Versand der Zahlenreihen
Mitspielerverwaltung
Lottoscheinerstellung
Quotenverwaltung
Gewinn-Benachrichtigung
Provisionsabrechnung
© 2000 by Matrix-Computer 42
Call-In Infosystem
Erfassung von Kundenanfragen direkt in der telefonischen Auftragsannahme
Umsatzoptimierung durch Feedback
Hohe Informationstransparenz und schneller Zugriff für sofortige Beantwortung von Kundenfragen am Telefon zu ermöglichen ( weniger Rückrufe)
Erfassung detaillierter Produktinfos
Pflege eines „Frequent Asked Questions“ Systems
Einbindung des Intranet des Auftraggebers
© 2000 by Matrix-Computer 43
Call-In Infoseite
FAQ und Produktinfos im Überblick
Volltextsuche
Internet- undIntranet-links
Sortiments-verwaltung
Mehrere Daten-quellen in einerMaske vereinbar