Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der...

62
Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth

Transcript of Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der...

Page 1: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Architekturen von Web-AnwendungenArchitekturen von Web-Anwendungen

Vorlesung an der LMU MünchenWinter-Semester 2001/02

Dr. Günter Merbeth

Page 2: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Zur VorlesungZur Vorlesung

• Konzepte und Anwendungsbeispiele• Keine Programmbeispiele• Zwei Hauptplattformen

– Java & J2EE– Microsoft.NET

• In Vorlesung– Bei Einführung von Konzepten: J2EE– Microsoft zur Ergänzung / Vergleich

Page 3: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

VoraussetzungenVoraussetzungen

• Programmieren (Java)• Grundkenntnisse Internet• Grundkenntnisse Software Entwicklung• Grundkenntnisse Datenbanken

Page 4: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

(Vorläufiger) Plan(Vorläufiger) Plan

• Einführung, Begriffe• Klassische Architekturen• Beispiel ECOM: Verkaufsanbahnung bei BMW• E-Business, Architekturen & Architekten im Entwicklungsprozess• Herausforderungen und Beispiele• Schichten und Stufen von Web Anwendungen• Referenzarchitektur für Web basierte unternehmenskr. Anwendungen• Beispiel: Unternehmensportal bei Softlab • Rolle von Java und XML• HTML und Applets• JSP und Servlets• Application Server, J2EE, Beispiel• Portal Server, Prozess Management• Content Management• Anwendungsintegration (EAI, JCA, Web Services)• Microsoft.NET• Vergleich J2EE und .NET

Page 5: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Begriffe: AnwendungenBegriffe: Anwendungen

Architekturen von Web-Architekturen von Web-AnwendungenAnwendungen

• Software-Systeme• Unterstützen Menschen bei Tätigkeiten

z.B. - Bearbeiten eines Schadens bei Versicherung

• Automatisiert Abläufez.B.- Ausführung einer Überweisung- Steuert die Bremsen in einem Auto (ABS)- Führt ein Waschprogramm durch

Page 6: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Klassifizierung von AnwendungssystemenKlassifizierung von Anwendungssystemen

• Informationssysteme– Dienstleistung

Beispiel: Finanzdienstleistungen sind i.W. Informationsverarbeitung– Verwaltung– Unternehmenssteuerung– ...

• Eingebettete Systeme– Kommunikationsgeräte– Haushaltgeräte– Fahrzeuge

Auto: Computer mit 4 Rädern– ...

• Eingebettete Systeme und Informationssysteme wachsen zusammen

– Fahrerinformation und Fahrzeugsteuerung– Anschluss Alarmanlage ans Internet

Page 7: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Systembasis für AnwendungssystemeSystembasis für Anwendungssysteme

• Software-Systeme benötigen zum operativen Betrieb– Hardware-Basis– System-Software-Basis

• Basis und Entwicklungswerkzeuge unterschiedlich bei– Informationssystemen– Eingebetteten Systemen

• Schwerpunkt in Vorlesung: Informationssysteme• Informationssysteme längere Historie als eingebettete Systeme

Page 8: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Entwicklungs-Epochen bei InformationssystemenEntwicklungs-Epochen bei Informationssystemen

Page 9: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Epochen bei IS: MainframeEpochen bei IS: Mainframe

SNA (IBM), TRANSDATA (Siemens)Mainframe

„Dumme“Terminals

Terminal-Anbindung

Bildschirm-MaskenAnwendungslogik

Daten

Page 10: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Mainframe EpocheMainframe Epoche

• Hardware, Betriebssysteme– Mainframes: IBM, Siemens,

ICL, Fujitsu, ...– Minicomputer: DEC, …

• Datenmanagement– Dateisysteme– Hierarchische DBMS– Netzwerk-DBMS– RDBMS

• Middleware– TP Monitore

• Kommunikation– Proprietär: SNA, ...

• Entwicklung– Editoren– Sprachen (Compiler)

COBOL, PL/1, Assembler, (FORTRAN)

– Generatoren für Masken und Code

– Dictionaries– Projektbibliotheken

Page 11: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Epochen bei IS: Client/ServerEpochen bei IS: Client/Server

SNA

Mainframe

Mainframe

Dezentralisierung

GUI (Anwendungslogik) AltsystemeAnwendungslogik Daten Daten

TCP/IP

Application Server

DB Server

