sdp22: the ibm jazz foundation and the ibm jazz ... · evolving the jazz architecture: pressures on...
TRANSCRIPT
SDP22: The IBM Jazz Foundation and the IBM Jazz Integration Architecture
© 2009 IBM Corporation
Jazz Integration Architecture
Scott RichDistinguished Engineer, IBM Jazz Team
SDP22: The IBM Jazz Foundation and the IBM Jazz Integration Architecture
SDP22
Jazz Integration Architecture
Scott RichDistinguished Engineer, IBM Jazz Team
IBM Rational Software Conference 2009
2
Agenda
� Brief overview of the Jazz 0.6 Architecture
� The Jazz Integration Architecture
SDP22
� Introducing the Jazz Foundation
� The Jazz Foundation in action
�Examples of degrees of adoption from Jazz products
Brief overview of the Jazz 0.6 Architecture
The Jazz Integration Architecture
Introducing the Jazz Foundation – JIA delivered
The Jazz Foundation in action
Examples of degrees of adoption from Jazz products
IBM Rational Software Conference 2009
3
Where are we on the Jazz journey?
� Five years ago we had a vision for a new platform for collaborative software lifecycle tools
�We built a platform to enable our first round of products: Rational Team Concert
and Rational Quality Manager
�This platform was bundled into those first products: “the Jazz 0.6 platform”
SDP22
� As we looked at integrating a larger set of products we needed to expand our thinking
�The Jazz Integration Architecture evolved
�We built Rational Requirements Composer in this style
� In 2009, we're delivering an expanded platform: Foundation 1.0”
Where are we on the Jazz journey?
Five years ago we had a vision for a new platform for collaborative
We built a platform to enable our first round of products: Rational Team Concert
This platform was bundled into those first products: “the Jazz 0.6 platform”
As we looked at integrating a larger set of products we needed to
The Jazz Integration Architecture evolved
We built Rational Requirements Composer in this style
In 2009, we're delivering an expanded platform: delivering “the Jazz
IBM Rational Software Conference 2009
4
Project and Team Structure
ProcessEnactment
EclipseClient Platform
WebClient Platform
Jazz Collaboration Server
Jazz Architecture - 2008
SDP22
Items and relationshipsEvent history,
Item history trends
Jazz RepositoryDefectsRequirementsUse-cases, …..
Storage
Event Notification
Rational ClearCase
Search
Securityand Access
WebClient Platform
Visual StudioClient Platform
Jazz Collaboration Server
Items and relationshipsEvent history,
Item history trends
Jazz Repository….,Builds
Source code, Test-cases
Test results
Storage
Conversation
Rational ClearQuest
IBM Rational Software Conference 2009
5
Anatomy of a Jazz 0.6 Component
� Client library
� Services / REST services
�
� Web extension
� Any of the three or any combination
Jazz Wiki Component
wiki.client.jar wiki.common.jar
wiki.server.jarwiki.web.jar
SDP22
Jazz Eclipse Client
Jazz Web Client
Client library
Services / REST services
Storage model extension
Web extension
Any of the three or any combination
Jazz Team Server
IBM Rational Software Conference 2009
6
Evolving the Jazz Architecture: Pressures on the 0.6 platform
� Integrating many disparate clients and servers
– Integration is the core value of the Jazz vision
– Telelogic and other Rational servers need to be reachable
– Customers and partners need to be able to integrate
SDP22
– Customers and partners need to be able to integrate
�Durable client APIs
– Java XML marshalling is not portable or flexible enough
� Loosely-coupled tools
– Need to allow client and server evolution
– Data is the asset and needs to be openly available
Evolving the Jazz Architecture: Pressures on the 0.6 platform
Integrating many disparate clients and servers
core value of the Jazz vision
Telelogic and other Rational servers need to be reachable
Customers and partners need to be able to integrateCustomers and partners need to be able to integrate
Java XML marshalling is not portable or flexible enough
Need to allow client and server evolution
Data is the asset and needs to be openly available
IBM Rational Software Conference 2009
7
Agenda
� Brief overview of the Jazz 0.6 Architecture
� The Jazz Integration Architecture
SDP22
� Introducing the Jazz Foundation
� The Jazz Foundation in action
�Examples of degrees of adoption from Jazz products
Brief overview of the Jazz 0.6 Architecture
The Jazz Integration Architecture
Introducing the Jazz Foundation – JIA delivered
The Jazz Foundation in action
Examples of degrees of adoption from Jazz products
IBM Rational Software Conference 2009
8
The Internet – an inspiration for an architecture
�Amazingly scalable
� Integrates information on a massive scale
� Infinitely extensible
SDP22
�Collaboration on unprecedented scale
�World-wide information visibility
an inspiration for an architecture
Web Pageshtml, css, js
Audio/Videomp3, divx, mov
Documentspdf, doc
Indexgoogle, yahoo
HTTPget/put /post
IBM Rational Software Conference 2009
9
What does Internet inspiration mean?
� Data specified independently of tools
� All data are resources with URLs
� Multiple Tools access data
� References are embedded URLs
SDP22
� References are embedded URLs
� Resources have representations
� Unprecedented extensibility
� Independent search and query
� REST (Representational State
Transfer)
What does Internet inspiration mean?
Data specified independently of
All data are resources with URLs
References are embedded URLs
Diagrams
Requirements
Change
Requests
GlobalIndex
References are embedded URLs
Resources have representations
Independent search and query
REST (Representational State
HTTPget/put /post
IBM Rational Software Conference 2009
1
0
Signs of success for RESTful
� Internal Sametime client developed against early work item REST interfaces
�Partner at RSDC 2008 demo'ed kanban board
SDP22
�Partner at RSDC 2008 demo'ed kanban board
�SCM REST interfaces enabling Visual Studio client and future command line
Signs of success for RESTful-ness...
Internal Sametime client developed against early work item REST interfaces
Partner at RSDC 2008 demo'ed kanban boardPartner at RSDC 2008 demo'ed kanban board
SCM REST interfaces enabling Visual Studio client and future command line
IBM Rational Software Conference 2009
1
1
Jazz Services
Data Specific Information Flow
The Software Delivery Platform
Change & Configuration Management
Requirements Management
SDP22
Core Services
Open Lifecycle Services
DiscoveryDiscovery
Administration(users, projects, process)
Administration(users, projects, process)
Presentation(mashups)
Presentation(mashups)
Additional ServicesAdditional ServicesCollaborationCollaboration
REST API
Jazz Services – logical view
Data Specific Information Flow
Change & Configuration Management
QualityManagement
Core Services
Open Lifecycle Services
DiscoveryDiscovery
Administration(users, projects, process)
Administration(users, projects, process)
QueryQuery
Additional ServicesAdditional Services StorageStorage
REST API
IBM Rational Software Conference 2009
1
2
Open Services for Lifecycle Collaboration
� Community initiative to enable integration
– Described at open-services.net
– Scenarios
– Common resource definitions
An initiative aimed at simplifying collaboration across the software delivery lifecycle
SDP22
� Inspired by Internet architecture
– Loosely coupled integration
– “just enough” agreement
Open Services for Lifecycle Collaboration
Community initiative to enable integration
services.net
An initiative aimed at simplifying collaboration across the software delivery lifecycle
Requirements
Change
GlobalIndex
Inspired by Internet architectureDiagrams
Change
Requests
HTTPget/put /post
IBM Rational Software Conference 2009
1
3
Open Services for Lifecycle CollaborationPutting the approach into practice
� Step 1: Internet URLs for resources
� Step 2: Shared resource formats
� Step 3: Shared resource services
SDP22
Open Services for Lifecycle CollaborationPutting the approach into practice
Step 1: Internet URLs for resources
Step 2: Shared resource formats
Step 3: Shared resource services
IBM Rational Software Conference 2009
1
4
OSLC: loosely coupled integration
Change Mgmt
POST, Query, etc
change requests
SDP22
Test management system can interface with any OSLCchange management system
OSLC: loosely coupled integration
Test
ManagementPOST, Query, etc
change requests
Test management system can interface with any OSLC-compliant change management system
IBM Rational Software Conference 2009
1
5
JIA: Enables deeper integration
Rational Team
Concert 2.0POST, Query, etc
change requests
SDP22
Jazz
Dashboard
Application
JIA: Enables deeper integration
Rational Quality
ManagerPOST, Query, etc
change requests
Jazz Foundation Services
IBM Rational Software Conference 2009
1
6
Ease o
f I
nte
gra
tio
n• Shared Storage• Common Security / Permissions• Process Integration• Advanced UI and Value Integrations
• Shared Web-based User Interface• Common Login• Shared Administration
Months
To Years
Weeks to
Integration Architecture – As Much as you Want /Need
SDP22
Ease o
f I
nte
gra
tio
n
LEGACY J2EE “PORT”
Loosely CoupledIntegration of Total Lifecycle Data
Breadth of Business Value
• “Blackbox” Access to Resources• Internet-style URL’s for Resources• Common Elements for Lightweight User interface integration• Adding RESTful interfaces on Existing Product
• Shared Administration• Integrated Indexing, Search and Query Service
Days to
Weeks
Weeks to
Months
Shared, Seamless Integration Through Internet Technologies
Invisible Tools with Boundless Interactions
Common Security / Permissions
Advanced UI and Value Integrations
based User Interface
As Much as you Want /Need
NEW ORREPURPOSED
J2EE “PORT”
Internet Technologies
Breadth of Business Value
“Blackbox” Access to Resourcesstyle URL’s for Resources
Common Elements for Lightweight User interface integrationAdding RESTful interfaces on Existing Product
Integrated Indexing, Search and Query Service
IBM Rational Software Conference 2009
1
7
Independent products that take advantage of common Jazz services and processes while retaining their own infrastructure.
Integrated with Jazz
Rational Jazz Products
Category Comparisons: Functional Characteristics
Leverage standards based API’s
Synchronize data across separate products
Synchronize workflows across separate products
Create and manage linkages between artifacts across
separate product repositories
SDP22
separate product repositories
Reuse existing Jazz deployment investments
Common install and provisioning
Common presentation services
Common collaboration services
Cross product querying
Centralized project and process definition
Location agnostic services and infrastructure
Independent products that take advantage of common Jazz services and processes while retaining their own infrastructure.
Integrated with Jazz Built with Jazz
Products that fully exploit the Jazz services, processes and infrastructure for collaboration, automation, and reporting
Category Comparisons: Functional Characteristics
���� ����
���� ����
���� ����
���� ����
����
����
����
����
����
����
����
IBM Rational Software Conference 2009
1
8
Agenda
� Brief overview of the Jazz 0.6 Architecture
� The Jazz Integration Architecture
SDP22
� Introducing the Jazz Foundation
� The Jazz Foundation in action
�Examples of degrees of adoption from Jazz products
Brief overview of the Jazz 0.6 Architecture
The Jazz Integration Architecture
Introducing the Jazz Foundation – JIA delivered
The Jazz Foundation in action
Examples of degrees of adoption from Jazz products
IBM Rational Software Conference 2009
1
9
Jazz Foundation:in addition to Architecture, an Implementation
� Implementation of the Jazz Team Server
– including the Jazz Foundation Services
� Toolkits that aid in the construction of Jazz applications
SDP22
applications
– facilitate implementation of products in popular languages that adhere to the Jazz architecture
� Continuity for Jazz 0.6 components
– In addition, the Jazz Foundation represents the continuation
of the work done in the Jazz Platform 0.6 release, with an
increased focus on REST interfaces and enabling integration
of Jazz tools. The Foundation will continue to provide the
building blocks for the existing Jazz components.
in addition to Architecture, an Implementation
Implementation of the Jazz Team Server
including the Jazz Foundation Services
Toolkits that aid in the construction of Jazz
facilitate implementation of products in popular languages that adhere to the Jazz architecture
Continuity for Jazz 0.6 components
In addition, the Jazz Foundation represents the continuation
of the work done in the Jazz Platform 0.6 release, with an
increased focus on REST interfaces and enabling integration
of Jazz tools. The Foundation will continue to provide the
building blocks for the existing Jazz components.
IBM Rational Software Conference 2009
2
0
2009 Roadmap – Initial Jazz Foundation Release
� Vanguard Product Integrations
�REST APIs for Collaborative ALM (C/ALM) scenarios
�Basic Discovery
� Solid Foundation
�REST APIs for initial JIA services, resource definitions
�Server SDK for building Java server extensions
�New Web UI building blocks
SDP22
�New Web UI building blocks
�Increased flexibility in defining Process Areas
� Enterprise Scalablity and Security
�Project level read ACLs
�Unlocking server limits
� See Release Plan at: https://jazz.net/development/DevelopmentItem.jsp?href=content/project/plans/jf
Initial Jazz Foundation Release
REST APIs for Collaborative ALM (C/ALM) scenarios
REST APIs for initial JIA services, resource definitions
Server SDK for building Java server extensions
Increased flexibility in defining Process Areas
https://jazz.net/development/DevelopmentItem.jsp?href=content/project/plans/jf-plan-1.0.html
IBM Rational Software Conference 2009
2
1
Jazz Team Server 1.0.0.1
SDP22
IBM Rational Software Conference 2009
2
2
Developing an Application using Jazz Foundation Services
� JFS Applications can be written in any language
�Deployed to any runtime
environment
�Using “native” support for RESTful
applications
SDP22
� Additional help is provided for Java application developers
�Delivered as a Server SDK
�A cookbook for writing Java JFS
applications
�A set of optional helper libraries
� “POJO” or OSGi-style apps are enabled
Developing an Application using Jazz Foundation Services
Application
Jazz
Foundation Http
Client
RES
T
Fram
Server SDK Libraries
RDFCachin
gOAuth
Query
LibXML
Foundation
ServicesClient
Library
Http
Cache
Fram
ewor
k
IBM Rational Software Conference 2009
2
3
Developing an Application using Jazz Foundation Services
� For applications with extensibility requirements
�OSGi component model,
bundles for deployment
�Declared extension points and
extensionsApplication
Clients
SDP22
extensions
�Jazz provisioning to configure
and load your application
Developing an Application using Jazz Foundation Services
Application
Plug-ins Jazz
Foundation
Services
Http
Client
Servic
RES
T
Fram
Server SDK Library Plug-ins
RDFCachin
gOAuth
Query
LibXML
ServicesServic
e
Http
Cache
ewor
k
OSGi Service Framework
IBM Rational Software Conference 2009
2
4
2010 Roadmap – Completing the JIA Architecture
�Additional Foundation Services become API
� Administration
� Presentation
� Collaboration
�Enabling UI and Core components
SDP22
�Flexible deployments
�Increased scalability
Completing the JIA Architecture
Additional Foundation Services become API
Enabling UI and Core components
IBM Rational Software Conference 2009
2
5
Agenda
� Brief overview of the Jazz 0.6 Architecture
� The Jazz Integration Architecture
SDP22
� Introducing the Jazz Foundation
� The Jazz Foundation in action
�Adoption examples from Jazz products
Brief overview of the Jazz 0.6 Architecture
The Jazz Integration Architecture
Introducing the Jazz Foundation – JIA delivered
The Jazz Foundation in action
Adoption examples from Jazz products
IBM Rational Software Conference 2009
2
6
Examples of Levels of Jazz integration
� Rational Team Concert and Rational Quality Manager
�Built on the Jazz 0.6 platform
�Extended in 2.0 with OSLC interfaces enabling linking and
navigation
SDP22
� Rational Requirements Composer
�Version 1.0 – client to Jazz REST Services server
�Version 2.0 – full JIA application
� Rational Software Architect “Cool School” prototype
�Team-enabled model storage, review, collaboration
Examples of Levels of Jazz integration
Rational Team Concert and Rational Quality Manager
Built on the Jazz 0.6 platform
Extended in 2.0 with OSLC interfaces enabling linking and
Rational Requirements Composer
client to Jazz REST Services server
full JIA application
Rational Software Architect “Cool School” prototype
enabled model storage, review, collaboration
IBM Rational Software Conference 2009
2
7
Business expert collaboration
Elicit, capture, elaborate, discuss and review requirements
RationalRequirements Composer
RationalTeam Concert
Core team collaboration
"Think and work" in unison and provide real-time project heath
The first wave of Jazz integrations
Changes; notification
Requirement linked to work item
Analyst
SDP22
Architect
REST API
Requirements Management
Change & Configuration Management
REST API
Defects closed against requirements
Analyst
Quality team collaboration
RationalQuality Manager
Coordinate quality assurance plans, processes and resources
RationalTeam Concert
Core team collaboration
"Think and work" in unison and provide time project heath
The first wave of Jazz integrations
Association
Tester finds defects,generates work item
Tester
Developer
REST API
QualityManagement
Change & Configuration Management
REST API
Defect status
Tester
IBM Rational Software Conference 2009
2
8
Our first JIA-based product: Rational Requirements Composer
� RRC 1.0 client and JRS server
�RRC “server” pushes thumbnails, mail, composites
RRC Client
SDP22
RRC “server”
Client
- composite requirements docs
- thumbnails
based product: Rational Requirements
RRC “server” pushes thumbnails, mail, composites
JRS ServerJRS ServerStorage
Indexing
Query
composite requirements docs
thumbnails
IBM Rational Software Conference 2009
2
9
Our first JIA-based product: Rational Requirements Composer
� RRC 2.0 client and Jazz Team Server
�Fronting application implements Requirements value
RRCRPC
SDP22
● composite requirements docs
● thumbnails
● custom indexing
● caching
RPCClient RRC
ServerRRCRPC
Client
based product: Rational Requirements
RRC 2.0 client and Jazz Team Server
Fronting application implements Requirements value-add
JTS ServerJTS ServerStorage
Indexing
Querycomposite requirements docs
custom indexing
IBM Rational Software Conference 2009
3
0
Rich JFS Example: “Cool School” Collaborative Modelling
� Model-based collaboration for RSx models on the Web
– Search and query models
– View diagrams, view element properties
– Comment and markup diagrams
� Dashboard
SDP22
– Model validation/health status
– Model SCM status (CC, RTC)
� Team review and discussion of published models
� Moving towards:
– “native” JFS model storage
– Traceability linkage between model elements and Requirements
C P
Rich JFS Example: “Cool School” Collaborative Modelling
based collaboration for RSx models on the Web
View diagrams, view element properties
Team review and discussion of published models
Traceability linkage between model elements and Requirements
IBM Rational Software Conference 2009
3
1
Modeler
SDP22
IBM Rational Software Conference 2009
3
2
Summary: Integration Inspired by the World
The evolution of software delivery: Surf the “ALM web”
� SDLC Data model � Cohesive, open and customizable data model for the
� Proven architecture and principles of the Internet� Presentation / Semantic Split � Open, Extensible and On
Architecture
Jazz Integration
Architecture
Open Services for
Lifecycle
SDP22
All three of these areas must be addressed
� “Green Threads”� “Real-World” End� Role-based, task
� Cohesive, open and customizable data model for the whole SDLC
� Collaborate openly on common service definitions� Comprehensive capabilities across components
Workflow
DataLifecycle
Collaboration
C/ALM scenario’s
moving to Jazz.net
Summary: Integration Inspired by the World-wide Web
The evolution of software delivery: Surf the “ALM web”
SDLC Data model Cohesive, open and customizable data model for the
Proven architecture and principles of the InternetPresentation / Semantic Split Open, Extensible and On-Demand
All three of these areas must be addressed
“Green Threads”World” End-to-end lifecycle
based, task-based user experiences
Cohesive, open and customizable data model for the whole SDLC
Collaborate openly on common service definitionsComprehensive capabilities across components
IBM Rational Software Conference 2009
3
3
For more information
� Jazz Foundation project at http://jazz.net
� Open Services for Lifecycle Collaboration at http://www.open
SDP22
� Open Services for Lifecycle Collaboration at http://www.openhttp://www.open-services.nethttp://www.open-services.net
IBM Rational Software Conference 2009
3
4
SDP22
IBM Rational Software Conference 2009
3
5
SDP22
© Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warraIBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing corepresentations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreemor services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or camarket opportunities or other factors, and are not intended to be a commitment to future product or feature availability in aIBM products and services are trademarks of the International Business Machines Corporation, in the United States, other counof others.
The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks