43
CompuwareCorporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

Embed Size (px)

Citation preview

Page 1: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

C ompuwareCorporation

MDA and Pattern how to do more with lessAndreas HerzigJava Solutions Manager Central Europe

Page 2: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Agenda

Produktivität und Komplexität bei der J2EE Entwicklung

Die Model Driven Architecture (MDA) der OMG

Pattern – Definition und Bedeutung

Eine J2EE Anwendung in drei Schritten

Der Pattern basierte Generator

Deployment der Anwendung

Page 3: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Entwicklerproduktivität Problem: Komplexität

Pro

du

ktiv

ität

Zeit

4GL

JavaCOBOL

C/C++

70’s

J2EE Komplexität

• mehrsprachig• Multi-tier• Web-basiert• Skalierbarkeit

80’s 90’s 00’s

Page 4: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Technologie im WandelSchritt halten mit dem Tempo von J2EE

• Sun SDK 1.2, 1.3, 1.3.1, 1.4

• J2EE 1.2, 1.3

• JSP 1.1, 2.0

• Java Servlet 2.2, 2.3, 2.4

• EJB 1.0, 1.1, 2.0

• JDBC 1.2.1, 1.3.1, 2.0, 2.1, 3.0

• JNDI 1.1.2, 1.2. 1.2.1

• JCA 1.0

• JTA 1.0.1, JTS 1.0

• JMS 1.0.2b, 1.1

• HTML

• XML 1.0, 1.1

• UML 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

• WebSphere, WebLogic, Sun AS, Oracle 9i AS

• Neu……

Page 5: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Aus der Praxis:eine fachliche Anforderung

Page 6: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Die Realisierung mit EJB2.0:

Page 7: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model Driven Architectur (MDA)Object Management Group (OMG)

Finanzwesen

E-Commerce

Gesundheitswesen

Andere..

Transportwesen

Raumfahrt

Produktion

Telekommunikation

• Was steckt dahinter?

– Plattform-unabhängiges Modell (PIM)

– Plattform-spezifisches Modell (PSM)

– Implementierung/Code-Modell

• Worin liegt die Bedeutung?

– Fokus auf Anwendung vs. Implementierung

– Entkopplung von Technologieänderungen

– Automatische Wiederverwendbarkeit der Komponenten

– Automatischer Knowhow-Transfer

– Kohärente Architektur der Anwendung

Page 8: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Implementation Model

Ableitung

Platform Specific Model

Ableitung

Komponenten Entwicklung mit der MDA

PIM

CORBAModel

XML/SOAPModel

OtherModel

CORBA XML/SOAP Other

Java/EJBModel

Java/EJB

Page 9: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte EntwicklungModel-driven Architecture (MDA)

OptimalJ implementiert den Standard der Model- driven Architecture (MDA) der Object Management Group (OMG)

Klare Trennung zwischen den Modellen und der Implementierung

– Platform Independent Model (PIM)

– Platform Specific Model (PSM)

– Code Model

Änderungen im Geschäft und der Technologie

– Konstante Veränderung der Umgebungen im heutigen Markt

– Das Geschäftsmodell (PIM) bleibt stabil

Entscheidend für den ROI

CodeModel

PlatformSpecificModel

PlatformIndependent

Model

Page 10: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Wie bildet OptimalJ die MDA ab?

Plattform-unabhängiges

Modell

Plattform-spezifisches

Modell

CodeModell

MDA OptimalJ

DomainModel

DomainService

DomainClass

ApplicationModel

DevelopmentModel

WEB, EJB, Database

IntegrationModel

CodeModel

SQLDDL

JavaServerPages

Web ServicesStubs &

Skeletons

EntitySessionMessage

Beans

Page 11: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Was sind Pattern ?

Ein Pattern ist eine allgemeine Lösung für ein allgemeines Problem in einem gegebenen Zusammenhang.

(A pattern is a common solution to a common problem in a given context.)Booch, Grady u.a., Unified Modelling Language User Guide, The Addison-Wesley Object Technology Series, (New York: Addison-Wesley), 1998.

Ein Pattern ist also eine Lösungsvorschrift

Page 12: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

OptimalJ: MDA und Pattern

Transformation Patterns– Verringern die Komplexität– Überführen Modelle der

oberen Ebenen automatisch in die darunterliegende Ebene

Technologie Pattern Implementierungs Pattern

Functional Patterns– Beschleunigen die

Entwicklung– Wiederverwenden von “Best

