You are on page 1of 41

®

IBM Software Group

Offshore development: Making it a success with


agile practices and team collaboration

Rolf Nelson
Team Concert Product Manager
rsnelson@us.ibm.com

© 2008 IBM Corporation


IBM Software Group | Rational software

Agenda
 What is Agile and Why are teams adopting it?
 Source: Scott Ambler’s agile adoption survey – February 2008

 Why do distributed and especially offshore Agile projects fail more


frequently?

 What is the Jazz project and Rational Team Concert?

 How can Rational Team Concert improve the success rate of distributed
and offshore Agile projects?

 How do I get started with Rational Team Concert today?


IBM Software Group | Rational software

What is Agile?
 An iterative and incremental (evolutionary)
approach performed in a highly collaborative
manner with just the right amount of ceremony
to produce high quality software in a cost
effective and timely manner which meets the
changing needs of its stakeholders.

 Core principles
 “Fits just right” process
 Continuous testing and validation
 Consistent team collaboration
 Rapid response to change
 Ongoing customer involvement
 Frequent delivery of working software
IBM Software Group | Rational software

Agile has gone Mainstream


From the analyst community

"Thirty-five percent of .…respondents Third-party research suggests


have projects or pilots underway, and even wider adoption
only 12 percent do not see a fit for Agile
processes in their organizations. Have you adopted
any Agile techniques?
The fact that 88 percent of these
organizations (one-third of which have “No”
over 10,000 employees) are using or 35% “Yes”
65%
evaluating Agile processes proves that
Agile processes have truly hit the
mainstream."

- Excerpt from “And the Agile Survey Says…”


Source: Ambler „Agile Adoption Rate Survey‟
Agile Journal, March 6, 2006 of over 4200 Dr. Dobb‟s subscribers, February 2008
IBM Software Group | Rational software

Why Agile?

The confluence of pressures to reduce costs and quickly


deliver high quality solutions is forcing development
organizations to change the way they work.
Liz Barnett – “Tackling Offshore Agile Development” – April 2006
How Have Agile Approaches
Affected Your Productivity?
1% 4%
22% 13%

Much Lower
Somewhat Lower
No Change
Somewhat Higher
Much Higher

60%
How Have Agile Approaches Affected
the Quality of Systems Deployed?
3%
6%

29%
14%

Much Lower
Somewhat Lower
No Change
Somewhat Higher
Much Higher

48%
Agile Projects Success Rates (%)
(214 co-located projects, 210 not co-located, 129
offshoring/outsourcing)

77.5

All
82.7
Co-Located
Not Co-Located
71.7
Offshoring

59.5

0 20 40 60 80 100
IBM Software Group | Rational software

Challenges with Agile in complex, distributed projects


Compliance requirement

Low risk Critical,


Audited
Geographical distribution Entrenched process,
people, and policy
Co-located Global
Minimal Significant

Agile
Development

Organization distribution
Application complexity
(outsourcing, partnerships)
Simple, Complex,
single multi-platform In-house Third party
platform

Team size Degree of Governance


Under 10 100’s of
developers developers Informal Formal
IBM Software Group | Rational software

But many offshore projects are not successful. Why?

“Offshore makes communication harder both due to


distance, which makes it difficult to work face to face, and
the timezone effect.”
Martin Fowler – “Using an Agile Software Process with Offshore
Development” – July 2006
IBM Software Group | Rational software

A few reasons why distributed and offshore projects fail?

 Communication, Communication, Communication!


 Agile Manifesto states: “The most efficient and effective method of conveying information to
and within a development team is face to face conversation”

 Iteration Plan is not well understood, rigid or too high level


 It has been suggested that teams use short and flexible iterations of 2-4 weeks and
communicate the plan and changes to everyone.

 Code and Build Integration problems are more prevalent


 “Use Continuous Integration to Avoid Integration Headaches” – Martin Fowler: Lessons Learned

 Inability to easily determine accurate project status and how I fit in?
 Results in team frustration when there are unexpected schedule slips within distributed
development teams. Can result in project cancellation or restructuring by management.
IBM Software Group | Rational software

