IBM Rational Software Development Conference 2008 Collaborative Software Development An Introduction to Rational Team Concert Erich Gamma Distinguished Engineer, Jazz Technical Lead IBM Rational Zurich Research Lab erich_gamma@ch.ibm.com SDP 19 2008 IBM Corporation. All rights reserved.
Outline Guiding Principles for Team Concert Demo Join a team and fix a bug Support for Agile Teams 2
Jazz and Team Concert Jazz is a technology platform Rational Team Concert the first Jazz based product 3
Collaborative Development Environments The purpose of a Collaborative Development Environment is to create a frictionless surface for development by eliminating of automating many of the daily, non-creative activities of the individual and the team and by providing mechanisms that encourage creative, healthy, and high-bandwidth modes of communication among a project s stakeholders Grady Booch Guiding Principles for Team Concert Integration of work flows and artifacts Team First the tools know about the team Collaboration on artifacts/work products following the rules of the team (Process) Transparency/visibility into what is happening in project for everybody 4
Rational Team Concert SCM Change sets Streams Components Parallel development GDD ClearCase Connector Work Items Defects, Enhancements Task tracking, planning Queries Approvals Iteration planning ClearQuest Connector Build Work Item and Change Set Traceability Supports Ant, Maven and Command line Tools Personal Builds Integration with Build Forge Project, Teams, Users Process enactment, customization, permissions In-context Collaboration, Events, Presence Reporting, Dashboards (project, team, personal) Jazz Team Server 5
Integration Tools should be invisible Users work and collaborate on tasks Integrated flows Linked artifacts Work Items SCM Build Reports Project Mgt. joining a team what is happening in the team? following the team s process starting an ad hoc/dynamic/tiger team Fix a bug find out if a fix is in the build? run a personal build Tools tracking a broken build reconstructing a context for a bug/build failure x interrupting development due to a high priority bug fix working on multiple releases concurrently tracking the code review of a fix tracking status Tasks 6
Team First Tools know the Team Process Work Categories Streams is responsible delivers Team follows owns has Members produces Build Dashboard monitors Events generates defines Release/ Iteration Plan 7
Collaboration Rules: Process Teams work on projects each project follows a process different processes for different projects Process manifested through: artifact types and their states preconditions and follow-up actions on operations manipulating artifacts Eclipse Way Jazz Way Scrum OpenUP artifact change events roles and permissions Described with Process templates Process can evolve as project progresses 8
Transparency/Visibility Knowing what is going on without having to ask Transparency in process team structure team roles team rules Transparency in development automatic linking build results/reports Dashboards/Reports for an individual for a team For a project 9
Team Dashboard www.jazz.net>development 10
Team Dashboard (Cont d) 11
Trends across Teams 12
A Personal Dashboard 13
DEMO joining a team and fixing a first bug 14
Team Concert support for Agile Teams Eclipse/RAD supports agile practices for a team member Refactoring Unit testing, test coverage Team Concert provides agility for a team Teams Process templates Agile process specific work item types Iteration planning Continuous integration Agile SCM practices Visibility/transparency 15
Process Templates Different agile templates available: Agile Scrum OpenUP Eclipse Way Agile process specific work item types Process can be tweaked at any time 16
Teams Easy to set-up easy to get started Dynamic teams Team owns its process 17
Team Awareness Events My events Team events Team central Team visibility/awareness User presence 18
Iteration Planning Planning integrated with bug/defect tracking Process template define process specific work item types Work break down (Stories, Tasks) Team load 19
Iteration Planning applied for Scrum 20
Visibility: Reports/Dashboards Burndown charts Configurable dashboards Visibility for everyone 21
Continuous Integration Build results integrated into eclipse Build awareness Linkage between Work item fixed in build Build corresponding to a Build and release change-sets in build Personal builds 22
Build and Test Health 23
Test Health 24
Agile SCM Best Practices* Jazz SCM supports agile best practices Refactoring tracking enables aggressive/agile refactoring Private versions Easy collaboration on change sets Attach to work item Delivery rules Suspending changes And more * Software Configuration Management, Patterns: Effective Teamwork, Practical Integration By Steve Berczuk with Brad Appleton Published by Addison-Wesley 25
Scaling-up: Teams of Teams Team Team stream Sharing change sets Continuous build Team events Teams of Teams Integration/stabilization streams Sharing baselines Integration builds A contributor can be a member of more than one team 26
Summary: Agile Practice Coverage Impediments Burndown Sprint Review Meeting Daily Stand-up Scrum Refactoring Test First Sprints Iterations Acceptance Test Continuous Integration Retrospectives Product Backlog Pair programming Stories P Onsite Customer Unit Test Task level commit Smoke Test Agile SCM Patterns* Private workspace Task Branch Integration Build Private Versioning Code line Policy Private System Build 27
Integrations with Others Import Bridge Connectors One way data migration Bugzilla repository SVN Bridge links work items with change sets. Mylin repository connector (incubator) Two way data synchronization Jazz Repository Jazz Repository CVS or SVN repository Subversion repository Jazz Repository ClearCase (Base and UCM) 28 28
Developing Jazz/Team Concert with Team Concert 29
www.jazz.net the Jazz community 30
The Rational Team Concert family 2008 SVN Work Items SCM Build Rational Team Concert Zip File SVN SCM Work Items Build Rational Team Concert Install Manager -60 day Eval SCM Work Items Rational Team Concert Build CC CQ SVN BF Install Manager 60 day Eval Express-C Derby Tomcat Express DB2 Express, DB2 or Oracle Tomcat or WAS Standard DB2 Express, DB2 or Oracle Tomcat or WAS Up to 10 Users Up to 50 Users Up to 250 Users Authentication Server Level User Permissions Authentication Server Level User Permissions User Import and Synchronization Proxy Support when available as add-on Customizable Work Items Role-based Process Permissions Reports User Customizable Dashboards ClearCase and ClearQuest Connectors 31
Getting Started Go to Jazz.net Browse the forums Read the Blogs Explore the JUnit Sample Project Read the sample guide 32
QUESTIONS 33
THANK YOU Learn more at: IBM Rational software IBM Rational Software Delivery Platform Process and portfolio management Change and release management Quality management Architecture management Rational trial downloads Leading Innovation Web site developerworks Rational IBM Rational TV IBM Rational Business Partners Copyright IBM Corporation 2008. All rights reserved. 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, the ondemand business logo, Rational, the Rational 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 of others. 34