Universität Paderborn/Informatik einige Kunden der letzten 12 Monate:

18
Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000 Vergleichender Überblick Vergleichender Überblick über über gängige Technologien für gängige Technologien für typische typische Internetanwendungen im Internetanwendungen im Unternehmen Unternehmen Prof. Dr. Stefan Böttcher Prof. Dr. Stefan Böttcher Universität Paderborn/Informatik Universität Paderborn/Informatik http://www.uni-paderborn.de/cs/boettcher http://www.uni-paderborn.de/cs/boettcher

description

Vergleichender Überblick über gängige Technologien für typische Internetanwendungen im Unternehmen Prof. Dr. Stefan Böttcher Universität Paderborn/Informatik http://www.uni-paderborn.de/cs/boettcher. Universität Paderborn/Informatik einige Kunden der letzten 12 Monate:. - PowerPoint PPT Presentation

Transcript of Universität Paderborn/Informatik einige Kunden der letzten 12 Monate:

Page 1: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Vergleichender Überblick Vergleichender Überblick über über

gängige Technologien für gängige Technologien für typische typische

Internetanwendungen im Internetanwendungen im UnternehmenUnternehmen

Prof. Dr. Stefan Böttcher Prof. Dr. Stefan Böttcher Universität Paderborn/InformatikUniversität Paderborn/Informatik

http://www.uni-paderborn.de/cs/boettcherhttp://www.uni-paderborn.de/cs/boettcher

Page 2: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Universität Universität Paderborn/Informatik Paderborn/Informatik einige einige

Kunden der letzten 12 Monate: Kunden der letzten 12 Monate:

Bosch Telecom (Backnang), Cards (Köln), Casenterprises (Hamburg), Bosch Telecom (Backnang), Cards (Köln), Casenterprises (Hamburg), DaimlerChrysler (Esslingen), DAAD (Bonn), DFG (Bonn), Fujitsu-Siemens DaimlerChrysler (Esslingen), DAAD (Bonn), DFG (Bonn), Fujitsu-Siemens (Walldorf), GiSmbH (Lippstadt), HNI (Paderborn), Logas (Hamburg), (Walldorf), GiSmbH (Lippstadt), HNI (Paderborn), Logas (Hamburg), Managementcircle (Eschborn), MSWWF (Düsseldorf), myview Managementcircle (Eschborn), MSWWF (Düsseldorf), myview (Paderborn), Ordix (Paderborn), ORGA (Paderborn), Otto Versand (Paderborn), Ordix (Paderborn), ORGA (Paderborn), Otto Versand (Hamburg), Plenum Systeme (Wiesbaden), Poet (Hamburg), s&n (Hamburg), Plenum Systeme (Wiesbaden), Poet (Hamburg), s&n (Paderborn), sd&m (München), SDRC (Neu Isenburg), SI&O (Köln), (Paderborn), sd&m (München), SDRC (Neu Isenburg), SI&O (Köln), Siemens IDN (Paderborn), smDelta (Kaarst), Stadt Paderborn, Star Siemens IDN (Paderborn), smDelta (Kaarst), Stadt Paderborn, Star Office (Hamburg), Unity (Paderborn), XCC (Karlsruhe), ...Office (Hamburg), Unity (Paderborn), XCC (Karlsruhe), ...

• je ca. 25% : <25 , 25-100 , 100-500 , >500 MAje ca. 25% : <25 , 25-100 , 100-500 , >500 MA

• <30% in PB und OWL , >70% außerhalb<30% in PB und OWL , >70% außerhalb

Page 3: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Typische Typische InternetanwendungenInternetanwendungen