What is the Jazz Project?

An effort to create a scalable,


extensible team collaboration
platform

Designed for a workforce that is


Ensure regulatory
organizationally and globally
compliance
distributed in a changing
global environment
A community at www.jazz.net -
the site for open, commercial
development of Jazz products

“Teams know what is going on without having to ask”


IBM Software Group | Rational software

Jazz is a technology foundation


Rational Team Concert is the first Jazz based product
Rational Enterprise Project
Rational Quality Reporting
Team Management Others…
Manager
Rational Concert Business
Requirements Partner & IBM
Composer Offerings
Best Practice Processes

In Context
Team Awareness
Collaboration
Search
Dashboards Events and Query
Security
Notification

JAZZ TEAM SERVER


Open Lifecycle Service Integrations
Client Integrations Server Integrations
Eclipse Rational ClearCase 7.1
Web 2.0 Rational ClearQuest 7.1
Visual Studio (4Q) Rational Build Forge 7.1
Others to come… Rational Asset Manager 7.1
Subversion
IBM Software Group | Rational software

Rational Team Concert: A closer look


Iteration Planning Project Transparency
 Integrated iteration planning and execution  Customizable web based dashboards
 Task estimation linked to key milestones  Real time metrics and reports
 Out of the box agile process templates  Project milestone tracking and status

SCM Work Items Build


 Integrated stream management  Defects, enhancements  Work item and change
and conversations set traceability
 Component level baselines
 View and share query results  Build definitions for team
 Server-based sandboxes and private builds
 Support for approvals and
 Local or remote build servers
 Identifies component in streams discussions
and available baselines  Supports Ant and command
 Query editor interface line tools
 ClearCase connector  ClearQuest connector  Integration with Build Forge

Jazz Team Server


 Single structure for project related artifacts  Team advisor for defining / refining “rules”
 World-class team on-boarding / offboarding and enabling continuous improvement
including team membership, sub-teams and  Process enactment and enforcement
project inheritance  In-context collaboration enables team members
 Role-based operational control for flexible to communicate in context of their work
definition of process and capabilities
IBM Software Group | Rational software

A few reasons why distributed and offshore projects fail?

 Communication, Communication, Communication!


 Agile Manifesto states: “The most efficient and effective method of conveying information to
and within a development team is face to face conversation”

 How do we achieve effective communication across physical or temporal boundaries?

 How can I get the information I need from my own context and from my specific role?

 How do we communicate our processes across the lifecycle – and to distributed team
members?

 I have dependencies on my project on other teams. Can I subscribe to events from their project
too?

 I’m in India and trying to figure out what a specific code change occurred and who made it? I
can’t wait till the morning for an email response. I need to know now.
IBM Software Group | Rational software

Enables process awareness and guidance


 Team Advisor
• Rules can be run when delivering changes to enforce team or organizational
standards – rules can have exceptions for critical business needs
• Helps ensure higher quality results through enforcement of agreed-upon
standards Using “Rational Method Composer”
• Rules are configurable or “Eclipse Process Framework”
• “Quick Fixes” can be specified to simplify corrective action
• Process rules can be defined, refined “on the fly”, enabling continual
improvements
• Out of the box processes include OpenUP, Scrum, The Eclipse Way, etc

16
IBM Software Group | Rational software

In-context collaboration – for me, for team, for project

Team Central
Shows what is
happening on project
News & events
Build status
What’s being
worked on
Changes
Configurable (RSS
feeds) - New kinds of
information easily
added
Personalizable -
Each team member
can tailor to their
needs

17
IBM Software Group | Rational software

In-context collaboration – for me, for team, for project


Team Awareness
Team Central Shows team
Shows what is members and their
happening on project online status
News & events Shows what they
Build status are working on
What’s being
worked on
Changes
Configurable (RSS
feeds) - New kinds of
information easily
added
Personalizable -
Each team member
can tailor to their
needs

18
IBM Software Group | Rational software

Who made this change? For what reason?


IBM Software Group | Rational software

