IBM Rational Software Development Conference 2008 - Jazz.net
Transcript of IBM Rational Software Development Conference 2008 - Jazz.net
![Page 1: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/1.jpg)
SDP21
IBM Rational SoftwareDevelopment ConferenceIBM Rational SoftwareDevelopment Conference
2008
© Copyright 2008 IBM Corporation. All rights reserved.
®
Scott RichDistinguished Engineer, Jazz Architect
IBM Rational
Introduction to the Jazz Technology Platform: Architecture Overview and Extensibility
![Page 2: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/2.jpg)
IBM Rational Software Development Conference 2008
SDP21 2© Copyright 2008 IBM Corporation. All rights reserved.
Agenda and Objectives
� Disclaimer: this is an introduction to some deep technical topics, not an introductory talk…
� We will cover:
�Jazz Objectives
�Jazz Platform Architecture
�Jazz Platform Extensibility
�We’re not done yet…
![Page 3: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/3.jpg)
IBM Rational Software Development Conference 2008
SDP21 3© Copyright 2008 IBM Corporation. All rights reserved.
Objectives/Architecture Requirements
� No boundaries between people
�Data and tasks from one tool are seamlessly visible in others
�Creative Collaboration across geography and organization
� Tools live the process
� Capability is strong but unobtrusive
� Support wide range of configurations
�Need modular, composable solution
� Stay flexible
![Page 4: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/4.jpg)
IBM Rational Software Development Conference 2008
SDP21 4© Copyright 2008 IBM Corporation. All rights reserved.
Think differently
�Current approaches for building tools don’t go far enough
"We can't solve problems by using the same kind
of thinking we used when we created them."
A. Einstein
![Page 5: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/5.jpg)
IBM Rational Software Development Conference 2008
SDP21 5© Copyright 2008 IBM Corporation. All rights reserved.
Think differently
� Desktop/Database Integration � Global Integration
� Function First � Team First
� Manual � Process Aware & Transparent
� Pre-determined Tool Function � Dynamically Extensible
� Proprietary infrastructure � Internet Standards
� Rigid Process � Creative Collaboration
![Page 6: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/6.jpg)
IBM Rational Software Development Conference 2008
SDP21 6© Copyright 2008 IBM Corporation. All rights reserved.
Items and relationshipsEvent history,
Item history trends
Jazz RepositoryDefectsRequirementsUse-cases, …..
….,BuildsSource code,
Test-casesTest results
Storage
Event Notification Search
Project and Team Structure Query
ProcessEnactment
Securityand Access
EclipseClient Platform
WebClient Platform
Visual StudioClient Platform
Jazz Team Server
Jazz Architecture
![Page 7: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/7.jpg)
IBM Rational Software Development Conference 2008
SDP21 7© Copyright 2008 IBM Corporation. All rights reserved.
Extending the Jazz Platform – Understanding jazz.war
/jazz/*
App Server
Jazz.war
Eq
uin
ox B
ridg
e S
erv
let
Equinox Framework
TeamServices
TeamWeb
WorkItemServices
PlanningServices
WorkItemWeb
Planning Web
SCM Services
/jazz/service/*
/jazz/web/*
../IWorkItemService
../IFileSystemService
../IPlanRestService
../WorkItemView.js
../PlanView.js
Jazz Server Provisioner
![Page 8: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/8.jpg)
IBM Rational Software Development Conference 2008
SDP21 8© Copyright 2008 IBM Corporation. All rights reserved.
Jazz Server Kernel
� Team Repository Services
�Provides the basics for
querying, fetching, and
updating repository data
�Provides a platform for extensible
AJAX Web UIs
�Provides support for change
events and feed rendering
�Provides access to and manages
component services
�Provides the notions of projects,
teams, and process
�Runs in an OSGI environment
Eclipse Equinox
Jazz Server Kernel
Jazz Server ExtensionsWeb UI
Container (Jetty, Tomcat, WAS)
Jazz Team Server
![Page 9: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/9.jpg)
IBM Rational Software Development Conference 2008
SDP21 9© Copyright 2008 IBM Corporation. All rights reserved.
Extending the platform - Service programming model
� It’s stateless services all the way down…
� Services are contributed by bundles
� Statelessness is key to scalability
� All state is in the DB, all client interactions are atomic
� Clusterable and restartable
� No session state (clients are stateful)
S
![Page 10: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/10.jpg)
IBM Rational Software Development Conference 2008
SDP21 10© Copyright 2008 IBM Corporation. All rights reserved.
Extending the Jazz Platform – repository data model…three DBs in one
� An open-ended item store
� Stores structured items as XML
� Stores arbitrary content as BLOBs
� A declarative indexing story to support query
� Lucene to support full-text search
� A snapshot framework for extracting summary data for reporting
Data warehouse DB
Operational DB
Item store(private)
Index data(queriable)
Data Warehouse
(public)
indexer extractor
S
![Page 11: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/11.jpg)
IBM Rational Software Development Conference 2008
SDP21 11© Copyright 2008 IBM Corporation. All rights reserved.
Simple Jazz Team Server Administration
![Page 12: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/12.jpg)
IBM Rational Software Development Conference 2008
SDP21 12© Copyright 2008 IBM Corporation. All rights reserved.
Authentication and Permissions
RepoDB
Corporate Directory
server
JazzTeam server
LDAPimport
Ap
p S
erv
er A
uth
en
ticatio
n
Process Permissions- team-managed
- role-based- dynamic
Repository Permissions:(Managed by IT)-Admin-Writer-Reader
![Page 13: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/13.jpg)
IBM Rational Software Development Conference 2008
SDP21 13© Copyright 2008 IBM Corporation. All rights reserved.
Process basics
� Teams work on projects
� Each project follows a process
� Work inside the scope of a team follows the team’s process
� Team members play roles defined by the process
� Process manifests itself through artifacts types, operations manipulating the
artifacts, and artifact change events
Learn more at SDP27:
Wednesday, 11:15
![Page 14: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/14.jpg)
IBM Rational Software Development Conference 2008
SDP21 14© Copyright 2008 IBM Corporation. All rights reserved.
Finding the Right Process 1 Jazz Project area defines process
2 Jazz team area does not customize the process
3 Process team area customizes the process
![Page 15: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/15.jpg)
IBM Rational Software Development Conference 2008
SDP21 15© Copyright 2008 IBM Corporation. All rights reserved.
Process Execution Flow
Client Server
Component Process Component Process
PreconditionsPermissions
PreconditionsPermissions
HandleRequest
Follow-ups
Follow-ups
HandleRequest
Server Request
Request Response + Process Reports
Client Request
Process Hints Enforced Process Rules
![Page 16: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/16.jpg)
IBM Rational Software Development Conference 2008
SDP21 16© Copyright 2008 IBM Corporation. All rights reserved.
What we learned
� Jazz Platform 0.6 provides a fully general server-side programming model
� Wire protocol is implementation, clients program to Java client libraries
� Resources modelled; serialized between client and server
� Clients communicate using RPC style interface
� Currently exploring providing a simpler programming model
� Provide an on-ramp to ease extensibility
� Characteristics of experiment
� Wire protocol is API, accessible to clients of all kinds
– Resource representations explicitly specified
� Clients communicate using RESTful interface
� More declarative building blocks
![Page 17: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/17.jpg)
IBM Rational Software Development Conference 2008
SDP21 17© Copyright 2008 IBM Corporation. All rights reserved.
Experiment: Implement tools like an internet application
� Build on Jazz experiences in Web UI
� Data specified independently of tools
� All data are resources with URLs
� Ubiquitous access
� Tools access data through HTTP/APP
� Multiple tools same data
� Data integration without forcing same tool for multiple roles
� References are embedded URLs
� Cross technology/location
� Resources have representations
� XML encouraged, not required
� Search and query through “structured indexes”, independent
� Standard analysis, query, reporting
HTTP GET/PUT/POST/DELETE
Index
![Page 18: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/18.jpg)
IBM Rational Software Development Conference 2008
SDP21 18© Copyright 2008 IBM Corporation. All rights reserved.
Summary: Ongoing Architectural Innovation
� The Jazz Platform is the plumbing inside every Rational Team Concert
� The Jazz Core team continues to innovate on the Platform, improving
�Capability
�Scalability
�Configurability
�Connectivity
�…
![Page 19: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/19.jpg)
IBM Rational Software Development Conference 2008
SDP21 19© Copyright 2008 IBM Corporation. All rights reserved.
Other pointers
� Platform Technical Overview on jazz.net
� Jazz Live Tuesday night, 6pm – meet the team
� Additional sessions with architecture content:
�CRMA38 - Architecture and Customization of the IBM Rational Team Concert Connectors
�SDP27 – Process Enactment
�SDP29 - Building Jazz with Jazz
�SDP30 - Best Practices from Internal Deployment
![Page 20: IBM Rational Software Development Conference 2008 - Jazz.net](https://reader031.fdocuments.net/reader031/viewer/2022030210/621e008cc5f7db19453047fa/html5/thumbnails/20.jpg)
SDP21
IBM Rational SoftwareDevelopment ConferenceIBM Rational SoftwareDevelopment Conference
2008
© Copyright 2008 IBM Corporation. All rights reserved.
®
Questions?
Thank you…