1. Zuerst: email, ftp, telnet, http, ..., Datenbanken 1. Zuerst: email, ftp, telnet, http, ..., Datenbanken 2. Informationsangebote über Produkte, ...2. Informationsangebote über Produkte, ...3. Produkt-, Rechnungs-, ... -datenaustausch3. Produkt-, Rechnungs-, ... -datenaustausch4. Verteilte Entwicklung, Planung, Konstruktion, ...4. Verteilte Entwicklung, Planung, Konstruktion, ...5. Bestellservice für Waren, Dienste, Information5. Bestellservice für Waren, Dienste, Information6. Agenten für Ein-/Verkauf, Planung, Information 6. Agenten für Ein-/Verkauf, Planung, Information 7. persönliche7. persönliche Dienste: “myNewsDienste: “myNews imim HierHier undund Jetzt“Jetzt“8. ... 8. ... beliebige Dienste / beliebige Server beliebige Dienste / beliebige Server

Page 4: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Technologien zur Realisierung Technologien zur Realisierung von Diensten im Web von Diensten im Web (HTTP, ...)(HTTP, ...)

• führende Client-Technologien: führende Client-Technologien: Web-Browser (und Mail,...) auf PC und Handy Web-Browser (und Mail,...) auf PC und Handy

leicht bedienbar , Massenmarktleicht bedienbar , Massenmarkt

• führende Server-Technologien: Kombinationen von führende Server-Technologien: Kombinationen von Web-/Anwendungs-/Datenbank-ServerWeb-/Anwendungs-/Datenbank-Server

leistungsfähig , zuverlässig , sicher , aktuell , leistungsfähig , zuverlässig , sicher , aktuell , Mehrwert, persönlich , kompetent, ...Mehrwert, persönlich , kompetent, ...

• führendes Protokoll: HTTP-Protokollführendes Protokoll: HTTP-Protokoll

Page 5: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Produktdaten & ... ins Internet: Produktdaten & ... ins Internet: 2-Tier-Architektur mit Java-2-Tier-Architektur mit Java-AppletsApplets

Java-fähigesProgramm

Browsermit Java-Applet

Produkt-datenbank

HTML-Seite

+ Session-Konzept erlaubt zwischenzeitliche Interaktion + Last zwischen Client und Server relativ frei verteilbar +/- in der Regel geringere Serverlast+/- Client muß Java-fähige Browser nutzen

- Server muß Java-fähige Schnittstelle bieten (Java/Corba)- etwas langsamer

Client Server

Eingabe

Page 6: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

3-Tier-Architektur (mit 3-Tier-Architektur (mit Applets/RMI)Applets/RMI)

BrowserApplet

Produkt-datenbank

HTML-Seite

Client Application-Server DB-Server

RMI

Eingabe

Business-Logik (Java)

DB-Zugr.Programm

RMI

+ Session-Konzept erlaubt zwischenzeitliche Interaktion + Last zwischen Client und Applicationserver frei verteilbar + in der Regel geringere Serverlast (verteilt auf 2 Server)+/- Client muß Java-fähige Browser nutzen

- Server müssen Java-fähige Schnittstelle bieten (Java/Corba)

Page 7: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

2-Tier-Architektur mit 2-Tier-Architektur mit Servlets/CGIServlets/CGI

Servlet oder CGI-Programm

BrowserProdukt-

datenbankHTML-

Seite

+ minimale Anforderung an den Client + Server: CGI-Programm in beliebiger Sprache oder Servlet in Java+ Robust

- Session-lose Kopplung: keine zwischenzeitliche Interaktion - hohe Serverlast- Sicherheitsrisiken (bei CGI)

Client Server

ruft

generierteSeite

Eingabe

Page 8: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Common Gateway Interface (CGI)Common Gateway Interface (CGI)

CGI-Programm

BrowserHTML-

Seite

Auf dem Server: CGI-Verzeichnis für Programme (Sprache beliebig)

• Aufruf von CGI-Programmen ist in HTML-Seite eingebaut• Browser-Click ruft CGI-Programm statt gewöhnliche HTML-Seite• Dateneingabe im Browser mit Forms möglich, Übergabe an das CGI-Programm über Umgebungsvariablen (get) oder Datei (post)• CGI-Programm muß Eingabedaten decodieren• CGI-Programm generiert als Ergebnis HTML-Seite• Client-Browser zeigt generierte HTML-Seite

Client Server

ruft