A few reasons why distributed and offshore projects fail?

 Iteration Plan not well understood, rigid or too high level


 It has been suggested that teams use short and flexible iterations of 2-4 weeks and
communicate the plan and changes to everyone.

 How can I get the whole team on board for the iteration plan?
 How does everyone on the team know what their role is in the iteration plan?
 How do we communicate changes to the iteration plan?
 How many iterations should we have? What worked last time? What didn’t?
 How easily can we change the scope of iterations and when we do, notify just those
who are impacted?
Length of Iterations (% respondents)

No Iterations 5.6

> 8 Weeks 1.4

7-8 Weeks 1.7

5-6 Weeks 7.2

4 Weeks 22.8

3 Weeks 16.7

2 Weeks 32.8

1 Week 9.2

< 1 Week 3.1


IBM Software Group | Rational software

Understand how well


Iteration Planning you are progressing
against your targets
in real-time

Plan and execute Drag-and-drop work


on iterations while items to change
managing load owners/create child
parent relationships
IBM Software Group | Rational software

A few reasons why distributed and offshore projects fail?

 Code and Build Integration problems are more prevalent


 “Use Continuous Integration to Avoid Integration Headaches” – Martin Fowler: Lessons Learned

 How can I set up continuous integration and automate the build process?
 How can we mitigate broken builds or fix one if it fails even if we did not submit the failed code?
 How can I communicate the status of builds to everyone on the team regardless of location?
 I need to be able to replicate the build environment in my private build to minimize failures.
 I’m a tester and I need to be notified when the fix I need to test is in a successful build?
 I’m a customer and I want to know if the fix I reported is in an intermediate build?
IBM Software Group | Rational software

Continuous Builds and Failure Recovery


Create build Can reconstruct a
definitions for team workspace from a
and private builds failed build!

Identify work items


Create local or and change sets that
remote build servers went into the build

Historical view
of the build
queue with
status

24
IBM Software Group | Rational software

A few reasons why distributed and offshore projects fail?

 Inability to easily determine accurate project status and how I fit in?
 Results in team frustration when there are unexpected schedule slips within distributed
development teams. Can result in project cancellation or restructuring by management.

 How do we keep everyone on the team informed of progress without having to ask?
 Our program managers are in another country and on a different timezone. I need to keep them
informed of status weekly, and it’s taking away from my ability to deliver my work!
 The high level executives want status and it is in the tool but they don’t use an IDE? I don’t want
to have to extract everything for them so they can see it in PowerPoint / Excel? I wish I could
just point them to a URL and let them use a browser to see status?
 If I just knew the most important things for me to be working on I’d be fine.
 If we all had known that the database component team was behind schedule we could have
helped out earlier when we all had some spare cycles.
IBM Software Group | Rational software

Dashboards and reporting

Trending by
project or by
individual team

Team member
details

Current
milestone status
IBM Software Group | Rational software

What are customers saying about Team Concert?

"Its automated project management dashboards are transparent to everyone – not


just managers. This immediate and automated feedback helps keeps teams on
track and motivated to achieve project goals."
--Han Jie - Senior Consultant, Siemens

" Where we previously used separate systems, with Rational Team Concert we now
have well integrated functionality. Our developers are more efficient because
they are better able to focus on important issues. Our project managers greatly
value the ability to customize these dashboards and instantly provide status on
their milestones!"
--Mika Koivuluoma - Production Manager, TietoEnator

"Having a unified and extensible environment is very compelling for us.


Rational Team Concert provides the team transparency and visibility needed to
keep work progressing so everyone knows what‟s going on without finger-
pointing."
--Carson Holmes - Unified ALM Services Manager, Noblestar

27
IBM Software Group | Rational software

Summary: Improve business agility and project success rates


IBM Rational Team Concert

Facilitates the principles Supports enactment of any


of high-performance teams process, including multiple
built in Agile templates such as
Scrum, Agile, Eclipse Way and
OpenUP
transparent integrated presence wikis
OPEN real-time reporting chat
automated hand-offs Web 2.0 custom
dashboards automated data gathering
EXTENSIBILITY Eclipse plug-ins services
architecture FREEDOM TO CREATE