Page 12: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Client/Server EpocheClient/Server Epoche

• Hardware,Betriebssysteme– Client

• PC mit DOS, Windows, (OS/2)• Unix

– Server: Unix, NT, Novell (OS/2)– Mainframes: IBM mit MVS

Bedeutung anderer Hersteller nimmt ab

• Datenmanagement– Filesysteme– Relationale DBMS

• Middleware– RPC– DCE– TP Monitore– (CORBA)

• Kommunikation– TCP/IP

• Entwicklung– CASE (Computer Added Software

Engineering)– Repositories– Projekt- und Konfigurations-

management– Sprachen (Compiler, Debugger)

• COBOL• C, C++, (Smalltalk)• VB• 4GL

Page 13: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Epochen bei IS: Netzwerk (Internet / Web)Epochen bei IS: Netzwerk (Internet / Web)

TCP/IP

SNA

Mainframe

Mainframe

Web Server

Internet/Internet/Intranet/Intranet/ExtranetExtranet

Application Server

Mainframe

TCP/IP

HTTP

DB Server

DB Server

Application Server

Page 14: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Netzwerk EpocheNetzwerk Epoche

• Hardware,Betriebssysteme„The network is the computer“– PC: Windows – NC (Thin Client)– Server: Unix, NT

• Datenmanagement– Filesysteme– Relationale DBMS– ODBMS– (Wissens/Content) Repositories

• Middleware– Distributed TP Monitore– CORBA– J2EE, (EJB, Servlets, RMI)– COM/DCOM– SOAP (Web Services)

• Entwicklung– Repositories mit Projekt- und

Konfigurationsmanagement– Sprachen

• IDE: Integrated Development Environmentsz.B. Visual Studio, Visual Age

• C++• Java• C#• VB

Page 15: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Eigenschaft der drei GenerationenEigenschaft der drei Generationen

• Sehr gute Tools• Komplexe Architektur

(Viele logische Komponenten)

• Netzwerk

• Thin Clients• Re-Zentralisierung• Management auf

weniger Instanzen beschränkt

• Browser basiert• Gute Kombination der

Stärken von C/S und Mainframe- GUI- blockorient. Verbind.

Web

• Sehr gute Tools• Architektur schon

komplexer• EU gleich PU

• Fette Clients, Sicherh.• Verteilung der Anw. auf

Client und Server• Probleme mit großer

Anzahl Clients bei Install. und Update

• Komfortable graphische Oberfläche

• Benutung komplexer• Direkte Verbindung

zwischen Client und Server RPC)

Client / Server

• Schwache Toolunterstützung

• Einfache Architektur(DB und TP Monitor)

• EU ungleich PU

• Zentral• Einfache Kontrolle und

Verwaltung• Einfache Installation

und Update

• Einfach, dumme Terminals

• Primitive Oberfläche• Verbindung zwischen

Terminal und Rechner blockorientiert

Mainframe

EntwicklungManagementBenutzung

Page 16: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Begriffe: Web-AnwendungenBegriffe: Web-Anwendungen

Architekturen von Architekturen von Web-AnwendungenWeb-Anwendungen

• Basierend auf Internet-Techniken• Nutzung der Techniken des World Wide Web

- HTTP (Protokoll)- HTML (Datenformat)- URL (Adressierung)- ... (Behandlung im Laufe der Vorlesung)

• Anwendungsbereiche- Internetauftritte- Intranetanwendungen- E-Business Anwendungen- M-Business Anwendungen

• Abgrenzung: Nicht Embedded Systems

Page 17: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

E-BusinessE-Business

• Web basierte AnwendungenDrei wichtige Klassen

• Business to Consumer (B2C), Internet– Einkauf über das Web (z.B. Amazon, Computer Shops)– Homebanking (z.B. T-Online)– Elektronischer Kundendienst

• Business to Business (B2B), Extranet– Anbindung von Lieferanten– Integration externer Vertriebskanäle (Händler, VAR, OEM)– Integration von Dienstleistern (Discount Broker mit Transaktionsbank)

• Business to Employee (B2E), Intranet– Informationsplattform für Mitarbeiter (z.B. Telefonliste)– Unterstützung für interne Prozesse (z.B. Reiskostenabrechnung)– Qualitätsmanagement– Skill Management– Wissensmanagement (z.B. Methoden, Erfahrungen)

Page 18: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

