Aus der Praxis - doag.org · UML Statechart Diagrams UML Use Case Diagrams UML Collaboration...

Click here to load reader

  • date post

    07-Aug-2019
  • Category

    Documents

  • view

    281
  • download

    0

Embed Size (px)

Transcript of Aus der Praxis - doag.org · UML Statechart Diagrams UML Use Case Diagrams UML Collaboration...

  • Erfolgreiche Erfolgreiche Anwendungsentwicklung Anwendungsentwicklung

    mit J2EEmit J2EETMTM

    Aus der Praxis Aus der Praxis –– für die Praxisfür die Praxis

    DOAG Regionaltreffen Nürnberg/FrankenDOAG Regionaltreffen Nürnberg/FrankenNürnberg, 01.07.2003Nürnberg, 01.07.2003

    Alexander BenkerSenior IT ArchitectXavo AGEnterprise IT SolutionsMeistersingerstrasse 295444 Bayreuthe-mail: [email protected] +49 (0)921 787779-0Web: www.xavo.de

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 2

    Erfolgreiche Anwendungsentwicklung mit J2EEErfolgreiche Anwendungsentwicklung mit J2EEAus der Praxis für die PraxisAus der Praxis für die Praxis

    • Xavo AG

    • Serviceorientierte, komponentenbasierte Architektur

    • Modellierung

    • Design Patterns

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 3

    Xavo AGXavo AGDas UnternehmenDas Unternehmen

    • Gegründet: Januar 2001

    • Kernkompetenzen: IT-Produkte und IT-Dienstleistungen für Industrie und Logistik

    • Basistechnologien: J2EE, PL/SQL, XML

    • Kunden: British American TobaccoDeutsche TelekomDeutsche PostBayerische Sparkassenu.a.

    • Partnerschaften: Swisslog AG (Logistik)Siemens AG (Industrie)SQL GmbH (Datenbanken)Oracle (Technologie)

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 4

    Xavo AGXavo AGDie KernkompetenzenDie Kernkompetenzen

    • Prozess- und Lösungserfahrung in Industrie & Logistik– Produktentwicklung, Engineering, Fertigungssteuerung, Qualitätssicherung,

    Betriebsdatenerfassung etc.– Lagerverwaltung, Materialflusssteuerung, Tracking & Tracing, Produktintegrität

    etc.

    • Professionelle IT-Dienstleistungen– Geschäftsprozessanalyse, Consulting, Projektmanagement– Datenbanken, Applikationserver, Programmierung, Systemintegration

    • Innovative Lösungen & Produkte– XavoManufacturing, XavoLogistics, XavoBusiness, XavoWorkgroup– TransConnectSAP

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 5

    Xavo AGXavo AGDie ITDie IT--TechnologienTechnologien

    • Relationale Datenbanken– Oracle, Sybase, Microsoft SQL, DB2

    • Applikationsserver– Oracle AS, JBoss, BEA Weblogic, IBM Websphere

    • Technologien– J2EE, EJB, XML, .NET, ASP, PHP

    • Programmiersprachen– Java, PL/SQL, Powerbuilder, Delphi, Visual Basic, Oracle Forms

    • Tools– Rational, Crystal Reports, CAST

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 6

    Xavo AGXavo AGDie ProduktphilosophieDie Produktphilosophie

    Kompetent in GeschäftsprozessenIndustrie/Logistik/Betriebsführung

    XavoBaustein

    XavoBaustein

    XavoBaustein

    Kompetenz in ITBeratung/Projekte/Technologien

    XYZBaustein

    Der Xavo Softwarekatalog

    entwickeln Software-BausteineDie Software-Lieferanten

    ABCBaustein

    wählen die benötigten Software-Bausteine (Funktionalitäten) aus,um ihre bestehenden Anwendungen (Prozesse) zu optimieren

    Die Kunden

    LegacyAnwendungen

    LegacyDaten

    LegacyProzesse

    XavoBaustein

    ABCBaustein

    XavoBaustein

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 7

    Xavo AGXavo AGAuszug realisierter J2EE Auszug realisierter J2EE -- ProjekteProjekte

    • XavoBusiness– ToDo-Liste– Sitzungsmanagement– Customer/Supplier/Partner Management– Customer Relationship Management– Knowledge Container– ...

    • Kundenprojekte– Unternehmensportal für die Industrie– Internationales Reporting Qualitätskennzahlen– Document Builder – Presentation Builder– Tracking and Tracing– Diverse Informationssysteme für Sparkassen– ...

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 8

    Erfolgreiche Anwendungsentwicklung mit J2EEErfolgreiche Anwendungsentwicklung mit J2EEAus der Praxis für die PraxisAus der Praxis für die Praxis

    • Xavo AG

    • Serviceorientierte, komponentenbasierte Architektur

    • Modellierung

    • Design Patterns

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 9

    Aspects of Enterprise IT SystemsAspects of Enterprise IT Systems

    IT ApplicationsEnterprise, department specific, user group specific

    IT ArchitectureBuilding Materials, Models & Services, Design Pattern

    IT InfrastructureActive Network, Passive Network, IT Centres, Telecommunication etc.

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 10

    Aspects of Enterprise IT SystemsAspects of Enterprise IT Systems

    IT ApplicationsEnterprise, department specific, user group specific

    IT ArchitectureBuilding Materials, Models & Services, Design Pattern

    IT InfrastructureActive Network, Passive Network, IT Centres, Telecommunication etc.

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 11

    ServiceService--Oriented Architecture (SOA)Oriented Architecture (SOA)

    • Design software systems, that they provide services to either end-user or other services through published and discoverable interfaces.

    • Allow application developers to browse collections of services, select those of interest, and assemble them to create the desired functionality.

    • Use modular components to implement services.

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 12

    Architectural LayersArchitectural Layers

    Applications are build using services provided by components

    Picture: IBM

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 13

    Architectural LayersArchitectural Layers

    Applications are build using services provided by components

    Picture: IBM

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 14

    Principle: Design Your Services Encapsulated!Principle: Design Your Services Encapsulated!

    Picture: Microsoft

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 15

    Principle: Structure Your Services!Principle: Structure Your Services!

    Pictures: Microsoft

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 16

    Principle: Continuous Usage of Services! Principle: Continuous Usage of Services!

    Picture: Microsoft

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 17

    Principle: Services have different needs!Principle: Services have different needs!

    Services Components Objects

    Loosely coupled Tightly coupled

    Document oriented Object oriented

    Process centric Data centric

    Asynchronous Synchronous

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 18

    Principle: Define abstract Business Services!Principle: Define abstract Business Services!

    Service Interface

    Client

    Application, Service, ...

    «use»

    Service Implementation 1

    Service Implementation 2

    Service Locator

    «use»

    lookup

    DataEntry()

    Manual Input

    Automatic Input

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 19

    Prinzipielle Service Hierarchie bei der Xavo AGPrinzipielle Service Hierarchie bei der Xavo AG

    Application

    Application Delegate

    Business Component Business Component

    Component Component Component

    Master Data Master Data Master Data Master Data

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 20

    Komponenten Fertigungsleitstand (Auszug)Komponenten Fertigungsleitstand (Auszug)Production Control Center

    Production Control Center Web

    Production Control Center EJB

    Work Order Execution

    Work Order

    Work Order Scheduling

    Bill Of Material

    ERP Connector

    Material

    XavoLogistics

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 21

    Principle: Create Components/Services able to integrate Principle: Create Components/Services able to integrate into different IT Environmentsinto different IT Environments

    Framework(Xavo, Oracle, Siemens, …)

    Best of breed components, providing business functionality are integrated by a framework,

    providing standard technical functions.

    Box Size: number of functionalitiesBox Colour: vendor of component

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 22

    Erfolgreiche Anwendungsentwicklung mit J2EEErfolgreiche Anwendungsentwicklung mit J2EEAus der Praxis für die PraxisAus der Praxis für die Praxis

    • Xavo AG

    • Serviceorientierte, komponentenbasierte Architektur

    • Modellierung

    • Design Patterns

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 23

    IT IT Modellierung bei Modellierung bei XavoXavo

    IT System

    Unit 2Unit 1

    Unit 3 Unit 4

    ProjectContext

    Business ProcessModel

    Production OrderMaterial NumberQuantity...

    DataModel

    Integration Model

    XavoEnterprise

    EAIBroker

    ApplicationArchitecture

    Available Services

    3rdParty

    TechnicalInfrastructure

    Enterprise ModelArchitecture Overview

    Business ProcessesProceduresOperations

    Roles

    Logical Data Model(Data Object Definitions, ER)

    Physical Data Model

    Available ServicesApplication Building

    ERP IntegrationEAI Broker

    Web Services

    NetworkServer

    Data Centre

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 24

    Standard Standard DiagrammDiagramm--Typen bei Typen bei XavoXavoProject Context

    ContextDiagrams

    NavigationDiagrams

    BusinessProcessModel

    UML ActivityDiagrams

    UML StatechartDiagrams

    UML Use CaseDiagrams

    UML CollaborationDiagrams

    ApplicationArchitecture

    UML SequenceDiagrams

    UML ComponentDiagrams

    Application TreeDiagrams

    UML DeploymentDiagrams

    Data Model

    UML ClassDiagrams

    UML PackageDiagrams

    UML ObjectDiagrams

    IntegrationModel

    EAI BrokerDiagrams

    IntegrationArchitecture

    TechnicalInfrastructure

    TechnicalArchitecture

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 25

    Softwareentwicklungszyklus bei XavoSoftwareentwicklungszyklus bei Xavo

    Picture: Rational

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 26

    Aufgaben und ihre Verteilung bei XavoAufgaben und ihre Verteilung bei Xavo

    Picture: Rational

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 27

    Modellierungsphasen bei XavoModellierungsphasen bei Xavo

    Business Process Modelling

    Business

    Architect

    Developer

    Analysis & Design

    Implementation

    Picture: antipatterns.com

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 28

    Hauptaufgaben der Modellierungsphasen bei XavoHauptaufgaben der Modellierungsphasen bei Xavo

    • Business Modelling– Geschäftsprozesse– Geschäftsobjekte

    • Analysis and Design– Transformation der Business Process Modellierung in eine Systemarchitektur

    • Implementation– Programmierung

    Pictures: Rational

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 29

    Schwerpunkte der Modellierungsphasen bei XavoSchwerpunkte der Modellierungsphasen bei Xavo

    • Business Process Modelling– Use Case diagrams– Activity diagrams– Statechart diagrams– Class diagrams

    • Analysis and Design– All diagrams

    • Implementation– Class diagrams– Sequence diagrams

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 30

    Beispiel Beispiel XavoLogisticsXavoLogistics: Business : Business Process ModellingProcess Modelling

    Warehouse 1___________

    Supplier A

    Warehouse 2___________

    Supplier B

    WorkerWarehouse 1

    Administration Logistic

    Production Planning

    Quality Assurance

    WorkerWarehouse 2

    XavoLogisticsCockpit

    - Inventory Management- Receiving- Shipping- Replenishment- Cycle Count...

    - Inventory Management- Receiving- Shipping- Replenishment- Cycle Count...

    Special Functions like- Inventory Reports- Status Change- Stock Adjustments...

    Production Manager

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 31

    map Parameters for external operation

    call external operation

    throw Exception

    map external result to XavoLogistics result

    return result

    Connector Principle

    [operation supported]

    [operation not supported]

    Beispiel Beispiel XavoLogisticsXavoLogistics: Analyse und Design: Analyse und Design

    XavoLogistics Warehouse Management Application

    XavoLogistics Warehouse Management EJB

    XavoLogistics Warehouse Management Web

    XavoLogistics Warehouse Management Applet

    XavoLogistics

    Witron WM

    Witron WM Connector

    Swisslog WM

    Swisslog WM Connector

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 32

    Beispiel Beispiel XavoLogisticsXavoLogistics: Implementierung: Implementierung

    «EJBRemoteInterface»SwisslogWMRem

    + «EJBBusinessMethod» getBinStatusReport ( )+ «EJBBusinessMethod» getInventory ( )+ «EJBBusinessMethod» updateInvStatus ( )+ «EJBBusinessMethod» getInvStatus ( )

    «EJBImplementation»SwisslogWMEJB

    - sessionContext : SessionContext = null

    + ejbActivate ( )+ ejbPassivate ( )+ ejbRemove ( )+ setSessionContext ( )+ «EJBBusinessMethod» getBinStatusReport ( )+ «EJBBusinessMethod» getInventory ( )+ «EJBBusinessMethod» updateInvStatus ( )+ «EJBBusinessMethod» getInvStatus ( )+ «EJBCreateMethod» ejbCreate ( )- getDataSourceName ( )

    «EJBSessionHomeInterface»SwisslogWMHome

    ...

    «EJBSessionBean»SwisslogWMEJBean

    «EJBRealizeRemote»«abstraction»

    «EJBRealizeHome»«abstraction»

    «reside»

    «reside»

    «reside»

    Client ServiceLocator : ServiceLocator service : Class

    2 : getWMServices ( )

    1 : getInstance ( )

    3 : getEnvEntry ( name )

    4 : forName ( className )

    5 : newInstance ( )

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 33

    Beispiel Beispiel XavoManufacturingXavoManufacturing: Business : Business Process ModellingProcess Modelling

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 34

    BeispielBeispiel XavoManufacturingXavoManufacturing: Business: Business Process ModellingProcess Modelling

    Work Order Scheduling

    Work Order Change Over

    Work Order Execution

    : Work Order[Open]

    : Work Order[Released]

    : Work Order[Active]

    : Work Order[Finished]

    : Module[No Operation (No Order)]

    : Module[Change Over]

    : Module[Running]

    : Module[Running Out]

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 35

    BeispielBeispiel XavoManufacturingXavoManufacturing: Business: Business Process ModellingProcess Modelling

    Supplying Materials Set-Up EquipmentActivate DataCollection

    Check Change Over Correctness

    / Incorrect

    Set-Up Parameter

    Execute WO Packet

    Ausschnitt: Work Order Execution

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 36

    BeispielBeispiel XavoManufacturingXavoManufacturing: Business: Business Process ModellingProcess Modelling

    Open

    / Create

    Released

    / Release

    Active

    / Activate,Initiate Module Brand Change

    Finished

    / Finish,Initiate Module Running Out (Optional)

    Cancelled

    / Cancel,Initiate Module Running Out

    / Cancel,Initiate Module Running Out

    Work Order Status

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 37

    BeispielBeispiel XavoManufacturingXavoManufacturing: Analyse und Design: Analyse und DesignProduction Control Center

    Production Control Center Web

    Production Control Center EJB

    Work Order Execution

    Work Order

    Work Order Scheduling

    Bill Of Material

    ERP Connector

    Material

    XavoLogistics

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 38

    Beispiel Beispiel XavoManufacturingXavoManufacturing: Analyse und Design: Analyse und Design

    show actual WorkOrders download WorkOrders from ERP

    show WorkOrder Bill Of Material

    check Product Integrity for Bill Of Material

    change Stati of WorkOrders

    upload WorkOrders to ERP

    show the Bill Of Material for a specific WorkOrder and check material IDswhen all materials are checked change status of WorkOrder to released

    «access»

    «access»

    «access»

    «access»

    check available stock

    «access»

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 39

    BeispielBeispiel XavoManufacturingXavoManufacturing: Implementierung: Implementierung

    «EJBRemoteInterface»WorkOrderExecution

    «EJBImplementation»WorkOrderExecutionBean

    - sessionContext : javax.ejb.SessionContext

    + WorkOrderExecutionBean ( )+ ejbActivate ( )+ ejbPassivate ( )+ ejbRemove ( )+ «EJBCreateMethod» ejbCreate ( )+ setSessionContext ( )

    «EJBRealizeRemote»«abstraction»

    «EJBSessionHomeInterface»WorkOrderExecutionHome

    + «EJBCreateMethod» create ( )

    «EJBRealizeHome»«abstraction»

    «EJBSessionBean»WorkOrderExecutionEJB «reside»

    «reside»

    «reside»

    Client ServiceLocator : ServiceLocator service : Class

    2 : \getXMService()\

    1 : getInstance ( )

    3 : getEnvEntry ( name )

    4 : forName ( className )

    5 : newInstance ( )

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 40

    Erfolgreiche Anwendungsentwicklung mit J2EEErfolgreiche Anwendungsentwicklung mit J2EEAus der Praxis für die PraxisAus der Praxis für die Praxis

    • Xavo AG

    • Serviceorientierte, komponentenbasierte Architektur

    • Modellierung

    • Design Patterns

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 41

    Design Patterns (Entwurfsmuster)Design Patterns (Entwurfsmuster)

    • “Ein Entwurfsmuster beschreibt eine bewährte Lösung für ein wiederholt auftretendes Entwurfsproblem, mit besonderem Schwerpunkt auf den Kontext und die Kräfte, die das Problem umgeben, sowie die Konsequenzen und die Auswirkungen der Lösung.” 1

    • Gründe für den Einsatz von Entwurfsmustern– Sie sind bewährt. Man nutzt die Erfahrung, das Wissen und die Einblicke von

    Entwicklern, die in ihrer eigenen Arbeit diese Entwurfsmuster erfolgreich eingesetzt haben.

    – Sie sind wieder verwendbar. Wenn ein Problem erneut auftritt, muss man keine neue Lösung erfinden; man folgt dem Entwurfsmuster und passt es entsprechend den Notwendigkeiten an.

    – Sie sind aussagekräftig. Entwurfsmuster bieten ein allgemein gebräuchliches Vokabular für Lösungen, mit denen man große Lösungen kurz und bündig ausdrücken kann.

    Literatur– „Core J2EE Patterns – Best Practices and Design Strategies“

    Deepak Alur, John Crupi, Dan Malks– „Design Patterns“

    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides1 http://java.sun.com/blueprints/patterns/j2ee_patterns/index.html

    Inoffizielle eigene Übersetzung

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 42

    Some PatternsSome Patterns

    Process stream of dataPipes and Filters

    Event notification on state changeObserver

    Add services transparentlyInterceptor

    Interchangeable behaviourStrategy

    Runtime link/unlinkComponent Configurator

    Unified higher-level interface to subsystemFaçade

    Representative with identical interfaceProxy

    Enhances object without changing interfaceWrapper

    Encapsulates communication mechanismForwarder – Receiver

    Middleman decouples remote service interactions

    Broker

    Chain of request handlersChain of Responsibility

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 43

    Some J2EE PatternsSome J2EE Patterns

    Data Access ObjectService ActivatorWeb Service BrokerDomain Store

    Integration Tier

    Intercepting FilterFront ControllerContext ObjectView HelperComposite ViewService To WorkerDispatcher View

    Presentation Tier

    Business DelegateValue Object / Tranfer ObjectValue Object / Transfer Object Assembler Session FacadeApplication ServiceComposite EntityValue List HandlerService Locator

    Business Tier

    Pattern NameTier

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 44

    AntiPatternsAntiPatterns

    • AntiPatterns are Negative Solutions that present more problems than they address

    • AntiPatterns are a natural extension to design patterns

    • AntiPatterns bridge the gap between architectural concepts and real-world implementations

    • Understanding AntiPatterns provides the knowledge to prevent or recover from them

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 45

    Some Some AntiPatternsAntiPatterns

    Ambiguous ViewpointDead EndFire DrillFunctional DecompositionLava FlowWalking Through a Mine Field

    Development

    Analysis ParalysisDeath by PlanningIrrational ManagementSmoke and MirrorsViewgraph Engineering

    Management

    Architecture by Implication(Autogenerated) StovepipeCover Your AssetsIntellectual ViolenceSwiss Army KnifeVendor Lock InWolf Ticket

    Architecture

    AntiPattern NameLevel

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 46

    Vielen Dank für Ihre Aufmerksamkeit!

    Alexander BenkerSenior IT ArchitectXavo AGEnterprise IT SolutionsMeistersingerstrasse 295444 Bayreuthe-mail: [email protected] +49 (0)921 787779-0Web: www.xavo.de

    Um diese Präsentation in elektronischer Form zu erhalten können Siea) Ihre Visitenkarte bei mir abgeben oderb) auf http://www.xavo.de downloaden

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 47

    GlossaryGlossary

    • MDA – Model Driven Architecture• OOA – Objektorientierte Analyse• OOD – Objektorientiertes Design• RUP – Rational Unified Process• Service — A logical entity; the contract defined by one or more

    published interfaces.• Service provider — The software entity that implements a service

    specification.• Service requestor — The software entity that calls a service provider.

    Traditionally, this is termed a “client”; however, a service requestor can be an end-user application or another service.

    • Service locator — A specific kind of service provider that acts as a registry and allows for the lookup of service provider interfaces and service locations.

    • Service broker — A specific kind of service provider that can pass on service requests to one or more additional service providers.

    • UML – Unified Modelling Language

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 48

    Quellen und weiteres Informationsmaterial Quellen und weiteres Informationsmaterial

    • http://www.xavo.de• http://java.sun.com/blueprints• http://msdn.microsoft.com/architecture• http://www.omg.org

    Website der Object Management Group (UML, MDA, ...)

    • http://www.rational.com Diverse Whitepaper bezüglich UML, Architektur und Applikationsentwicklung

    • http://www.antipatterns.com• „Core J2EE Patterns – Best Practices and Design

    Strategies“ (Deepak Alur, John Crupi, Dan Malks)

    • „Design Patterns“(Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 49

    Reserve Reserve SlidesSlides

    This is extra material which might be interesting

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 50

    ControllerController-- and Contributorand Contributor--ServicesServices

    • Controller– Stateful– Orchestration of other Services– Responsible for

    • Business Process• Business Process State

    • Contributor– Stateless– Example: Connectors to legacy systems– Responsible for

    • Business Logic• Business Data

    Source: IONA.com

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 51

    Frameworks & PlatformsFrameworks & Platforms: Advantages: AdvantagesWithout Framework & Platform

    Project Lifetime

    Func

    tiona

    lVa

    lue

    Project Goes Live

    With Framework & Platform

    Project Lifetime

    Func

    tiona

    lVa

    lue

    Shorten Project Development

    Extend Project‘sCompetitive Lifetime

    Increase ValueThrough Lifetime

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 52

    Frameworks & Platforms: BUT First Projects take longerFrameworks & Platforms: BUT First Projects take longerWithout Framework & Platform

    Project Development

    With Framework & Platform (First Projects)

    Project Duration

    Project Goes Live

    Project Analysis

    Commis-sioning

    2M 5M 1M

    Services Development

    Project Duration

    Project Goes Live

    Project Analysis

    Commis-sioning

    2M 4M 1M

    Project Development

    ServicesAnalysis

    1M 2M

    With Framework & Platform (Further Projects)

    Project Duration

    Project Goes Live

    Project Analysis

    Commis-sioning

    2M 1M

    Project Development

    2M

    ServiceExtens.

    1M

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 53

    Granularität Granularität von Servicesvon Services

    Picture: IBM

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 54

    Design PatternsDesign PatternsData Access Sequence DiagramData Access Sequence Diagram

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 55

    Design PatternsDesign PatternsBusiness Business DelegateDelegate

    • Reduziert die Kopplung von Präsentation und Logik

    • Wandelt technische Fehler in Geschäftsfehler um

    • Einfache, einheitliche Schnittstellen für den Client

    • Caching

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 56

    Design Patterns Design Patterns Service Service LocatorLocator

    • Abstrahiert Komplexität der Aufsuchen- und Kreierungs-Prozesse

    • Einheitlicher Zugriff für Clients• Leicht erweiterbar, ohne bestehende

    Clients ändern zu müssen• Konzentration der Netzwerk-Zugriffe• Caching

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 57

    Design Patterns Design Patterns DataData Access Access ObjectObject

    • Transparente Datenquellen für Business-Objekte

    • Erleichtert Migration• Reduzierung des Codes in Business-

    Objekten• Konzentrierung des Datenzugriffs

    auf eine Anwendungsschicht

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 58

    Design Patterns Design Patterns Value ObjectValue Object

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 59

    Integration ServicesIntegration ServicesXMLXML--basiertes Beispielbasiertes Beispiel

  • DOAG Regionalgruppe Nürnberg/Franken – 01.07.2003© Xavo AG 2003 Folie 60

    The manifesto of J2EE developersThe manifesto of J2EE developers

    • We believe in choice

    • We believe in heterogeneous systems

    • We believe in competition

    • We believe in open standards

    • We believe in platform neutrality

    • We believe in the community process