27
Wizards & Wizards & Builders Builders GmbH GmbH Schichtenarchitektur Schichtenarchitektur Multi-Tier-Applikationen Multi-Tier-Applikationen mit mit Microsoft Visual FoxPro Microsoft Visual FoxPro

Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Embed Size (px)

Citation preview

Page 1: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

SchichtenarchitekturSchichtenarchitektur

Multi-Tier-Applikationen Multi-Tier-Applikationen mit mit

Microsoft Visual FoxProMicrosoft Visual FoxPro

Page 2: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Diese Schulung dient der Einführung in die

Softwarearchitektur, insbesondere der mehrschichtigen Architektur von Anwendungen am Beispiel

von Microsoft Visual FoxPro

Page 3: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

ThemenübersichtThemenübersicht

GrundlagenGrundlagenSystemkomponenten, Schichten-Systemkomponenten, Schichten-

architekturen, Beispiele lineare Ordnungarchitekturen, Beispiele lineare Ordnung Typische ArchitekturTypische Architektur

3-Tier, Austausch Frontend/Backend, 3-Tier, Austausch Frontend/Backend, SAMSAM

Bedingungen, Vor- und NachteileBedingungen, Vor- und NachteileVorbedingungen, Vorbereitungen, Vorbedingungen, Vorbereitungen,

Vorteile, Nachteile, NebeneffekteVorteile, Nachteile, Nebeneffekte VorgehensweiseVorgehensweise AnhangAnhang

Page 4: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

GrundlagenGrundlagen

Allgemeine Definition Allgemeine Definition einer Schichtenarchitektur einer Schichtenarchitektur

in der SW-Entwicklungin der SW-Entwicklung

Page 5: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

SystemkomponentenSystemkomponenten

Abgegrenzter Teil einer SWAbgegrenzter Teil einer SW Baustein der physik. StrukturBaustein der physik. Struktur Beispiele:Beispiele:

Prozeduren / FunktionenProzeduren / Funktionen KlassenKlassen abstrakte Datenobjekteabstrakte Datenobjekte abstrakte Datentypenabstrakte Datentypen

Page 6: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

SchichtenarchitekturenSchichtenarchitekturen

Innerhalb der Schicht wahlfreiInnerhalb der Schicht wahlfrei Zwischen Schichten geregelt:Zwischen Schichten geregelt:

Schichten mit strikter OrdnungSchichten mit strikter Ordnung Schichten mit linearer OrdnungSchichten mit linearer Ordnung Schichten mit BaumstrukturSchichten mit Baumstruktur

Variante:Variante: partiell undurchsichtige Schichtpartiell undurchsichtige Schicht

Page 7: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Beispiele lineare OrdnungBeispiele lineare Ordnung

Application

Presentation

Session

Transport

Netw ork

Data Link

Physical

OSI 7-Layer Model

http - ftp - mail - telnet

TCP

IP

Data Link

Physical

TCP/IP Protocol

Page 8: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

BegriffeBegriffe

Request = Abfrage Request = Abfrage Notification = Mitteilung Notification = Mitteilung Cache = ZwischenspeicherCache = Zwischenspeicher Inter-Application- Inter-Application-

Communication = anderes GUICommunication = anderes GUI

Page 9: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Verschiedene BeispieleVerschiedene Beispiele

Typische Architekturen Typische Architekturen und verschiedene und verschiedene Probleme mit den Probleme mit den

SchichtenSchichten

Page 10: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Typische ArchitekturTypische Architektur

Typisch: 3-Schichten / 3-TierTypisch: 3-Schichten / 3-Tier Schicht 2 - BenutzeroberflächeSchicht 2 - Benutzeroberfläche Schicht 1 - AnwendungSchicht 1 - Anwendung Schicht 0 - DatenhaltungSchicht 0 - Datenhaltung

In Wirklichkeit: Multi-TierIn Wirklichkeit: Multi-Tier Schicht 2b - InternetSchicht 2b - Internet Schicht 1b - OLE-AutomationSchicht 1b - OLE-Automation Schicht 0b - Parallelspeicher / HistorieSchicht 0b - Parallelspeicher / Historie

