SAP als JAVA Technologielieferant-1 -...

30
SAP als JAVA Technologielieferant Michael Chytracek [email protected] JUGAT 29.01.2009

Transcript of SAP als JAVA Technologielieferant-1 -...

Page 1: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP als JAVA Technologielieferant

Michael Chytracek [email protected]

JUGAT 29.01.2009

Page 2: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

Agenda

•  Kurze Snap Team Vorstellung •  SAP NetWeaver CE 7.1 was ist das? •  SAP Java 5 Plattform •  SAP Erweiterungen

•  Development Infrastructure •  Composite Applications (Business Logik) •  WebDynpro (AJAX artiges Web Frontend) •  Enterprise Repository

•  SAP Galaxy

Page 3: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

Kurze Snap Team Vorstellung

  Snap Consulting dzt. 31 Personen in AT/DE  Hauptfokus auf SAP Projektumsetzung ABAP/JAVA

  Snap Java Team 4 Personen   Team seit 2004   Projekte mit BEA, JBOSS, OpenSource

 ÖAMTC „Leonardo“ ca 1000MT  RedBull „SOET“ ca 600MT  Schenker „FrächterDB“ ca 150MT

  Projekte mit SAP Netweaver   T-Mobile „VIS4“  Bramac „Vertriebsportal“

Page 4: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP NetWeaver CE 7.1 was ist das?

  NetWeaver nennt SAP seine Technologie-Plattform

  Derzeit in Version 7.0 verfügbar

  CE 7.1 Zwischenrelease hauptsächlich neue Java Features

  Nächstes Release 7.2 Ende 2009

Page 5: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP NetWeaver CE 7.1 was ist das?

  DerProzess‐baukasten:GuidedProcedures(GP)Galaxy

  Geschäftsobjekteerstellen,ServiceszurVerfügungstellenCompositeApplicationFramework(CAF)

  DieLaufzeitumgebungJavaEE5Anwendungsserver

  WebServices/EnterpriseServicesConnectivity

  Benutzerschnittstelle   WebDynproJava

  JavaServerFaces   AdobeInteractiveForms   AdobeFlex   Spracheingabe

  Entwicklungsumgebungen   Eclipse   VisualComposer

  DieServiceverwaltung   EnterpriseServiceRepository   ServiceRegistry

  Softwarelogistik(NWDI)   DesignTimeRepository

  ComponentBuildServices   ChangeManagement&

TransportService

JavaApplicationServer

EclipseEnwicklungs‐umgebung

Prozesse

Event FlowRolle

Sichten/UI

PortalundWeb FormulareMobileundSpracheAnalytics

Bus

DatenoderFile

Services Service

façadeNewservice

Dataservice

Enterpriseservice

Basicservice

  WebDynproFramework

Page 6: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP JAVA 5 Plattform

  Erster Java 5 zertifizierter Server   Eigene Java VM   Eclipse 3.3 basiertes Developer Studio   Viele SAP Komponenten am Java Stack

  SAP XI/PI   SAP SolMan, BI, ...

  Viele Konzepte aus dem ABAP Umfeld nach JAVA transponiert

  Ca 10500 Personen weltweit in Java Entwicklung bei SAP

Page 7: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

Motivation

  Entwicklung   Versionsverwaltung   Manuelle Distribution der Software   Kopieren aktueller Libraries von der make-Maschine   Manuelles Deployment auf Test-Server   Inkonsistente Verwendung von Libraries, Integrationsprobleme   Lange Bug Fixing-Zyklen aufgrund “central nightly builds”   Unterstützung für Software-Komponenten

  Auslieferung   Keine Unterstützung für Distribution und Upgrading

versionierter Java-Sourcen   Keine Unterstützung für kundenseitigen make-Prozess

Page 8: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

Open Source Lösungen

  Versionsverwaltung   CVS, Subversion, Perforce, ...

  Build Management und Libraries  Maven, Ant

  Zentraler Build   Continuum Integration Server

  Komponentenmodell   Jboss Seam, Spring, OSGi, Apache Avalon

Page 9: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

SAP Lösung

Page 10: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

 Zentrale Installation vereinigt:  Anbindung an SLD (Produkte, SCs)  Nameservice (Präfixe für Tabellen,...)  Versionsverwaltung (DTR)  Build Management (CBS)  Change Management Service (CBS)  Deployment/Transport (DEV, CONS, PROD)

Page 11: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