E-Business BeteiligteE-Business Beteiligte

Lieferanten

Auftrag-nehmer

Mitarbeiter

Unter-nehmen

alsKunden

Endkunden

Geschäftsprozesse

von

Unternehmen

Page 19: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

KundenCustomerRelationshipManagement

E-Business ThemenE-Business Themen

E – B u s i n e s s

SupplyChain

Management

B2B

Lieferanten

KernGeschäftsProzesse

B2B & B2E B2B & B2C

Unternehmen

Page 20: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Inter-/Intranet-AnwendungenInter-/Intranet-Anwendungen

• Customer Relationship Management (CRM)– Abwicklung Kundenbeziehung über Internet (B2C, B2B)– Marketing– Verkaufsunterstützung– E-Commerce– Helpdesks

• Supply Chain Management– Abwicklung der Beziehungen mit Lieferanten (B2B)– Zulieferketten– Einkaufssysteme (E-Procurement)

Page 21: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Begriffe: ArchitekturenBegriffe: Architekturen

ArchitekturenArchitekturen von Web-Anwendungen von Web-Anwendungen

• IT-Architekturen sind Baupläne (wie im Bauwesen)- Konzepte- Modelle- Richtlinien und Standards

• Definieren Umsetzung der Anforderungen in Komponenten, Teilsysteme, Beziehungen

• Reduzieren Komplexität• Ermöglichen Wiederverwendung

Page 22: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Architekturaspekte: ein EbenenansatzArchitekturaspekte: ein Ebenenansatz

Business Architektur

Anwendungsarchitektur

Systemarchitektur

Plattformarchitektur

GeschäftsprozeßGeschäftsprozeß DatenflußDatenfluß

BenutzergruppeBenutzergruppe AnwendungAnwendung

ComputerComputer NetzwerkNetzwerk

AnwendungsfAnwendungsfunktionunktion

SchichtSchicht KomponenteKomponente ObjektObjekt

Sic

herh

eit

Sys

tem

man

agem

ent

Zugr

iffsr

echt

Zugr

iffsr

echt

Rec

hteg

rupp

eR

echt

egru

ppe

Anw

endu

ngA

nwen

dung

Syst

emSy

stem

Res

sour

ceR

esso

urceOrganisationseOrganisationse

inheitinheit

Reale Welt

Was

Womit

Wie

Entwicklungsarchitektur

Page 23: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ArchitekturArchitektur

• Jedes System hat eine Architektur– Implizit

• Entsteht während der Entwicklung• Akzeptabel bei ganz kleinen Anwendungen• Vergleich traditionelle Architektur

Für Hundehütte braucht man keinen Architekturentwurf– Explizit

• Separater bewusster Schritt im Entwicklungsprozess• Größere Systeme benötigen explizite Architektur• Vergleich: Für jedes größere Gebäude wird eine Architektur entworfen

• Explizite Architekturen bewirken viele Vorteile

Page 24: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ArchitekturArchitektur

Architektur ist Gliederung eines Systems in Hauptkomponenten

Architektur für ein einzelnes System

• Reduktion der Komplexität• Verteilung von Aufgaben• Zuordnung zu

Systemkomponenten• Einsatz von Standards• Einsatz von Produkten

Architektur für eine ganze Reihe von Systemen

Zusätzlich• Wiederverwendung von

Architekturkomponenten• Produktlinienansatz

Unternehmens-Architekturmodell

Page 25: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Anforderungen an Untern.-ArchitekturmodellAnforderungen an Untern.-Architekturmodell

• Einheitliche Benutzer-Schnittstellen– für alle Anwendungen– Anmeldung beim Netzwerk, nicht bei den Anwendungen

• Einheitlicher Zugriff auf Daten und Anwendungen durch Benutzer– im eigenen Unternehmen– bei Partnern– im Internet

• Wiederverwendung– Nicht nur von Code– Auch Modelle und Architekturkonzepte

• Interoperabilität– Infrastrukturprodukte kommen von unterschiedlichen Herstellern– Produkte müssen Standard-Schnittstellen, -Formate und -Protokolle unterstützen– Architekturmodell muß das ausdrücken

Page 26: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Anforderungen an Untern.-ArchitekturmodellAnforderungen an Untern.-Architekturmodell

• Portabilität zwischen Plattformen– Produkte und Anwendungen sollten nicht plattformabhängig sein– Plattformwechsel während der Lebenszeit einer Anwendung notwendig