Manage Improve Business


Communicate Process &
In Context Integration Visibility
Iterations

 Collaboration In Context  Scrum & agile templates  Continuous Integration  Transparency


 Team Awareness  Process awareness  Build Checkpoints  Objective commonality
 Integrated / traceable  Process Flexibility  Enable fixing failed builds  Project health checks
 Visible Iteration Planning  Starting ad-hoc teams  JIT code reviews  Dashboards
 Reporting/Metrics
Agile Team Size
200+ 6
5

101 to 200 1
6

51-100 8
16

21 to 50 24
29

11 to 20 66
84
6 to 10 142
126
1 to 5 114
95

0 20 40 60 80 100 120 140 160

Attempt Success
IBM Software Group | Rational software

The Rational Team Concert Family


“Each edition has a server license that includes three developer clients.
Allows you to get started with 3 developers with Express-C Edition for no cost – first 3”

Standard
Corporate teams
Express  Customizable process
 Real-time project
Express-C Departmental / SMB health
 Transparent  Lower cost of LDAP
Consultants & development administration
students  Out-of-the-box process  Enterprise scalability
 In-context collaboration automation and extensibility
 Open source  Commercial  Up to 250
middleware middleware users/server
 Up to 10 users/server  Up to 50 users/server
IBM Software Group | Rational software

Jazz.net: Delivering greater openness and customer


participation in the products they depend on for
software delivery
 IBM is opening up the Rational Software Delivery Platform for greater ease of
consumption, extensibility and integration to meet the unique usage needs of our
customers
 IBM is providing transparent, collaborative customer participation in the development
of new Rational technologies through an open commercial community

Open Commercial Community

Open commercial
development

Open source
contribution of
selected Jazz technology

Open Source Community


IBM Software Group | Rational software

Additional resources

 Find out more about Rational Team Concert


http://ibm.com/rational/rtc or http://www.jazz.net
 Download a trial version of Rational Team Concert Standard Edition
http://www.ibm.com/developerworks/downloads/r/rtc/learn.html?S_TACT=105AGX15&S_CMP=LP

 Explore Rational Team Concert tutorials, demos and other developer


learning resources
http://ibm.com/developerworks/spaces/jazz
 See how the distributed and offshore, agile Jazz team, delivered Rational
Team Concert on time using Rational Team Concert.
https://jazz.net/blog/index.php/2008/07/07/the-smoothest-end-game-ever-but-why/
IBM Software Group | Rational software

IBM Rational Contacts/Programs

For IBM Sales…


Contact your local IBM or Rational Sales Representative
- Or –
In the U.S. Call 1-877-426-3774 Priority Code: 104CBW61
for other countries visit the directory of worldwide contacts https://www.ibm.com/planetwide/

For Business Partners…


Check out the Jazz Ensemble (registration required)
https://jazz.net/community/ensemble/index.jsp

For Academic Institutions…


Check out the Rational Academic initiative –
http://www-304.ibm.com/jct09002c/us/en/university/scholars/products/rational/

For Open Source Projects…


Check out Rational Team Concert for Open Source (registration required)
https://jazz.net/community/academic/?p=openSourceUse
IBM Software Group | Rational software

Additional Software Development Resources

 Learn more about Rational Team


Concert by visiting:
http://www.ibm.com/rational/rtc/

 Video/webcast: Share with others this Jazz update


http://www.ibm.com/software/info/television/index.jsp?lang=en_us&cat=dtacollaboration&ite
m=xml/D500038R17900L64.xml

 Trial Code: IBM Rational Team Concert trial download


http://www.ibm.com/developerworks/downloads/r/rtc/learn.html
IBM Software Group | Rational software

Free trial downloads of IBM Rational tools


one stop shopping for IBM’s most popular trial code downloads

 Provides easy access to IBM’s most popular trial


software including:
IBM Rational Software Architect V7
IBM Rational Application Developer V7
SEK available if you prefer DVD to download

 Provide a collection of supporting resources for