Practices” oder Implementierung von Standards

Domain Patterns Application Patterns Code Patterns (GoF)

Domain Model

CodeModel

Application Model

TransformationPatterns

FunctionalPatterns

ImplementationPatterns

ImplementationPatterns

TechnologyPatterns

TechnologyPatterns

Domain Patterns

Domain Patterns

ApplicationPatterns

ApplicationPatterns

Code Patterns

Code Patterns

Page 13: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model- basierte Entwicklung Erster Schritt: das OptimalJ Domain Model

Plattform unabhängiges Modell In UML beschrieben

– Struktur– Verhalten

Auf einen höheren Abstraktions Niveau entwickeln

– Nicht von technischen Details gestört– Zentriert auf das Geschäft– Fokus auf der Funktionalität– Deklarative Entwicklung

Definitionen im Modell werden automatisch widerverwendet Änderungen erfolgen schnell im Modell Import bestehender Modelle

– Datenbank Definitionen– UML/XMI Import

Export der Modelle

Page 14: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Beschleunigen die Modellierung und verringern Fehler

Eine Domain model library aufbauen

– Wiederverwendung des Modells

Einfrieren und vererben

Wizard-gestütztes ‘Pattern-weaving’

– Assoziationen

– Attribute

Austausch der Domain Pattern

Domain Model

CodeModel

Application Model

FunctionalPatterns

Domain Patterns

Domain Patterns

ApplicationPatterns

ApplicationPatterns

Code Patterns

Code Patterns

Model- basierte Entwicklung Domain Patterns

Page 15: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung Domain Services

Modell der Arbeitsschritte / Transaktionen

Arbeitet mit Untermengen des Domain Klassen Modells

Generiert automatisch Komponenten Definitionen für Web und Geschäftslogik im Application Model

Generiert automatisch JavaServer Pages und Session Bean Code Code

Model

ApplicationModel

BusinessRules

DBMSModel

DomainModel

SQLEntityBeans

DomainService

DomainClass

SessionBeans

JavaServerPages

Business LogicModel

WebModel

Page 16: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung Zweiter Schritt: das OptimalJ Application Model

Plattform spezifisches Modell

Automatische Transformation des PSM aus dem PIM

– Konsistenz

– Qualität

Presentation Model (Web)– Data schemas, Web Komponenten,

etc.

Business Logic Model (EJB)– Data schemas, key classes, Entity

Komponenten, Session Komponenten, etc.

Daten Modell (DBMS)– Relationales Datenmodell

– Tabellen, Spalten, Schlüssel, etc.

FunctionalPatterns

Domain Model

CodeModel

Application Model

TransformationPatterns

TechnologyPatternsTechnology

Patterns

ImplementationPatternsImplementation

Patterns

Page 17: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung OptimalJ Application Model - Message-Driven Beans

Die Struktur der Nachricht wird modelliert

Mit Nachrichten arbeiten

– Wizard gestützes Modellieren der Nachricht basierten Komponenten

Auswahl der Themen bei Publish/Subscribe

Spezifizieren der Queue und der Filter

– Code generieren

– Code anpassen

Page 18: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung OptimalJ Application Model – Data Access Objects

Die Performance der EJBs ist ein Engpass beim Lesen der Daten

OptimalJ geht zwei Wege

– Schnelles Lesen mit Hilfe der Data Access Objects (DAO’s)

Schnell und einfach

– Sicheres Schreiben mit Hilfe der EJB’s

Transaktionen werden unterstützt

Skalierbar

BrowserHTML/Java

Web serverJSP’s/Servlets

Database server

Applicationserver

EJB’s

Readfast

Writesecure

Page 19: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung OptimalJ Integration Model

CodeModel

ApplicationModel

DomainModel

DomainServices

Integration Model

EJBModel

WebModel

Session Beans, Web Servicessignatures, stubs, proxy &

helper

Java Server Pages

WebServices

CORBAKomponenten

CICSCobol

JavaKomponenten

• Web Services (WSDL)• CORBA (IDL)• CICS (Copybook/ Commarea)• Java signature

Page 20: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

JCA 1.0 Unterstützung für CICS

Unterstützung der ECI Resource Adapter für IBM’s CICS Transaction Gateway

Import der CICS Schnittstellen mit Hilfe OptimalJ‘s Cobol import facility

— Cobol copybook

— Cobol Commarea

OptimalJ generiert automatisch:

Connector Code basierend auf dem installierten Resource Adapter

Session Bean (wrapper)

Deployment Descriptoren

Model-basierte EntwicklungOptimalJ Integration Model - Legacy Integration

Page 21: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Import der WSDL Datei mit OptimalJ’s WSDL import facility

OptimalJ generiert automatisch den Connector Code aus den WSDL Definitionen

Generieren der OptimalJ Anwendung – Modelle und Code

Session Bean (wrapper)

Deployment Descriptor

Präsentations Komponente um den Web Service zu testen

Model- basierte Entwicklung OptimalJ Integration Model - Web Services Integration

Page 22: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Web Services werden auf Domain Services Ebene modelliert

Die OptimalJ Anwendung generieren – Modelle und Code

Session Beans

Deployment Descriptoren

Die generierten Session Beans als Web Services bereitstellen

WSDL Datei

Deployment Descriptor mit SOAP Unterstützung

Model- basierte Entwicklung Web Services definieren

Page 23: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Automatisiert die Integration bestehender Java Anwendungen

– Die benötige .JAR Datei auswählen– Die Java Klassen und Methoden untersuchen– Die benötigte Methode identifizieren– Die Signatur importieren– Den Code für die Integration dieser Java Methode

generieren

Analyse von Java Anwendungen mit OptimalJ’s Package Structure Analysis tool

– Visualisiert Abhängigkeiten zwischen Packages und Klassen

– Macht Vorschläge welche Abhängigkeiten entfernt werden sollten um die Struktur zu verbessern

– Stellt sofort die Auswirkungen des Source Code Refactoring grafisch dar

– Verifiziert den Source Code gegen das Design Modell

BEFORE

AFTER

Model-basierte Entwicklung OptimalJ Integration Model - Legacy Java Integration

Page 24: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung Dritter Schritt: OptimalJ Code Model

Automatische Transformation des PSM in Code

– Produktivität– Qualität– Konsistenz

Darstellungsschicht– Model View Controller framework

(MVC) – Java Server Pages (JSP), Servlets

EJB Schicht– Remote, bean class, home, primary

key classes etc.– Entsprechend der EJB Spezifikation

DBMS Schicht– SQL Scripte

Deployment Descriptoren– Für die Ziel Application Server

Domain Model

CodeModel

Application Model

TransformationPatterns

ImplementationPatternsImplementation

Patterns

TechnologyPatternsTechnology

Patterns

Page 25: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Model-basierte Entwicklung Code Generation

• Code für die DBMS Schicht– Create und Drop Table SQL Scripts

– SQL Scripts um Testdaten zu erzeugen

• Code für die EJB Schicht– EJB 1.1 oder EJB 2.0

– Home interfaces, Remote/Local Interface

– Entity beans und Session beans, Message driven beans

– Primary key Klassen und Finder Klassen

– Helper Klassen für Update Objekte und Daten Objekte

– Deployment Descriptoren für den EJB Server

• Code für die Darstellungsschicht– Action Klassen – führen Funktionen wie Suche, Anlegen,... aus

– Form Bean - Set und Get Methoden für die Attribute in der JSP

– JSP – für die HTML Kommunikation

– Struts-config.xml – definiert das Action Mapping

– webResources.properties - für Mehrsprachigkeit der Anwendung

Page 26: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Domain Model Diagramm– Klasses, Beziehungen,

Vererbungsstrukturen

Application Model Diagramme– Bessere Navigation durch die Anwendung– Besserer Überblick und besseres

Verständniss– Auswirkungen eine Änderung leicht zu

analysieren

Code Model Diagramm– Mit den Java Sourcen verbunden– Navigation durch die Packages– Diagramm Export und JavaDoc

Thumbnail view

“Free block” Navigation

Domain Model

CodeModel

Application Model

Diagrams &Editors

Domain Diagram

Web, EJB and DBMS

Diagrams

Java ClassDiagram

Model-basierte Entwicklung Visualisierung und Navigation

Page 27: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Geschäftsregeln Erweitern das Domain Modell Operationen werden im Domain

Modell deklariert Methoden

– Das Interface wird automatisch generiert

– Implementierung in ‘Free Blocks’– Leichte Navigation in die ‘Free

Blocks’ Regel wird in der Expression

Library implementiert – Nur an einer Stelle wird gewartet

Statische Regeln – Zentrale Stelle um Regeln zu

ändern– Neues Compilieren und