generierteSeite

Eingabe

Page 9: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Servlet-Programmierung Servlet-Programmierung

Servlet = ein Java-Programm auf dem ServerServlet = ein Java-Programm auf dem ServerHttpServlet , GenericServlet für ftp, mail, ... HttpServlet , GenericServlet für ftp, mail, ... init(init( )) , service(, service( )) , doGet(, doGet( )) , doPost(, doPost( )) , destroy(, destroy( ) )

Servlets im Vergleich zu CGI: Servlets im Vergleich zu CGI: - CGI-Programme laufen in eigenem Prozeß- CGI-Programme laufen in eigenem Prozeß+Servlets genügt ein eigener Thread, +Servlets genügt ein eigener Thread, -> mehrere Clients teilen sich DB-Anbindung -> mehrere Clients teilen sich DB-Anbindung -> Performance-Vorteil -> Performance-VorteilServlets sind portabel und sicher (wie Java)Servlets sind portabel und sicher (wie Java)

Page 10: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

4-Tier-Architektur 4-Tier-Architektur

Browser

Produkt-datenbank

HTML-Seite

+ minimale Anforderung an den Client + Server: CGI-Programm und DB-Zugriff in beliebigen Sprachen+ Robust + geringere Serverlast - Session-lose Kopplung: keine zwischenzeitliche Interaktion - höhere Netzlast- Sicherheitsrisiken (bei CGI)

Client WWW-Server DB-Server

ruft

generierteSeite

Eingabe

DB-Zugr.Programm

Servlet, SSIoder CGI-Programm

Anwendungs-Programm

Anwendungs-Server

Page 11: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000Benutzereingaben auf dem Benutzereingaben auf dem ClientClientmit Java Applets / HTML-mit Java Applets / HTML-Forms Forms + Applets: reagieren auf beliebige Ereignisse + Applets: reagieren auf beliebige Ereignisse

- HTML-Forms: explizit abschicken (Submit) - HTML-Forms: explizit abschicken (Submit)

• Textfelder (sichtbare Eingabe) Textfelder (sichtbare Eingabe)

• Passwort (unsichtbare Eingabe ****)Passwort (unsichtbare Eingabe ****)

• Radiobutton, Checkbox , ... Radiobutton, Checkbox , ...

• Hidden Hidden (Session-Konzept bei HTML-Forms) (Session-Konzept bei HTML-Forms)

Page 12: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

HTML-Forms-Beispiel HTML-Forms-Beispiel (CGI/Servlets)(CGI/Servlets)Client-SeiteClient-Seite

<FORM method="post" action="http://www.myserver.de/cgi-bin/j4.bat"><!-- oder: action="http://www.myserver.de/servlet/s1" --> <TEXTAREA name=“KundenAnfrage" rows="10" cols="80"> </TEXTAREA>

<INPUT type=“text“ name=“username“ size="30" > <INPUT type=“password" name=“passwort“ size="30" > <INPUT type="submit" value="Anfrage abschicken"> <INPUT type="reset" value="Löschen">

</FORM>

Page 13: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

HTML-Forms-Beispiel HTML-Forms-Beispiel (CGI/Servlets)(CGI/Servlets)ServerseiteServerseiteDas auf dem Webserver aufgerufene CGI-Programm j4.bat • liest Umgebungsvariable CONTENTLENGTH • liest die mit POST geschickten Daten von der Standardeingabe • greift z.B. auf Datenbank zu oder ruft andere Programme auf• schreibt in die Standardausgabe

Das auf dem Webserver aufgerufene HttpServlet • implementiert z.B. die Methode doPost(...) (in Java)• erhält die Eingabe über einen Parameter vom Typ HttpRequest• schickt die Ausgabe an einen Parameter vom Typ HttpResponse

Der Web-Server • schickt diese Ausgabe an den Browser auf dem Client.

Page 14: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

JavaScript - JavaScript - Programmierung für die Client-Programmierung für die Client-SeiteSeite• JavaScript-Code in HTML-Seiten eingebettet JavaScript-Code in HTML-Seiten eingebettet