Page 11: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Austausch: FrontendAustausch: Frontend

Page 12: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Austausch: BackendAustausch: Backend

Folgen logischer Datenbanken:Folgen logischer Datenbanken: keine Satzsperren sondern Semaphore-Lockingkeine Satzsperren sondern Semaphore-Locking Eigenschaften für jedes DatenfeldEigenschaften für jedes Datenfeld Views für jedes Geschäftsobjekt und jede ListeViews für jedes Geschäftsobjekt und jede Liste

Page 13: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

SAM-ArchitekturSAM-Architektur

Verwendet von Siemens:Verwendet von Siemens: BenutzeroberflächeBenutzeroberfläche DialogsteuerungDialogsteuerung GeschäftsobjekteGeschäftsobjekte DatenzugriffDatenzugriff DatenhaltungDatenhaltung

Page 14: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Bedingungen, Bedingungen, Vor/NachteileVor/Nachteile

Nebenbedingungen sowie Nebenbedingungen sowie Vor- und Nachteile einer Vor- und Nachteile einer

MehrschichtenarchitekturMehrschichtenarchitektur

Page 15: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

VorbedingungenVorbedingungen

Dienstleistungen einer Schicht Dienstleistungen einer Schicht müssen auf demselben müssen auf demselben Abstraktionsniveau seinAbstraktionsniveau sein

Schichten gemäß Schichten gemäß Abstraktionsniveau geordnet, Abstraktionsniveau geordnet, Zugriffe auf Dienste nur nach Zugriffe auf Dienste nur nach unten zulässigunten zulässig

Page 16: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

VorbereitungenVorbereitungen

Finden eines natürlichen Finden eines natürlichen AbstraktionskriteriumsAbstraktionskriteriums

Finden der geeigneten Finden der geeigneten Granularität der SchichtenGranularität der Schichten zuwenig: erschwert zuwenig: erschwert

Wiederverwendung, Anpaßbarkeit und Wiederverwendung, Anpaßbarkeit und PortabilitätPortabilität

zuviele: erhöht Komplexität und zuviele: erhöht Komplexität und Aufwand für Trennung der SchichtenAufwand für Trennung der Schichten

Page 17: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

VorteileVorteile

Übersichtliche StrukturierungÜbersichtliche Strukturierung Abstraktionsebenen, virtuelle MaschineAbstraktionsebenen, virtuelle Maschine

Keine zu starke EinschränkungKeine zu starke Einschränkung neben strenger Hierarchie liberale neben strenger Hierarchie liberale

Möglichkeiten innerhalb der SchichtenMöglichkeiten innerhalb der Schichten

Unterstützung von:Unterstützung von: Wiederverwendbarkeit, Änderbarkeit, Wiederverwendbarkeit, Änderbarkeit,

Wartbarkeit, Portabilität, TestbarkeitWartbarkeit, Portabilität, Testbarkeit

Page 18: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

NachteileNachteile

EffizienzverlustEffizienzverlust Daten und Rück/Fehlermeldungen über Daten und Rück/Fehlermeldungen über

alle Schichten transportiert...alle Schichten transportiert...

AbgrenzungsproblemeAbgrenzungsprobleme Eindeutige Abstraktionsebenen lassen Eindeutige Abstraktionsebenen lassen

sich nicht immer definieren...sich nicht immer definieren...

Chaos innerhalb der SchichtenChaos innerhalb der Schichten ... ...... ...

Page 19: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

NebeneffekteNebeneffekte

Späte Änderungen ruinieren nicht allesSpäte Änderungen ruinieren nicht alles Obere Schnittstellen sind stabilerObere Schnittstellen sind stabiler Teile in Ebenen sind austauschbarerTeile in Ebenen sind austauschbarer Wiederverwendung unterer EbenenWiederverwendung unterer Ebenen Bessere Übersicht für EntwicklerBessere Übersicht für Entwickler Aufteilung von Projekten auf TeamsAufteilung von Projekten auf Teams Und: Direktzugriffsmöglicheiten auf Und: Direktzugriffsmöglicheiten auf