Deployment nötig Dynamische Regeln

– Können zur Laufzeit geändert werden

– Regeln werden dynamisch gebunden

– Kein Compilieren und Deployment

Page 28: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Transformation Patterns

Verringern die Komplexität

Transformieren die Modelle höherer Ebenen automatisch in Modelle niedrigerer Ebenen

Functional Patterns

Beschleunigen die Entwicklung

Benutzen Best Practices und implementieren Standards

Domain Model

CodeModel

Application Model

TransformationPatterns

FunctionalPatterns

ImplementationPatterns

ImplementationPatterns

TechnologyPatterns

TechnologyPatterns

Domain Patterns

Domain Patterns

ApplicationPatterns

ApplicationPatterns

Code Patterns

Code Patterns

Pattern-basiertert GeneratorOptimalJ Modelle & Patterns

Page 29: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Pattern examples

• Design patterns• Composite

• Singleton

• Factory

• Decorator

• Observer

• Chain of Responsibility

• Sun J2EE patterns• Front Controller

• Value Object

• Form Bean

• Session Façade

• Aggregate Entity

• Business Delegate

• Page Iterator

• Fast Lane Reader

• Persistency tier patterns• Create

• Delete

• Init

• SQL Workbench

• Business tier patterns• Single class EB

• Single aggregation EB

• Multi aggregation EB

• Single association SB

• Multi association SB

• Create

• Read

• Update

• Delete

• Presentation tier patterns

• Model View Controller

• Action

• Create

• Read

• Update

• Delete

• HTML

• WML

Pattern-basierter GeneratorVerwenden der Best Practices

Viele Pattern Typen

Mapping

– OO zu Relational

– Domain zum Sub-Modell

Anwendung

– Funktional

– Architektur

Implementierung

– Design

– Coding

– Schichtenspezifisch

Page 30: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Request

Controller

ActionJavaBean

BusinessFaçade

Data

DataData

Update Object

JavaServerPage

Servlet

ServletHTML

Pattern-basierter GeneratorVerwendung von Frameworks

Model-View-Controller Konzept

– Auf Basis des Struts Framework implementiert

– Erweiterungen für Dreamweaver

JSP-basierte Benutzerschnitt-stellen generieren

– HTML, WML, XML

– Macromedia Dreamweaverfür Anpassungen

Servlet-basierte Action JavaBeans generieren

Business Façade

– Fine grain in der Web und EJB Schicht

– Coarse grain zwischen den Schichten

XML conf.

Page 31: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Pattern-basierter GeneratorAnpassen und Warten der Pattern

Ermöglicht es interne Codierungs Standards zu implemenierten

Stellt ihr Expertenwissen automatisch den Designern und Entwicklern zu Verfügung

Stellt sicher das Standards benutzt werden

Volle Kontrolle über den generierten Code

Erfahrene J2EE Architekten schreiben, ändern und löschen die Pattern

Domain Model

CodeModel

Application Model

TransformationPatterns

ImplementationPatterns

ImplementationPatterns

TechnologyPatterns

TechnologyPatterns

Page 32: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Pattern-basierter Generator Template Pattern Language

Pattern Sprache um Logik zu realisieren und die richtigen Pattern zu nutzen

Zugriff auf das Meta Object Facility (MOF) Repository

Kleine Sprache die in Java Code übersetzt wird

PATTERN IMPORT FILE TEMPLATETYPE TEMPLATE GUARD FREE IF DO LET FOR FILE JOINPOINT

Page 33: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Pattern-basierter Generator „Modulare“ Pattern Architektur

OptimalJ’s modulare Pattern Architektur

– Zum Beispiel das Upgrade von EJB 1.1 auf EJB 2.0

– Installation der EJB 2.0 Pattern von OptimalJ

– Die Anwendung neu generieren

EJB 2.0 Funktionalitäten werden automatisch genutzt

– EJB 2.0 Attribut Deklarationen

– Container Manager Relationships (CMR)

– EJB Query Language (EQL) für die Finder Methoden

– Deployment Descriptoren

– Eigener Code bleibt bestehen

Page 34: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Pattern-basierter Generator Anpassung der Pattern

Baseline Pattern

Joinpoint A

Joinpoint B

My 1st Pattern

My 2nd Pattern

Frei zugängliche Pattern Sourcen Kunden haben größte Flexibilität

Kunden können nicht von neuen Versionen profitieren