• MVS (Mainframe)• Unix verschiedener Hersteller• NT• Linux

• Effizientere Anwendungsentwicklung, Werkzeuge für– Entwurf– Entwicklung– Test– Wartung– Konfigurationsmanagement– Generierung– Projektmanagement

Page 27: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Anforderungen an Untern.-ArchitekturmodellAnforderungen an Untern.-Architekturmodell

• System Management Einheitliches Werkzeug zum Verwalten der

– PCs– NCs– Netzwerkelemente– Server– Mainframe– Middleware– DBMS– Anwendungen

• Investitionsschutz– Altsysteme und– Existierende Infrastruktur

müssen in das Lösungskonzept für ein Unternehmen einbezogen werden.

Page 28: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ZitatZitat

„In the past, an architecture was really the design ofa system that had been created to meet specificapplication needs. In the new business environment,organizations have little idea what their application needs will be in two, let alone five or ten years.Consequently, we need architectures that can enablethe exploitation of unforeseen opportunities and meetunpredictable needs.

Don Tapscott in: The Digital Economy

Page 29: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Projekt ECOMProjekt ECOM

• ECOM: E-Commerce Projekt bei BMW• Softlab ist Auftragnehmer

ca. 20 Mitarbeiter von Softlab • E-Business für Vertrieb und Marketing (CRM)

Konkretes Thema: Verkaufsanbahnung– Direkter Verkauf wegen Händlerverträgen gegenwärtig nicht möglich

• Ziele des Vorhabens– Bessere Kundenbetreuung– Stärkere Kanalisierung des Vertriebsprozesses und Aufbau einer zentralen

Kundendatenbank– Noch stärkere Verzahnung zwischen Vertrieb und Produktion weltweit

Built to Order– Anpassung der Beziehungen zu Händlern unter Gesichtspunkten der

Wertschöpfungskette

Page 30: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ECOM: ProjektzieleECOM: Projektziele

• Gleiches Look & Feel weltweit• Unterstützung

– Unterschiedliche Marken (BMW PKW, BMW Motorräder, Mini)– Alle Länder– Mehrere Sprachen

• Neue Informationen weltweit zur gleichen Zeit• Länderspezifische Lösungen werden abgelöst• Optimieren sowohl des zentralen wie auch des dezentralen Zuganges• Ergebnis soll Plattform sein für Verbesserungen und Erweiterungen

Page 31: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 32: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 33: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 34: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 35: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 36: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 37: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 38: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Page 39: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

NSC AdministrationNSC Administration

Page 40: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

NSC Händler MonitoringNSC Händler Monitoring

Page 41: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Händler AktivitätenlisteHändler Aktivitätenliste

Page 42: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ECOM: AnwendungsarchitekturECOM: Anwendungsarchitektur

Customer

DealerLocations

E-COM BACKBONE

Vehi

cle

Con

figur

ator

Dea

ler

Loca

tor

Req

uest

for

Offe

r

Test

Driv

eA

ppoi

ntm

ent

Res

erva

tion

List

Use

d C

arPr

ice

Indi

cato

r

Req

uest

for

Info

rmat

ion

NSC Dealer

NSC

O

pera

tion

NSC

A

dmin

Dea

ler

Ope

ratio

n

MailServer

Interface

ContentManagement

System

GraphicalContent

DealerData Base

Car & PriceData Base

CRMData Base

ECOMData Base

Page 43: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

• 6 Module• Landesgesellschaften und Händlerportal

- nicht voll integriert- Datenaustausch

DealerPortal

Customer Interface (A)

Vehi

cle

Sele

ctor

Dea

ler

Loca

tor

Req

uest

for

Offe

r

Test

Driv

eA

ppoi

ntm

ent

Use

d C

arPr

ice

Indi

cato

r

Req

uest

for

Info

rmat

ion

Asc

erta

inSe

ssio

n U

ser

CustomerData

Dealer Data

Car Data

eCOM Data SubsidiaryPortal

ECOM: Phase 1ECOM: Phase 1

Page 44: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

DealerPortal

Vehi

cle

Sele

ctor

Dea

ler

Loca

tor

Req

uest

for

Offe

r

Test

Driv

eA

ppoi

ntm

ent

Use

d C

arPr

ice

Indi

cato

r

Req

uest

for

Info

rmat