Eclipse Integration

  Basiert auf Eclipse Development Framework   Inkrementeller Build   Ant-basierter Build-Support   Unterstützung für Archiv-Build   Lokales und remote Debugging

  Funktionalitäten von SAP durch Plug-Ins erweitert   Unterstützung für SAP-spezifische Entwicklungen   Creation Wizards, Deployment, Lokale Tests, Debug

-Umgebung   Integrierte IDE-Unterstützung für DC-Entwicklung   Nahtlose Integration in NWDI

Page 12: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Development Infrastructure (NWDI)

Software Lifecycle Management

1.  SLD: Definition der zu entwickelnden Software   Definition eines Produktes   Definition einer / mehrerer Software-Komponenten (SC), die das

Produkt bilden 2.  CMS: Definition einer Entwicklungsumgebung

  Definition eines Track für eine spezifische Release der SC   Generieren von Entwicklungskonfigurationenen für jeden

Entwicklungsstand einer SC (DEV / CONS) 3.  Dev. Studio: Entwicklungsobjekte editieren & kompilieren

  Verwenden des SAP NetWeaver Developer Studio in Verbindung mit der SAP NWDI für alle Entwicklungsprojekte

  Entwicklungsobjekte für Weiterverarbeitung durch QM freigeben 4.  CMS: Definition der weiteren Verwendung von SC

  Transport in nächste Entwicklungsstufe, Qualisty Assurance und Assemblierung unter Verwendung des Change Management Service

5.  CMS: Auslieferung von SCs und Patches   Auslieferung von SC Versionen als Grundlage von Produkten und

Support Packages 6.  CMS: Definition eines Track für die nächste Release einer SC

• definieren

• importieren

• freigeben

• vorbereiten

• definieren

• Produkt & Applikation

• Track & Dev. Konfig.

• Entwicklung

• Software Lifecycle CM

• Auslieferng

• Nächste Release

Page 13: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

 Eigener Projekttyp mit spezieller Eclipse Perspektive und MDA Views  Metadata Project  Dictionary Projekt  Permissions Project  EJB Projekt  EAR Projekt

Page 14: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

  ApplicationServices   Modellieren der Methoden   Generieren als EJBs   Impl. der Business-Logik

  BusinessObjects   Modellieren der Attribute   Generieren als EJBs   Impl. der findBy-Logik

  Transportobjekte   Modellieren der Attribute   Generieren als Java Beans

Page 15: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

  Implementierung der Persistenzschicht   Objektorientierter Zugriff auf Daten und Transaktionen   100%ige Integration in die Entwicklungsumgebung   Datenstrukturen in Dictionary verwaltet

(Wiederverwendbarkeit, Enumerations, Mehrsprachigkeit, Label-, Kurz-/Langtexte für Attribute)

  Keine Detailkenntnisse notwendig (Tabellen- Spalten, Datentypen,…)

  Im Hintergrund:   JPA Implementierung für alle unterstützten Datenbanken/Betriebssysteme   SAP Caching/Pooling wirksam   Generierter Code für Berechtigungseinschränkungen auf Record-Ebene

Page 16: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

Page 17: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

  Implementierung der Businesslogik   Objektorientierter Zugriff auf Business Funktionen   100%ige Integration in die Entwicklungsumgebung   Keine Detailkenntnisse notwendig (EJB Technologie,…)   Bereitstellung als Webservice durch 2 Klicks

Page 18: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Composite Applications

Page 19: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Framework für Web Anwendungen

Webanwendungen in Enterprise Qualität   Minimales Codieren, maximales Design   Trennung von Layout und Logik   Unterstützung für

  verschiedene Backends   Wiederverwendung von Komponenten   Web Services & Data-Binding

  Konfiguration von UI Patterns

Plattformunabhängigkeit   serverseitig durch Unterstützung verschiedener

Laufzeitsysteme (Java, ABAP …)   clientseitig durch

  Java Script-Anwendungskomponenten mit   Lauffähigkeit in verschiedenen Standard-Browsern

(IE, Firefox)

Verbesserte Benutzerfreundlichkeit   Bildschirmaktualisierung ohne neuerlichen Seitenaufbau   dynamische Darstellung clientseitig   Performanz durch Caching   508 Accessability Unterstützung   flackerfreie Bildschirme, wenige Refreshs

Page 20: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Framework für Web Anwendungen

Beschreiben der Eigenschaften einer Web Dynpro Applikation   in Form von Metadaten   mittels Web Dynpro Toolset