Hooks in den Pattern erlauben es die Funktion des Patterns zu überschreiben und zu ergänzen Voll ausreichende Flexibilität

Upgrades werden genutzt

Page 35: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Active SynchronizationSchnelle Antworten auf Änderungen

Modelle und Code werden automatisch synchronisiert– Modell zentrierter Ansatz

Jede Änderung im Domain Model wird sofort in die unteren Modelle und den Source Code propagiert– Keine Differenz zwischen den

Modellen und dem Code Generierter Code in ‘geschützen

Blöcken’– Wird bei Generierungen

geändert– Kann nicht geändert werden

Erweiterungen in ‘Freien Blöcken’– Bleibt bei der Generierung

erhalten– Volle Kontrolle

Web Model

EJB Model

DataModel

Domain Model

CodeModel

Application Model

Domain Class

-attribute:int-attribute:int

Domain Class

-attribute:int-attribute:int

Domain Class

-attribute:int-attribute:int

Domain Class

-attribute:int-attribute:int

BusinessRulesEditor

IDE JSP EJB SQL

Synch

roniz

e

Page 36: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Active Synchronization Integrierte IDE – Netbeans IDE

OptimalJ basiert auf NetBeans 3.3

– MDI Entwicklung NetBeans IDE

– Source code Editor

– Syntax sensitiv

– Code Ergänzung Unterstützung von Projekten Remote Debugging Form Editor Compiler JAR packager

Page 37: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

JBuilder kann als IDE verwendet werden

Anpassung des von OptimalJ generierten Codes

Erkennt ‘Freie’ und ‘Geschützte Blöcke’– Anpassungen in ‘Freien Blöcken’– Bleiben beim Generieren erhalten

JBuilder Integration– OptimalJ SQL Workbench– Tomcat Webserver– JBoss Application Server– Solid Datenbank– Anpassung der Konfiguration– OptimalJ Assembly Workbench um

EAR‘s zu erzeugen

Active Synchronization Integrierte IDE – Borland JBuilder

Page 38: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Integriertes DeploymentVerringert die Komplexität

Package Builder um J2EE Anwendungen schnell in Betrieb zu nehmen

Deployment Descriptoren werden automatisch erzeugt

Test- und Produktions Server sind integriert

– Voll automatisches Deployment für funktionales Testen

Assembly Workbench um Enterprise Archives (.EAR) zu erzeugen

Test Production

TomcatJOnASJBossSolid

IBM WebSphere, BEA WebLogic,Sun ONE, Oracle 9iAS, JBoss,

Compuware OptimalServer

JSP EJB SQL

.WAR .JAR .DAR

.EAR

DeploymentDescriptors

DeploymentDescriptors

Page 39: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Integriertes DeploymentIntegrierte Profiling Umgebung

DevPartner for Java Edition 3.0

DevPartner for Java Edition erhöht die Zuverlässigkeit und Qualität des selbstgeschriebenen Codes

Performance Profiler identifiziert und löst Performance Engpässe

Memory Analyzer identifiziert und löst Speicherprobleme

Code Coverage analyzer hilft die Zuverlässigkeit des Codes zu verbessern

Page 40: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

OptimalJ Platform Support

Entwicklungs Plattformen

– Windows - NT/2000/XP

– Linux-Intel - Red Hat 7.3

– Solaris 8

Deployment Plattformen

– Application Server IBM WebSphere 4.0.1

BEA WebLogic Server 6.1/7

Sun One Application Server 6.5

Compuware OptimalServer 6.5

Oracle 9iAS release 3

JOnAs 2.4

JBoss 2.4/3.0

Datenbanken JDBC 2.x-compliant

Page 41: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

OptimalJ Developer Portalhttp://javacentral.compuware.com

OptimalJ Community Home– News

– White papers

– Dokumentation

– FAQ

– Foren

– Support Center

– Java Links

Page 42: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

Zusammenfassung

OptimalJ ist eine integrierte Modell basierte Entwicklungsumgebung– Implementiert die Model Driven Architecture (MDA) der

OMG vollständig

– Kombiniert mehrere Modell-Ebenen und mehrere Pattern-Ebenen

Die Entwicklung mit OptimalJ basiert auf– Grafischen Modellen

– Pattern-basierter Generierung

– Best Practices

– J2EE Spezifikationen

Page 43: Compuware Corporation MDA and Pattern how to do more with less Andreas Herzig Java Solutions Manager Central Europe

CompuwareCorporation

People and software for business applications sm