ion

Asc

erta

inSe

ssio

n U

ser

SubsidiaryPortal

Rep

ort-

Gen

erat

or

Col

orin

gSy

stem

Map

-Sy

stem

Rul

e-In

terp

rete

r

• 7 Module & Car Configurator• Portale der Landesgesellschaften und Händler integriert• Integration von Finanzdienstleistungen• Integration von 4 existierenden Modulen

Vehi

cle

Con

-fig

urat

orSF Integration SF Integr.

Customer Interface (B)

CustomerData

Dealer Data

Car Data

eCOM DataPCASO

Serv

ice

App

oint

men

t

ECOM: Phase 1.5ECOM: Phase 1.5

Page 45: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Supp

ort

Mod

ules

DealerPortal(Clarify)

Vehi

cle

Sele

ctor

Dea

ler

Loca

tor

Req

uest

for

Offe

r

Test

Driv

eA

ppoi

ntm

ent

Use

d C

arPr

ice

Indi

cato

r

Req

uest

for

Info

rmat

ion

Asc

erta

inSe

ssio

n U

ser

SubsidiaryPortal(Clarify)

Supp

ort

Mod

ules

Serv

ice

App

oint

men

t

• 8 Module + Car Configurator• Portale der Landesgesellschaften und Händler integriert (TopDrive mit Clarify)• Integration von Finanzdienstleistungen• Automatische Integration von Anwendungen zur Datenbeschaff. (PCASO, HST, …)

PCASO

Vehi

cle

Con

-fig

urat

or

Use

d C

arM

anag

emen

t

TopDrive(Clarify)HST

CustomerData

Dealer Data

Car Data

eCOM Data

SF Inte

grat

ion

Customer Interface

t.b.d

efin

ed

ECOM: Phase 2ECOM: Phase 2

Page 46: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

DealerPortal(Clarify)

SubsidiaryPortal(Clarify)

PCASOTopDrive(Clarify)HST

CustomerData

Dealer Data

Car Data

eCOM Data

Customer Interface

• Vorbereitung für Strategie des direkten Vertragsabschlusses• Integration mit Produktionsplanung und Produktions-/Lieferprozess

Req

uest

for

Del

iver

y D

ate

Vehi

cle

Loca

tor

Ord

erin

g /

Ord

er c

hang

e

Trac

king

/ St

atus

info

IVS…

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Supp

ort

Mod

ules

Vehi

cle

Sele

ctor

Dea

ler

Loca

tor

Req

uest

for

Offe

r

Test

Driv

eA

ppoi

ntm

ent

Use

d C

arPr

ice

Indi

cato

r

Req

uest

for

Info

rmat

ion

Asc

erta

inSe

ssio

n U

ser

Supp

ort

Mod

ules

Serv

ice

App

oint

men

t

Vehi

cle

Con

-fig

urat

or

Use

d C

arM

anag

emen

t

SF Inte

grat

ion

t.b.d

efin

edECOM: Phase 3ECOM: Phase 3

Page 47: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Functional Building Block MatrixFunctional Building Block Matrix

Testdriveappoint-

ment

Vehicle Selector

Reser-vation

List

Request for

Offer

Requestfor

Information

Used CarEvaluator

DealerLocator

Used Car Evaluator

Dealer Locator

User Data Collector

Reservation List Handler

Offer Requestor

CarConfigu-

rator

User Views/ Processes

Func

tiona

l Bui

ldin

g B

lock

s

Information distributor

Page 48: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Varianten: Marken und Länderspez. AusprägungenVarianten: Marken und Länderspez. Ausprägungen

E-COM BACKBONE

market specific

brand specific

generic part

market-specific extensions

FunctionalBuilding

Block

20%

Customer´s View

80% WEB

-Cus

tom

er-In

terf

ace

Bikes

Page 49: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

VariantenstrukturVariantenstruktur

NSC specific

GermanFrenchItalianItalian FrenchFrenchFrench German

Java/HTML pages

Language specific

Brand

Example: 2 brands, 3 NSCs (of which one NSC is bilingual)

Adaptation sequence:1. Brand adaptation2. Market adaptation (could be parallel for several NSCs)

Page 50: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

1.0

1.0

Varianten- und ReleasestrukturVarianten- und Releasestruktur

Releases

Länder-varianten

Marken

Bikes

2.0

2.0

3.0

3.0