Quellcode wird   automatisch generiert,   kompiliert und   zur Laufzeit ausgeführt

Möglichkeit zur Plazierung eigenen Codes in vorgesehenen Bereichen UIs bestehen aus

  Basis- sowie anwendungsspezifischen Elementen, die   statisch deklariert oder   programmatisch implementiert und zur Laufzeit integriert werden können

Programmatische Implementierung ermöglicht   Erweiterung deklarativ UIs mit neuen Interface-Strukturen zur Laufzeit und

damit   Kombination deklarativer und programmatischer Techniken

Page 21: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Anwendungsszenarien

Page 22: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Entwurfsmuster für Benutzeroberflächen

Ebenen   Controls

  atomare Layout-Elemente, bestimmen Look & Feel der Anwendung

  Components   wiederverwendbare, aufgabenorientierte Baugruppen

  Floor Plans   Bildschirmgestaltung, Interaktivität und Semantik

generischer Anwendungen

Konsistente Benutzeroberflächen   geringer Einarbeitungsaufwand   wenig Spzialkenntnisse erforderlich

Page 23: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Features

Clientseitiges Framework   umfangreiche Bibliothek von

Benutzeroberflächenelementen   Zero Footprint

  Java Script-Bibliothek < 100 KB   Lauffähig auf IE >= 5.0 und Firefox >= 1.0

  Integration mit externen Komponenten   Microsoft Office   Adobe Forms   Adobe Flash Islands   JSF Islands

Performance optimiertes Client-Server Protokoll   Laden von Tabellendaten   Delta-Transfer

  Layout-Informationen vom Server zum Client   Anwendungsdaten in beide Richtungen

Page 24: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Features

Umfangreiche UI Bibliothek   entspricht Unified Rendering & Unified UI Elements

Standard Deklaratives Screen Management

  Navigationsgraphen   Verschachtelte Views & Popup-Fenster

Layout Varianten   Grid-, Flow-, Row- & Matrix-Layout   Verschachtelungsmöglichkeit

Generische UI Services basierend auf Metadaten   Extended Value Selector (‘F4’)

  Metadaten für Werteselektion   aus Dictionary oder   dynamisch definiert

  automatische   Konvertierung,   Prüfungen und   Fehlerbehandlung

für elementare Datentypen   Umfangreiches Fehlerbehandlungskonzept

Page 25: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro MVC Paradigma

• Design Pattern für Entkoppelung von Präsentation und Logik einer Applikation

•  Verarbeiten von Events •  Aktualisieren der Anwendungsdaten •  Definieren des Kontrollflusses

•  Definition der Anwendungsdaten •  Verbindung zu Business- Funktionalität (Command Pattern)

•  Visualisieren der Anwendungsdaten

Page 26: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Komponenten

Definition   wiederverwendbare Einheit   umfasst alle Bestandteile, die

  im Rahmen dieser Programmier-Einheit   für lauffähige Web-Dynpro-Anwendung

benötigt werden   enthält beliebige Anzahl von

  Windows und   Views

mit zugehörigen Controllern   Referenzierung weiterer

Web-Dynpro-Components möglich   Lebensdauer

  beginnt mit erstem Aufruf zur Laufzeit &   endet mit der Laufzeit

Vorteile   Strukturieren der Programmierung   Bilden überschaubarer Anwendungsblöcken   Wiederverwendbarkeit ganzer Components   Zeitliche und räumliche Entkopplung von Software

-Projekten

Page 27: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen WebDynpro Beispielanwendung T-Mobile VIS4

Page 28: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Enterprise Services Repository & Registry

  Verfügbar ab CE 7.1/PI 7.1   Business APIs zu SAP Funktionen   In Enterprise Services Community (ESC)

abgestimmte Services   Verwendung von Global Datatypes (ISO/CCTS)   Organisiert in Bundles   Sichert Abwärtskompatibilität   Standardkonform (WSDL) via UDDI

Page 29: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

SAP Erweiterungen Enterprise Services Repository & Registry

 Verwendung von Enterprise Services  Im Developer Studio siehe später Galaxy  Im Visual Composer  Mit Enterprise Services Workplace

Page 30: SAP als JAVA Technologielieferant-1 - home.apache.orgpeople.apache.org/~sgoeschl/download/jugat/2009-01-29_1.pdf · SAP Erweiterungen Development Infrastructure (NWDI) Motivation

Danke für ihre

Aufmerksamkeit