untere Ebenen sind nicht verboten untere Ebenen sind nicht verboten (z.B. Feldvalidierung in Oberfläche)(z.B. Feldvalidierung in Oberfläche)

Page 20: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

VorgehensweiseVorgehensweise

Vorgehensweise bei der Vorgehensweise bei der Applikationsentwicklung Applikationsentwicklung mit Schichtenarchitekturmit Schichtenarchitektur

Page 21: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Vorgehensweise 1/2Vorgehensweise 1/2

Umgebungs-/Umgebungs-/RandbedingungenRandbedingungen

EntwurfsentscheidungenEntwurfsentscheidungen SoftwarearchitekturSoftwarearchitektur

Zerlegung in SystemkomponentenZerlegung in Systemkomponenten Strukturierung durch AnordnungStrukturierung durch Anordnung Beziehungen zwischen KomponentenBeziehungen zwischen Komponenten

Page 22: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Vorgehensweise 2/2Vorgehensweise 2/2

Spezifikation Systemkomp.Spezifikation Systemkomp. Funktions/LeistungsumfangFunktions/Leistungsumfang

Festlegung SchnittstellenFestlegung Schnittstellen Ergebnis: ProduktentwurfErgebnis: Produktentwurf

Softwarearchitektur (Anordnung der Softwarearchitektur (Anordnung der Systemkomponenten/Beziehungen)Systemkomponenten/Beziehungen)

Spezifikation jeder Komponente Spezifikation jeder Komponente (Schnittstelle, Funktion/Leistung)(Schnittstelle, Funktion/Leistung)

Page 23: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Was ist das Wichtigste?Was ist das Wichtigste?

Entwicklung der Entwicklung der Anwendung Anwendung ohne Benutzer-ohne Benutzer-oberfläche!oberfläche!

=>Ansteuerbar-=>Ansteuerbar-keit über OLEkeit über OLE

=> kein Code im => kein Code im UserinterfaceUserinterface

Page 24: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Wie geht es weiter?Wie geht es weiter?

Modularer Soft-Modularer Soft-ware-Entwurfware-Entwurf

OLE-Objekt-OLE-Objekt-modell für modell für AnsteuerungAnsteuerung

Internet-Internet-InterfaceInterface

Client/ServerClient/Server

Page 25: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Anhang: ObjektdiensteAnhang: Objektdienste

NameName LifecycleLifecycle Event Event

notificationnotification PersistencePersistence ConcurrencyConcurrency RelationshipRelationship TransactionTransaction

In Vorbereitung:In Vorbereitung: TimeTime SecuritySecurity LicensingLicensing PropertiesProperties QueryQuery

siehe CORBA-ORBsiehe CORBA-ORB

Page 26: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Vielen Dank!Vielen Dank!

Das waren die Themen:Das waren die Themen: GrundlagenGrundlagen

Systemkomponenten, Schichten-Systemkomponenten, Schichten-architekturen, Beispiele lineare architekturen, Beispiele lineare OrdnungOrdnung

Typische ArchitekturTypische Architektur 3-Tier, Austausch 3-Tier, Austausch

Frontend/Backend, SAMFrontend/Backend, SAM

Bedingungen, Vor- und Bedingungen, Vor- und NachteileNachteile

Vorbedingungen, Vorbedingungen, Vorbereitungen, Vorteile, Vorbereitungen, Vorteile, Nachteile, NebeneffekteNachteile, Nebeneffekte

VorgehensweiseVorgehensweise AnhangAnhang

Page 27: Wizards & Builders GmbH Schichtenarchitektur Multi-Tier-Applikationen mit Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Wenn Fragen bestehen:Wenn Fragen bestehen:

Wizards & BuildersWizards & BuildersMethodische Software-Methodische Software-

Entwicklung GmbHEntwicklung GmbH

Frankfurter Str. 21bFrankfurter Str. 21b

61476 Kronberg61476 Kronberg

Tel.: 06173-950906Tel.: 06173-950906

Fax: 06173-950907Fax: 06173-950907

CIS: 101605,175CIS: 101605,175