1.0 2.0 3.0

Page 51: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ECOM SystemarchitekturECOM Systemarchitektur

NNNeeetttssscccaaapppeeeEEEnnnttteeerrrppprrriiissseee 333...555

(((AAAIIIXXX,,, SSSooolllaaarrriiisss)))WWWeeebbb SSSeeerrrvvveeerrrGGGIIIFFF,,, JJJPPPGGG,,, JJJaaavvvaaaSSScccrrriiipppttt

JJJSSSPPP///SSSeeerrrvvvllleeettt EEEnnngggiiinnneeeJJJaaavvvaaa SSSeeerrrvvveeerrr PPPaaagggeeesss (((111...000)))

JJJSSSPPP BBBeeeaaannnsssJJJTTTAAA,,, JJJNNNDDDIII,,, RRRMMMIII---IIIIIIOOOPPP

WWWeeebbbLLLooogggiiicccSSSeeerrrvvveeerrr 444...555...111

(((SSSooolllaaarrriiisss)))AAAppppppllliiicccaaatttiiiooonnn SSSeeerrrvvveeerrrEEEnnnttteeerrrppprrriiissseee JJJaaavvvaaa BBBeeeaaannnsss (((111...000))),,,

JJJaaavvvaaaMMMaaaiiilll,,, JJJTTTAAA,,, JJJNNNDDDIII,,, RRRMMMIII---IIIIIIOOOPPP,,, JJJDDDBBBCCC

OOOrrraaacccllleee 888...000555(((SSSooolllaaarrriiisss)))

EEEnnnttteeerrrppprrriiissseee IIInnnfffooorrrmmmaaatttiiiooonnn SSSyyysssttteeemmmRRReeelllaaatttiiiooonnnaaallleee DDDaaattteeennnbbbaaannnkkk

Web ClientBeliebiger Browser

Page 52: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

ECOM KomponentenECOM Komponenten

• Java Server Pages– Ecom User Interface

• JSP Beans– EJB Client– Business Logik

• Entity Beans– Abbildung der DB-Tabellen (create, update, find)– Container Managed Persistence (CMP)– Transaction mode REQUIRED

• Session Beans– Utilities (currency, date), Queries, Import/Export

Page 53: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Software LayersSoftware Layers

New ModuleDealer Locator Request for Offer Vehicle Selector

Use DL

Use VSE

Use …

ContentManagement

System

JavaServerPages

Servlet EngineJSP Beans(Processes)

OracleData Base

ExternalInterfaces

BackgroundFunctions

(Mail send,..)

EJBServerEntity Beans

Vehicle Customer Dealer SessionManagement

Page 54: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Logische IT-ArchitekturLogische IT-Architektur

#

EJB Container

Dealer + NSC

Ultra Thin ClientHTML+JavaScript

Internet

Internet Services•Testdrive appointment•Request for offer•Request for information•Used vehicle price indicator•Dealer locator•Vehicle selector

Internal Services•Task fulfillment•Data maintenance•Event Tracking•Statistics

http

http/https

ECOM WebLogic EJB Server

Customer

Ultra Thin ClientHTML+JavaScript

Internet

JNDIRMI/IIOP CMP, Oracle 8.05 SessionFilesystem

JavaMailAdapter

smtp

smtp

JavaMailMailServer

Webserver+ Servlet Engine

ECOMJSP‘s

Supp

ort

• Err

or M

gmt

• Log

ging

...

Supp

ort

• Err

or M

gmt

• Log

ging

...

• Use

r Man

agem

ent

• ...

Page 55: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

IT-Infrastruktur (logisch)IT-Infrastruktur (logisch)

Webserver 2NetscapeEnterpriseServer

mit BEA WLS Plugin

UltraThin

Client

dbserv X

eCOM Infrastruktur 1BEA WebLogicServer

PrimaryServer für Webserver 1*

eCOM Infrastruktur 2BEA WebLogicServer

SecondaryServer für Webserver 1*SecondaryServer für Webserver 2*

eCOM Infrastruktur 3BEA WebLogicServer

PrimaryServer für Webserver 2*

Logisches WLS-Cluster

http-Dispatcher 1 http-Dispatcher 2

hot-stand-by Dispatcher-Cluster

Webserver 1NetscapeEnterpriseServer

mit BEA WLS Plugin

http

http

http

Internet /Extranet

Intranet(Corporate Network)

