Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
© 2002 IBM CorporationConfidential | Date | Other Information, if necessary© 2005 by IBM Corporation; made available under the EPL v1.0 | 3 March 2005 |
A Model Driven Development Platform using Eclipse, EMF, UML and more
Sridhar IyengarIBM Distinguished EngineerChief Technical StrategistIBM Rational Software
2 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
OutlineKey Trends in Application Development Application Life Cycle Management
Integration of full lifecycle development, deployment and management tools
The Rise of UML, MOF, XMI standards and their pragmatic implementation at eclipse.org
The arrival of model visualization and code generation in open source frameworks (EMF, GEF and UML projects)
Building an MDD platform using EclipseA Look to the Future
3 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Some Key Trends in Application Development - 1The rise of open source (eclipse) and open standards (W3C, OASIS and OMG) based tools
From individual tools to a suite of tools – ‘End-end application lifecycle management’
From multiple tools platform (one for each vendor) to a unified Eclipse open tools platform with support for rich data/metadata interchange
The move to ‘Asset Based Development’The use of patterns, recipes and code/model transformation frameworks to speed developmentArrival of RAS – Reusable Asset Specification for managing asset metadata
Enterprise customers moving to integrated tool suites gradually – still many gaps to close
4 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Some Key Trends in Application Development - 2The concept of end-end Application Life Cycle Management taking holdEvolution of Software Development as a Business Process
IBM, Borland and now Microsoft are showing increased focus on Software Development as a process’‘Software Development as a Business Process’ is now highlighted by IBM, Borland and others
Vendors announce ‘new & improved’ platforms – with tools customized by role – yet integrated
Eclipse Open Source & Open standards basedIBM SDP - Software Development Platform (2004)Borland SDP - Software Delivery Platform (2005)
Microsoft Visual Studio Team SystemTools for each user role
Business Analyst, IT Architect, Data Architect, Developer, Tester, Manager, Executive etc
The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
An Enterprise Application Development Life CycleArchitecture Centric, Business driven,
Complex Life Cycle, Many Tools
And do this with quality in a distributed environment
Discovery and Transformation
BusinessModeling
Modeling Architecture,Object, Biz…
AddBusiness
Logic
Build /Wrap Components
Assemble& Test
Components
Configure &Deploy
Components
Models, Metadata, Mappings enabled Integration Platform
Manage
Components
ApplicationPlatforms
(J2EE, SOA..)
Acquired
Components
Rapid
Rigorous
6 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Model Driven Development & Deployment
BusinessModeling
(BPD,UML)
BusinessModeling
(BPD,UML)IT Modeling
(UML, SQL, XSD) IT Modeling
(UML, SQL, XSD)
J2EE/Web ServicesDevelopment
WrappingOrchestration
(J2EE))
J2EE/Web ServicesDevelopment
WrappingOrchestration
(J2EE))
DeploymentJ2EE App SvrWeb Services
DeploymentJ2EE App SvrWeb Services
Management
ComponentMgmt
App Mgmt
Management
ComponentMgmt
App Mgmt
Design/Build Run/Manage
WSDLWSDL J2EEJ2EEXMLXML
SPEMSPEM
BPELBPEL
SQLSQLJ2EEJ2EE
EMFEMF SQLSQL
UML2BPELUML2BPEL
JavaJava
CIMCIMUML2UML2BPMBPM
BizRulesBiz
RulesC++C++
J2EEJ2EE
TraceabilityLinks and
Transformations(profiles, metamodels,Code Gen Templates)
Serve up models, Components, processes
On Demand
UML2J2EE
UML2J2EE
DCMDCMSISI
Specific metadataModels
7 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
The IBM Software Development Platform on Eclipse
CustomerExtensions
3rd PartyISV Tools
Rational Software Architect
WSAD IE
Rational Application Developer
Rational Functional & Manual
Tester
Rational Performance Tester (2Q05)
Rational Team Unifying Platform
Tivoli Configuration
Manager
WebSphereBusiness
IntegrationModeler
& MonitorTivoli
MonitoringRational
Web Developer
AnalystAnalyst ArchitectArchitect DeveloperDeveloper TesterTester Deployment Manager
Deployment Manager
ProjectManager
Executive Rational Portfolio Manager
Rational Software Modeler
8 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Borland Core Software Delivery Platform on Eclipse : February 2005 announcement
9 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Microsoft Visual Studio Team System 2005
Source : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvsent/html/vsts-over.asp
10 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Have we solved the tools integration problem?
The work began in earnest in 2001 with the formation of eclipse.org and IBM’s donation to the open source project
We are in the ‘second inning’ : Eclipse Foundation members are uniquely positioned to solve the problem
Interestingly we are getting encouragement and help from customers to increase the pace
Example : UBS ‘Development Highway’ Case Study
Their complaint ‘Why cant you all get along and work together to solve our problem’!
© 2002 IBM CorporationConfidential | Date | Other Information, if necessary© 2005 by IBM Corporation; made available under the EPL v1.0 | 3 March 2005 |
Implementing Model Driven Development Lifecycle using Open Source and Open Standards
UBS Case Study – ‘The Development Highway’ Project
The next few charts with the UBS logoAre reproduced with permission from UBSCourtesy : Aniello Bove
12 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Basic Principles used in the ‘Development Highway’
Move to Model Driven Development and Service Oriented Architecture
Flexibility and separation of concerns between Business and IT domainsConsistent use of models and metadata across toolsConsistent use of development processes across golbally
distributed development teamsUse of commercial tools and application platforms that support open standards
J2EE, Web Services (W3C, WS-I, OASIS) and MDA (OMG) standardsUse Eclipse as the Tools Integration Platform
Reduce custom development of tools as much as possible and move to open standardsMultiple vendors ‘strongly encouraged’ to ‘co-operate’ in implement the development highway
13 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Development Highway – Early 2005
Platform Runtime
Workspace
Help
Team
WorkbenchEclipse Platform
DebugSource CodeResources
Eclipse Java Dev. Tools
(JDT)
IBM/Rational Dev. Tools(WSAD5)
UBS Service Design
Tool(DynaRep)
Serena Version Contr. Tool
(Cman DS)
Select UML Modelling Tool
(Component Architect)
UBSRequ. Mgmt Tool
(OCRWeb)
SerenaVersion Control
(Cmn ZDD)
Oracle DBOracle DB Fujitsu DB ZDD Repository
DSRepository
14 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
UBS Developer Front End View (Q3 2005)
Eclipse = Strategic Client Integration Platform
Platform Runtime
Workspace
Help
Team
Workbench
JFace
SWT
Eclipse Java Dev. Tools
(JDT)
Eclipse Platform
Debug
IBM/Rational Dev. Tools
(RAD)
UBS Service Design Tool
(DynaRep)
Serena Version Contr. Tool
(Cman DS/ZDD)
Innovations <tbd> Rules Modeler Tool
(Visual Rules)
EMF (XMI/Ecore)Model Resources
Source CodeResources
IBM/Rational UML Design Tool
(RSM)
SerenaReq. Mgmt Tool
(RTM)
15 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
UBS Development Repository/Model View User Workspace
Eclipse Platform
Team
Global UBS Software Asset Workspace
SWC1 SWC2 SWC3 ...
SWC10 ...
---
DevelopmentProject1DevelopmentProject2
ModelProject1
SWC3
SWC1
SWC10 SWCxx
RW
R R
Load, Unload,SynchronizeCheckin, CheckoutBaseline
DynaRepOracle
DB
Data Sync
ModelProject1
Eclipse EcoreEclipse EMF
Eclipse UML2 Meta1 Meta2
Eclip
seEM
FEMF.CodeGen IQGen Code Generator
Cha
ngeM
an D
S
Rep
osito
ry
16 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Summary : UBS use of Eclipse for Integration
The complete UBS model data is available in a structured set of Ecore based model files grouped around Eclipse Projects. This builds the Master Repository of the UBS Model Data.
A subset of the overall model data will be synchronized into a Oracle based Database. The information will be made available via "Webservices" to the DynaRep Eclipse Frontend for fast lookup and query requests.
DynaRep FE has the overall knowledge which model item can be found in which Eclipse Project and in which Ecore File.
Code Generation will be based on two lines:IQGen JSP Template driven against Oracle based modelEMF.CodeGen
In essence UBS is creating a Software Development Platform by agregating and integration commercial and custom developed Eclipse tools to address gaps in the end-end lifecycle
© 2002 IBM CorporationConfidential | Date | Other Information, if necessary© 2005 by IBM Corporation; made available under the EPL v1.0 | 3 March 2005 |
Using Eclipse, EMF, UML…to build an
open, integrated tools platform
Many of the ideas – influenced by MDA and MDD
But pragmatically implemented at eclipse.org and its member companies
18 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Agile LangAgile LangToolingToolingCobolCobolToolingTooling
GUI Builder XGUI Builder X
Eclipse Architecture: Layers & Subsystems
Java Virtual MachineJava Virtual Machine
Tooling PlatformTooling PlatformApp RuntimeApp Runtime
Language Developer ToolkitLanguage Developer Toolkit
Java DeveloperJava DeveloperToolingTooling
C++ DeveloperC++ DeveloperToolingTooling Graphical EditingGraphical Editing
FrameworksFrameworks
GUI BuilderGUI BuilderFrameworksFrameworks
ExtensibleTooling
FrameworksModels…
BasicFrameworks
Core
Test & Perf AnalTest & Perf AnalFrameworksFrameworks
Model & DesignModel & DesignFrameworksFrameworks
Test & Perf AnalTest & Perf AnalToolingTooling
Web ToolWeb ToolFrameworksFrameworks
Embedded ToolEmbedded ToolFrameworksFrameworks
GUI Builder XGUI Builder XModelingModelingToolingTooling
WebWebToolingTooling
EmbeddedEmbeddedToolingTooling
JVM
19 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
How is the IBM tools platform evolving
IBM began the move to the use of EMF as a tools integration metadata platform in 2001
We had a couple of iterations as we started with early versions of the OMG MOF 1.3 specSeveral optimizations led to creation of EMF and the Ecore model Over time the Ecore and MOF2.0 models have converged
The MOF2::EMOF compliance point is now supported by EMF (Import EMOF models to drive EMF generations)
As we implement the Rational ‘Atlantic’ tools we are learning more about how to improve the Eclipse tools platform
It is becoming more model driven! This transition will take time
The next few charts illustrate our current thinking We expect this will iterate as new Eclipse projects (Web Tools Project, Data Tools Project , the anticipated ‘Graphical Modeling Framework’GMF projects move forwardEclipseCon Technical Exchange had sessions by Borland, IBM and others to discuss the GMF project
20 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
21 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
Integration with EclipseEclipse-independent core APIsCompatibility with EMOF Customizable serialization/deserializationto/from XMIInteroperability with other EMF-based components
22 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple viewIntegration with EclipseEclipse-independent core APIsCommon look and feel with other GEF-based componentsExtensible palette with built-in tools, …Extensible controller framework for mapping model to view…
23 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
Integration with EclipseEclipse-independent core APIsCompliance with UML (Unified Modeling Language) 2.0, an OMG standardValidation rules based on OCL constraintsInteroperability with other UML2-based components
24 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
Service infrastructureCommand infrastructureIcon Service, Parser Service, Properties ServiceGlobal Action Service
Validation ServiceEMF Query and Indexing Service Batched notifications supportCopy/paste supportSemantic procedures…
25 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
Provides an extensible EMF-based notation meta-modelOptimized for GEFOptimized for team supportEnables separation of semantic and notation modelsProvides basic styles (font, location, color, etc…)
26 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
Realizes the notation modelExposes a set of extensible services that allow you to create extensible diagramsReusable edit parts, edit policies and figuresProvides standard actions (e.g. Z-Order commands, fonts, etc…)Provides clipboard support (SVG, etc…)Provides linked diagram supportReusable layoutsPrint preview support…Visualization service
27 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple viewExtends generic Notation Model with UML specific stylese.g. Stereotype display mode
28 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
1 or more plugins per diagram type
ActionsCommandsDecoratorsDialogsEdit Parts, Edit Policies, FiguresIconsPreferenceProperties
29 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
IBM Modeling Platform Architecture: A simple view
30 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Application Life Cycle Integration PlatformA call to action to the Eclipse Community
End to End Application Lifecycle Tooling (End to End Application Lifecycle Tooling (Eclipse.orgEclipse.org member value add tools)member value add tools)
Language Tooling Language Tooling (J2EE, Web Services, (J2EE, Web Services,
Deployment)Deployment)
Data ToolsData Tools(RDBMS, XML(RDBMS, XML……))
Domain Domain SpecificSpecific
Tools/AppsTools/Apps……
MDD ToolsMDD Tools(Object, Data Modeling,(Object, Data Modeling,
Code generatorsCode generators……))
Eclipse Tools Integration platform (Models, APIs, XML formats…)
Eclipse CoreEclipse Core
GEFGEF JDT/CDTJDT/CDT
TestingTestingTPTPTPTP
EMFEMF RCPRCP ETC.ETC.
MDD/MDAMDD/MDA(UML2,U2TP(UML2,U2TP……))
J2EEJ2EE(EJB, JSP(EJB, JSP……))
Web Services Web Services (XSD(XSD……))
ETC.ETC.
Code/Artifact Repositories, Management Tools (Code/Artifact Repositories, Management Tools (Eclipse.orgEclipse.org member value add tools)member value add tools)
31 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
SummaryApplication Life Cycle Management is becoming a visible initiative driving software tool suitesEclipse and Visual Studio are anchoring the emerging tools platform and moving to support Rapid Application Development & Model Driven DevelopmentThe Eclipse community is using open standards and open source to create a diverse and innovative tools ecosystem
Come join these efforts to simplify application development and deployment
The Model Driven Tools Platform is ready to be exploited by vendors as well as enterprise customers
32 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Trademarks
OMG™, MDA™, UML™, MOF™, and XMI™ are trademarks of the Object Management GroupIBM™ is a trademark of the IBM CorporationJava™ and J2EE™ are trademark of SUN MicrosystemsXML™ is a trademark of W3CAll other trademarks belong to their respective organizations
33 The Eclipse Phenomenon | © 2005 by IBM Corporation; made available under the EPL v1.0
Thanks