each trial that is easy to find on the web:
Complimentary tech support*
Forums
Installation Guides
Demos & tutorials
ROI materials Actual product download page
Pricing information from the IBM online catalog

ibm.com/developerWorks/downloads
IBM Software Group | Rational software

developerWorks events
developerWorks Live! Complimentary Briefings:

New! Two-three day briefing developerWorks Live! mini conference

One day briefings


 Rational Business Developer Extension (EGL): An innovative rapid development technology
 Building a better infrastructure
 The developer and the on demand IBM environment
 Information on demand live: Building the next generation of database applications

Half day briefings


 Achieving enterprise application security
 Architecture, design and construction using the IBM Rational Software Delivery Platform
 Building next-generation SOAs with SCA and SDO
 Change and release management for software development
 Eclipse: Empowering the universal platform
 Effective software testing: Tools and strategies for project success
 Hacking 101
 Managing requirements throughout the software development lifecycle
 Open community tools: An open stack development platform

ibm.com/developerWorks/offers/techbriefings
IBM Software Group | Rational software

IBM Rational Training Solutions


 Boost your productivity with Rational application development software!
 Enhance productivity in building business applications
 Learn powerful techniques to support collaborative teamwork
 Streamline and automate change across the application lifecycle
 Reduce project risk by improving requirements management
MULTIPLE DELIVERY FORMATS

 Top-Rated Courses: IBM Rational boot camps


ibm.com/training/us/catalog/rational/bootcamps
 Mastering the Management of Iterative Development – RP601
 Essentials of the Rational Unified Process V7.0 – RP401 IBM Rational instructor-led online training
 Business Modeling with the UML – RR621 ibm.com/training/us/catalog/rational/ilo

 Essentials of Rational ClearCase Basics for Windows – RS311 IBM Rational Web-based training library
 Mastering Rational ClearQuest Multisite Administration – RS641 ibm.com/training/us/catalog/rational/weblibrary

 Recently Announced New Courses:


 Essentials of IBM Rational Software Modeler V7.0 – RD561
 Essentials of IBM Rational Systems Developer V7.0 – RD551
 Essentials of IBM Rational Software Architect Extensibility – RD571
 Mastering IBM Rational Software Architect – RD881
 Essentials of Tailoring Methods with IBM Rational Method Composer V7.0 – RP521
 Essentials of Manual Testing with IBM Rational Manual Tester – RT421
 Administration Workshop for Rational ClearCase for UNIX – RSP01

ibm.com/training/us
IBM Software Group | Rational software

Want to Buy What You’ve Seen Today?

The IBM Software Catalog makes it easy to shop for IBM software.
 Quickly find the products you need by name or by category.
 Obtain up-to-date product and pricing information.
 And when you're ready, place your order by phone or online.
Shop the way that works best for you!
 The IBM Software Catalog is available in a PDF format
ibm.com/software/catalog/subscribe
 The IBM Software Catalog is also available in an interactive online
version
ibm.com/software/catalog

Or you can call 1-877-426-3774


Phone number for other countries on website
IBM Software Group | Rational software

Question & Answer Session

 No need to submit your questions more than once –


Your question will not be posted to this page until it
is answered
 For the latest information on IBM Rational Software
Delivery Platform Webcasts, visit
http://www.ibm.com/developerworks/views/global/webcasts.jsp

 Thank you for participating!


IBM Software Group | Rational software

Take Action
Visit IBM Rational
http://www.ibm.com/rational

© Copyright IBM Corporation 2007. 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 on-demand business logo, Rational, the Rational logo, and other IBM Rational products and services are trademarks or registered 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.
IBM Software Group | Rational software

Agile Adoption Survey

 Done by Scott Ambler in February 2008


 Message sent out to Dr. Dobbs Journal mailing list
 Data, summary, and slides downloadable from
www.ambysoft.com/surveys/
 642 respondents:
 54.8% were developers, 29.4% were in management
 41.6% had 10-20 years IT experience, 37.2% had 20+ years
 37.7% worked in orgs of 1000+ people
 71% worked in North America, 17% in Europe, 4.5% in Asia

You might also like