DMZ(Access LAN)

*wird dynamisch pro User zugeordnet

File-server

http

File-server

Page 56: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

IT-Infrastruktur (physikalisch)IT-Infrastruktur (physikalisch)

Internet Extranet

Intranet(Corporate Network)

DMZ Extranet(Access LAN)

DMZ Internet(Access LAN)

eCOM Webserver+ Dispatcher

weltweit eCOM Webserver+ Dispatcher

V3*

dbserv X

eCOM BEA Weblogic-Server-Cluster

eCOMUltraThinClient

Kunde

eCOMUltraThinClient

Händler

http

eCOM Webserver+ Dispatcher

V1 *

http http

FirewallFirewall

File-server

File-server

File-server

http

Page 57: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Customer

DealerLocations

E-COM Backbone BACKBONE

Con

trac

tSe

lling

Dea

ler

Loca

tor

Pers

onal

ised

Con

figur

atio

n

Rou

te

Plan

ning

CRM-

DATABASE

Dea

ler P

orta

l

BMW Marketing

Content Provider

BMW Generic Content

Generic Content Telematic

Content

GenericPersonalized

Content

Special BMWPersonalized

Content

Communicationto and from Car

Profile update into CRM Database

Content Aktualisation

Billing Preparation

Integrationsansatz - Beispiel: Assist-Car-OnlineIntegrationsansatz - Beispiel: Assist-Car-Online

Page 58: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

EntwicklungsumgebungEntwicklungsumgebung

• Entwicklung auf NT• Integration und Test auf Solaris• Zentrale Entwicklungsdatenbank auf Solaris• RunTime

– Application Server WebLogic Server– JSP/Servlet Engine WebLogic Server– WebServer WebLogic Server

Netscape Enterprise (Integration);wird abgelöst durch WebLogic Server

• Entwicklung– Java Jbuilder 3 (Borland)– JSP/HTML Homesite 4.5 (Allaire)

Page 59: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Weitere EntwicklungstoolsWeitere Entwicklungstools

• Datenbank– Design PowerDesigner (Sybase)– Aufbau SQL Navigator (Quest)

• Test– Modul-Tests Junit 2.1 (Public Domain)– Performance-Tests LoadRunner (Mercury)– GUI-Tests WinRunner (Mercury)

• Sonstiges– Dokumentation Office, Visio– OO-Modelling Together/J (oisoft)– Versionsmanagement Visual SourceSafe

Page 60: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Zahlen und Fakten (Version 1.5)Zahlen und Fakten (Version 1.5)

• Basissystem– Datenbank, EJB-Server, JSP Beans– Wird für alle Länder, Marken oder Sprachen verwendet– 43 DB-Tabellen– 64 EJB’s

• 37 Entity Beans• 17 Stateless Session Beans• 11 Stateful Session Beans

– 79 JSP Beans (u.a. Business Logik)– 68 Utility Klassen

Page 61: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

Zahlen und FaktenZahlen und Fakten

• BMW Portale– Group Portal, NSC Portale nur in Englisch– Dealer Portal pro Sprache– 379 JSP’s pro Sprache– 476 Bilder

• Customer Portale– Unterscheiden sich pro Land und Marke (BMW, Motorcycle, Mini)– Teilweise auch pro Sprache (z.B. CH)– 339 JSP’s pro Land, Marke und Sprache– 2079 Bilder (u.a. Fahrzeug, Händler)

Page 62: Architektur von Web-Anwendungen, LMU, WS-01/02 Architekturen von Web-Anwendungen Vorlesung an der LMU München Winter-Semester 2001/02 Dr. Günter Merbeth.

Architektur von Web-Anwendungen, LMU, WS-01/02

FazitFazit

• Server-Entwicklung mit EJB sehr produktiv– WebLogic Server ausgereiftes und stabiles Produkt– Skalierbare Multi-Tier-Architektur (fast) gratis

• Web-UI-Entwicklung mit JSP noch verbesserungsfähig– Aufwand höher im Vergleich zu „klassischem“ C/S (z.B. VB)– Betriebskosten deutlich geringer (keine Client-Installation)– Vermischung Darstellung und Code– Zu wenige UI-Controls für komplexe GUI’s

• Compile once - run anyware– Hardware-unabhängig (Unix, NT, Host)– Hersteller-unabhängige Technologie (BEA, IBM, Borland, …)