• vom Browser interpretiert vom Browser interpretiert

• Event-Handling, z.B. Bild laden, Maus bewegt, ... Event-Handling, z.B. Bild laden, Maus bewegt, ... <IMG SRC=“bild.gif“ onLoad=“doit( )“><IMG SRC=“bild.gif“ onLoad=“doit( )“>

function doit( ) { ... } function doit( ) { ... }

• Funktionen, Variablen, Schleifen, Objekte, aber Funktionen, Variablen, Schleifen, Objekte, aber schwach typisiert, keine Vererbungschwach typisiert, keine Vererbung

Page 15: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Datenaustausch mit XMLDatenaustausch mit XML

• Trennung von Nutzdaten (XML) und Layout (z.B. XSL Trennung von Nutzdaten (XML) und Layout (z.B. XSL oder CSS)oder CSS)

• inhaltliche Markups --> Daten austauschbar, inhaltliche Markups --> Daten austauschbar, restrukturierbar (XSL(T)/DOM), Queries (XQL)restrukturierbar (XSL(T)/DOM), Queries (XQL)

• aus Nutzdaten (XML) und Layout (XSL) werdenaus Nutzdaten (XML) und Layout (XSL) werdenHTML-Seiten (DB-Einträge, ...) generiert HTML-Seiten (DB-Einträge, ...) generiert

• einheitliche Markup-Sprachen für Branchen einheitliche Markup-Sprachen für Branchen und Produkte (z.B. CML für Chemie, ...) und Produkte (z.B. CML für Chemie, ...)

Page 16: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Datenaustausch zum Handy - Datenaustausch zum Handy - WML WML

• Wireless Application Environment (WAE) Wireless Application Environment (WAE) Handy Handy <--> Gateway <--> Server <--> Gateway <--> Server Funk (kompakt) Festnetz Funk (kompakt) Festnetz

• Wireless Application Protocol (WAP) Wireless Application Protocol (WAP)

• WML: wie HTML/XML, jedoch Einschränkungen WML: wie HTML/XML, jedoch Einschränkungen

• Deck/Card-Konzept: Deck/Card-Konzept: - mehrere Cards gleichzeitig laden - mehrere Cards gleichzeitig laden - darstellbare Informationsmengen- darstellbare Informationsmengen

Page 17: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Wege zur Kooperation (1)Wege zur Kooperation (1)

Kooperationsmodell: (Internet-)Projekte Kooperationsmodell: (Internet-)Projekte

• Industriepartner vergibt Auftrag/AufgabeIndustriepartner vergibt Auftrag/Aufgabe

• Informatik liefert Technologie-KnowHow Informatik liefert Technologie-KnowHow (Realisierungskonzepte, Beratung, ...) (Realisierungskonzepte, Beratung, ...)

Typisch: Typisch: Kontaktgespräch -> Bedarfsermittlung -> Kontaktgespräch -> Bedarfsermittlung -> Projektdefinition -> ... -> ProblemlösungProjektdefinition -> ... -> Problemlösung

Page 18: Universität Paderborn/Informatik  einige Kunden der letzten 12 Monate:

Paderborner Forum „Industrie trifft Informatik“ - Internet: Herausforderungen für den Mittelstand - 26.6.2000

Wege zur Kooperation (2)Wege zur Kooperation (2)

• Schulung/Vorträge für Mitarbeiter und KundenSchulung/Vorträge für Mitarbeiter und Kunden

• Auftragsarbeit für gemeinsame KundenAuftragsarbeit für gemeinsame Kunden(Drittmittel / Fördermittel)(Drittmittel / Fördermittel)

• Förderverein PB Bildungsnetz (z.Z.Förderverein PB Bildungsnetz (z.Z. ca.ca. 2020 Firmen)Firmen)

Ergänzende Maßnahmen: Ergänzende Maßnahmen:

• Industrie-PraktikaIndustrie-Praktika

• Studien- und DiplomarbeitenStudien- und Diplomarbeiten