of RUP - Tistory

advertisement

IBM Software Group

RUP and Agility at Scale

Per Kroll pkroll@us.ibm.com

®

© IBM Corporation

IBM Software Group

Per Kroll - Background

 Chief Architect, IBM Rational Expertise

Development & Innovation (REDI)

 Project lead – Eclipse Process Framework

 Core Member – SWG Agile Adoption Team

 (Co-) Author of

 The Rational Unified Process Made Easy

– A

Practitioner’s Guide to RUP

 Agility and Discipline Made Easy

– Practices from

OpenUP and RUP

IBM Software Group

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group

Three 2008 SWG Development Priorities

1.

Consumability

 Deliver highly consumable products that delight clients and drive revenue growth.

Consumability (noun): 1) The ease with which our customers can evaluate, buy, attain, install, and deal simply and effectively with product maintenance throughout the offering lifecycle.

2.

Agile Development

 Adopt disciplined, adaptive development approaches. Use continuous stakeholder feedback to deliver high quality and consumable code through use cases and a series of short, time-boxed iterations.

3.

Community

 Leverage the expertise of our diverse worldwide team of 25,000 developers, IT architects and consultants.

 Collaborate effectively across the team to share knowledge, assets and best practices -- driving innovation and skills across the community.

 Unleash the Labs – Support the field directly in customer engagements

IBM Software Group

Our Approach

 Guiding principles

 Kotter's, Poppendieck’s, Mike Cohn, Spirit of RUP

 Guiding coalition, …

 More pull than push

 Leverage internal success stories

 Free to choose how to become agile (but shared mental picture)

 Build community

 Agile@IBM

 Conferences, training, leverage experts

 Measure progress

 Simple metrics

 Ensure strong executive support

IBM Software Group

An Agile Case Study:

The RMC Development Team

 Business results

 5 commercial and 3 open source releases in 21 months

 Releases have generally been on time with very high quality

 Excellent feedback from core audience

 Quality first.

Daily build, continuous integration, and continuous testing. 55% (and increasing) of 4700+ test cases are automated using Rational Functional Tester.

 Teams builds software.

Distributed over 3 sites on 2 continents. Scalable infrastructure key.

 Minimize waste. Rapid prototyping, Use cases. Rational Software Architect for meta-modeling

 Rapid feedback and response . 6-week long iterations, always with customer feedback, often deployed.

Bug triaging / backlog management. Continuous re-factoring – e.g., always on latest eclipse release.

 One extended team.

Feedback through very close interaction with many customers. Bi-weekly meetings with CAG focus groups. Iteration demo and feedback sessions with tooling focus group.

 Integrated development tools. UCM with CC and CQ. Light requirements with RequisitePro. Rational

Manual Tester and Functional Tester. Architecture / meta-modeling with RSA.

 Adaptive planning.

Plans the entire project at a high level, provide detailed plans only for next iteration.

Frequent rescoping, normally no changes to dates.

6

IBM Software Group

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group

Some Reflections on Process…

 ‘Process” is a loaded word, with different meanings

 Software development is about people working together. A process describes such a collaboration.

 A process is a means of capturing and distributing relevant knowledge and practices

 Process is a basis for change (from Lean Development by Poppendieck’s)

 Process is not there to curb innovation. It is an aid that should be evolved as you learn what works and what does not work

 Process improvement people are not always helping. The end goal is never to follow a process, it is to achieve good results.

IBM Software Group

What Is RUP?

 A set of principles

 A collection of out-of-the-box processes to use as a starting point

 A customizable process framework and knowledge base

 supports implementation of the principles

IBM Software Group

The Spirit of The Rational Unified Process

1.

Attack major risks early and continuously… or they attack you

2.

Ensure that you deliver value to your customer

3.

Have a maniacal focus on working software

4.

Accommodate change early in the project

5.

Baseline an executable architecture early on

6.

Build your system with services and components

7.

Work closely together as one team

8.

Make quality a way of life, not an afterthought

IBM Software Group

RUP: Out-of-the-Box Processes

 RUP for Service-Oriented Modeling and Architecture

 RUP for Maintenance Projects

 RUP for COTS Package Delivery

 RUP for System z

 RUP for Small Projects

 RUP for Medium Projects

 RUP for Large Projects

 RUP for Systems Engineering

 RUP for Compliance Management

 RUP for Asset-Based Development

 RUP for Globally Distributed Development (beta)

IBM Software Group

Rational Process Library Improved!

Broad variety of method plug-ins included in Rational Method Composer

Enterprise plug-ins

 IBM Rational Unified Process, or RUP

 IBM Rational Method for Portfolio Management (for Initiatives)

 IBM Rational Method for Program Mobilization

 IBM Tivoli Unified Process (ITUP)

 RUP for Asset-Based Development

 RUP with ITSM/ITUP Connection

 RUP for Global Development and Delivery

 RUP for Global Development and Delivery Maintenance

Solution-specific plug-ins

 SOA:

 RUP for Service-Oriented Modeling and Architecture

 Governance:

 SOA Governance

 Asset-Based Governance

 RUP for Practical Software & Systems Measurement (PSM)

 Compliance:

 RUP for Compliance Management

 RUP for CMMI

®

Compliance Support

Project-specific plug-ins

 RUP for COTS Package Delivery

Now a library of over 100 content packages!

 RUP for System z

 RUP for Maintenance Projects

 RUP for Legacy Evolution

 RUP for Model-Driven Systems Development (MDSD)

Standard-specific plug-ins

 RUP for Department of Defense Architecture Framework (DoDAF)

Practice-specific plug-ins

 RUP for User Experience Modeling

Technology/tool-specific plug-ins

 RUP for Microsoft

®

.NET

 RUP for J2EE™

 RUP for Rational Application Development

 RUP for Rational Software Architect

 RUP Plug-in for WebSphere ® Business Modeler (beta)

 RUP for Automated Software Quality

 (Rational Performance Tester, Functional Tester, and Manual

Tester)

A collection of out-of-the-box method content and processes that you can customize to address a diverse set of enterprise and project needs and development styles

IBM Software Group

Process Library: Sample Content Packages

 Requirements Management (no Use Cases)

 Use-Case Driven Development

 Requirements Management with Use Cases

 Architecture with Use Cases

 Design with Use Cases

 Project Management with Use Cases

Architecture

 Design

 Database Design

 GUI Design

 Operation Design

 Real-Time Design

 Implementation

 Developer Test & Debug

 Testability

 Configuration & Change Management

 Basic CCM

 Detailed CCM

Business Modeling

 Business Process Modeling

 Business Operations

 Business Use-Case Modeling

 Business Analysis Modeling

 User-Experience Modeling

Assessment

 Reviews

 Load Testing

 Structured Testing

 Test Management

 Testability Requirements

Project Management

 Basic Project Management

 Project Planning

 Project Control

 J2EE

 Architecture

 Design

 Implementation

 Test

 Environment

 .NET

 Other packages

 Development Case

 Project Environment

 Deployment

 Documentation

 Brief templates

 Detailed templates

 COTS / Packaged Application

Dev

 Acquisition

 Architecture

 Design

 Implementation

 Project Management

 Deployment

 Systems Engineering

 Project Management

 Requirements

 Architecture

 Design

 Service-Oriented Architecture

 Asset-Based Development

 Asset Production

 Asset Consumption

 Asset Management

Maintenance

 Project Management

 Architecture

 Assessment

 Change & Configuration

Management

IBM Software Group

Process Management

Create, customize, publish, and enact software & systems development processes according to project needs

Leverage a rich set of process assets and guidance to capture & maintain development, management, and governance processes

Automate, integrate, and govern core business processes of software and systems delivery through an integrated set of proven, industry leading tools

Governance

Process Management & Best Practices

Process

Library

(with RUP)

Rational

Software

Delivery

Platform

Rational

Method

Composer

Establish consistent processes driven by standards and best practices to support corporate governance objectives

Manage, author, configure, and deploy effective processes tailored to project needs

IBM Software Group

Capabilities: Rational Process Library

 Provides process building blocks when constructing your own process

 Do not use your top people to define basic practices, reuse what is known to work

 Provides out-of-the-box processes

 Dozen plus out-of-the box processes provided

 Use as a starting point or as-is

 Solves the ‘unique project’ versus ‘common practice’ problem

 Have unique processes for different project types

 Share common practices across different project types; Language, Approaches,

Oversight, Resourcing, and Reuse

 Integrates Development with the rest of the organization

 If Development is there to support the business, it’s processes needs to be integrated with the rest of the business

 Development – Operations, Development – IT Direction, Development - Resilience

IBM Software Group

IBM Rational Method Composer Tool Capabilities

 Create and manage reusable process packages (roles, tasks, artifacts, guidelines, examples, templates)

 Create (low-level) reusable process patterns (e.g. design, implement and test a scenario)

 Create (high-level) processes (WBS) for different project types. Optionally assembled from process patterns

 Create derivatives of process packages, reference material, and processes

 Provide easy upgrade to new versions of base set of process packages, reference materials and high-level processes

 Ensure consistent presentation and structure of process content, including generated graphical representations

 Effectively deploy best practices through Websites, guidance integrated in development environment, project management tools, business process modeling solutions

IBM Software Group

Sample Supported Authoring Scenarios

 Select and configure out-of-the-box processes

 Select and deselect content packages, and the process will automatically update itself

 Tailoring an out-of-the-box process

 Customize the process as appropriate, modify workflows

 Assemble new processes rapidly using existing high-level process patterns

 Reuse content packages and existing process patterns

 Creating a new process bottom-up from scratch reusing method content

 Build a process from scratch, leverage existing process packages where appropriate

IBM Software Group

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group

Agile Manifesto – Graphical Representation

"Agile" Traditional

Individuals and

Interactions

| |

Processes and

Tools

Working

Software

Customer

Collaboration

Responding to

Change

|

|

|

|

|

|

Comprehensive

Documentation

Contract

Negotiation

Following a

Plan

Agility is a relative term

IBM Software Group

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

“Agile” <capital ‘A’> – Dogmatic

“agile” <lowercase ‘a’> - Pragmatic

IBM Software Group

Challenges with Agile in the Mainstream

Compliance requirement

Low risk

Critical,

Audited

Geographical distribution

Co-located Global

Entrenched process, people, and policy

Minimal Significant

Agile

Development

Application complexity

Simple, single platform

Complex, multi-platform

Under 10 developers

Team size

100’s of developers

Organization distribution

(outsourcing, partnerships)

In-house Third party

Degree of Governance

Informal Formal

IBM Software Group

RUP’s Primary Focus: Agility at Scale

Compliance requirement

Low risk

Critical,

Audited

Geographical distribution

Co-located Global

Agile

Entrenched process, people, and policy

Minimal Significant

Application complexity

Simple, single platform

Complex, multi-platform

RUP “Agility at Scale”

Under 10 developers

Team size

100’s of developers

Organization distribution

(outsourcing, partnerships)

In-house Third party

Degree of Governance

Informal Formal

IBM Software Group

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group | Rational software

Two dimensions, four (or more) process styles

Waterfall

Few risk, sequential

Late integration and testing

Relaxed

Little documentation

Light process

Low ceremony

Disciplined

Well-documented

Traceability

CCB

High ceremony

Iterative

Risk driven

Continuous integration and testing

IBM Software Group | Rational software

Agile Sweet Spot

Few risk, sequential

Late integration and testing

Little documentation

Light process

Low ceremony

Agile Sweet Spot

Agility at Scale

Risk driven

Continuous integration and testing

Well-documented

Traceability

CCB

High ceremony

IBM Software Group | Rational software

RUP Process Framework

Waterfall

 Common language

 Common Practices

Few risk, sequential

Late integration and testing

 Oversight

 Flexible resourcing

 Reuse

RUP Framework

Low Ceremony

Little documentation

Light process

RUP for large-scale SOA

RUP for

Sys Eng

OpenUP

RUP

“Light”

High Ceremony

Well-documented

Traceability

CCB

Iterative

Risk driven

Continuous integration and testing

IBM Software Group | Rational software

Too Common RUP “Misusage”

Waterfall

Few risk, sequential

Late integration and testing

Relaxed

Little documentation

Light process

Low ceremony

Adopting RUP is not about adopting a terminology, but the

“spirit” of RUP

Disciplined

Well-documented

Traceability

CCB

High ceremony

Iterative

Risk driven

Continuous integration and testing

IBM Software Group | Rational software

Common Pitfalls – Process Weight and Perfection

 Too much formality / too many artifacts

 Only produce the artifacts that add value, minimize formality if possible

 Use informal resources (brief document templates) and not formal resources

 When in doubt of value, don’t do it

 Analysis Paralysis

 You can improve upon things later on – move on

 Focus on phase objectives. E.g. Inception is NOT about describing all requirements in detail

IBM Software Group | Rational software

Common Pitfalls - Lifecycle

 Following a waterfall process, versus RUP’s iterative processes

 Look beyond a flawed 5-minute perception of what RUP phases are about…

 Produce working (tested) code every iteration (exception maybe Inception)

 Big Upfront Architecture

 Problem: Complete misunderstanding of what

Elaboration is about

 RUP focuses on rapidly producing an Executable

Architecture

 10-20% of code, critical capabilities implemented, not a lot of paper design

 Save the tricky part for later

 Attack risks early, or they attack you

 Hard on you now, but makes life easier later

IBM Software Group | Rational software

Common Pitfalls – Organization and Mentality

 Functional, Specialized Organization

 Teams of generalists and multitasking experts

 No place for “I only do <X>” mentality

 No customer feedback until a late beta

 Unlikely to build the right product

 A lot of waste

 No willingness to change things

 Change enables improvement

 Your process is stagnant versus evolving

 Document changes in development case

IBM Software Group | Rational software

Common Pitfalls – Development Approach

 No developer testing

 You can have a separate test team, but that does not free developers from having to build (and test) their application

 Dedicated test team only if very complex environments and/or mission- or safety-critical systems

 Continuous integration not happening

 Daily build (or more frequently) minimizes rework

 Testing not initiated until end of construction

 You are unlikely to meet deadlines

Agenda

IBM Software Group | Rational software

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group | Rational software

OpenUp in a Nutshell

Influence

RUP

XP

AMDD

Scrum

Eclipse Way

RUP

RUP

DSDM

IBM Software Group | Rational software

Executing an Iteration (sample)

Iteration planning

A few hours

Stable weekly build Stable iteration build

Iteration review /

Retrospective

A few hours

A few days

Upfront planning and architecture

Continuous micro-increments / bug-fixing / builds

Continuous bug-fixing / micro-increments / builds

IBM Software Group | Rational software

What is Self-Organization About?

 Motivate team members

 Manager

– coaching and leading, not directing

 Decision making – People closest to the decision make the decision

 Success - Team success is individual success, and vice-versa

 Estimation – prove yourself right

 Work assignment - Pull instead of push model

 Manager still accountable

 It is about involvement and respect, not wool sweaters and hugging

IBM Software Group | Rational software

Evolving Applications through

Micro-Increments

 Each micro-increment

 corresponds to 0.5-3 days person days of work

 is added (and removed if necessary) to the build

 needs to be properly tested

 Needs to looked upon (requirements, design, implementation and testing) from a uservalue perspective (use-case driven)

 A month-long iteration with 20 developers would consists of ~200 microincrements

 Micro-increments provides the team with the ability to manage and demonstrate continuous progress

 Micro-increments applies to any type of project activity

IBM Software Group | Rational software

Managing Micro-Increments: Work Items List

High Priority

High-priority work items should be well-defined

Low-priority work items can be vague

Low Priority

Work Item List

Each iteration implements the highest-priority work items

New work items can be added at any time

Work items can be reprioritized at any time

Work items can be removed at any time

IBM Software Group | Rational software

Project Lifecycle

Agenda

IBM Software Group | Rational software

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group

Agile Development with Rational Unified Process (RUP)

 Follow RUP’s agile practices

 Shared vision

 Regular delivery of working software

 Active stakeholder participation

 Test-Driven Development (TDD)

 Continuous builds

 Early and frequent system-level testing

 Just enough process

 Add additional agile practices:

 Self organization

 Micro increments managed by work items

 Iteration Lifecycle (what do you do at what week within an iteration)

 Leverage RUP’s content around agility at scale

 Guidance on how to deal with complexity drivers

IBM Software Group

Customize RUP

 Start with a small out-of-the-box process

 RUP for Small Projects / RUP for Maintenance

 Customize it to meet your needs

 Make it smaller by deselecting content packages not needed

 Remove artifacts not needed (additional support for this in RMC 7.2)

 Publish the (delivery) process

 Choose to publish only the delivery process, versus entire configuration

 Leverage Development Case

 A 1-3 page description of the process you use

 Reference your RUP process and other sources, no need to duplicate info

 Improve the process every iteration

 Update development case after each iteration review / retrospective

 Update delivery process if significant changes

IBM Software Group | Rational software

Iterative Development Phases

Major Milestones

Inception Elaboration Construction Transition

Time

Inception: Agreement on overall scope

 Vision, high-level requirements, business case

 Not detailed requirements

Elaboration: Agreement on design approach and mitigation of major risks

 Baseline architecture, key capabilities partially implemented

 Not detailed design

Construction: Agreement on complete operational system

 Develop a beta release with full functionality

Transition: Validate and implement solution

 Stakeholder acceptance, cutover to production

IBM Software Group | Rational software

Inception: Know What to Build

 Typically one short iteration

 Produce vision document and initial business case

 Only produce what has value

 Develop high-level project requirements

 Initial use-case and (optional) domain models (10-20% complete)

 Focus on what is required to get agreement on ‘big picture’

 Manage project scope

 Reduce risk by identifying key requirements

 Acknowledge that requirements will change

 Manage change, use iterative process

 Produce conceptual prototypes as needed

Inception Elaboration Construction Transition

IBM Software Group | Rational software

Example: UCs in Inception

 Inception: 5 people, 2 weeks (for a 6 month project) => 400 hours

 2 hour joint UC workshop with key stakeholders ~10 hours

 15 UCs, 4 critical, 5 important, 6 less important

 Outline UCs: 4 hours per critical, 2 per important, and 1 per less important ~ 32

 Includes some potential UI mockups

 UC walkthrough: 1 hour per important UC, 30 min for all others x 5 people ~ 48 hours

 Focus is on extended team converging on what application they are building, not to lock down on requirements

 Further updates based on walkthrough ~ 10 hours

 Discussion: Is it worth to spend ~100 hours on getting concurrence on an initial UC

Model?

 Note – we know the UC model will evolve as project progresses

IBM Software Group | Rational software

Elaboration: Know How to Build It by Building Some

 Elaboration can be a day long or several iterations

 Balance mitigating key technical and business risks with producing value (tested code)

 Detail ~top 3 rd most essential requirements (so you can estimate and prioritize)

 Produce (and validate) an executable and stable architecture

 Define, implement and test interfaces of major components. Partially implement some key components.

 Identify dependencies on external components and systems. Integrate shells/proxies of them.

 Roughly 10% of code is implemented.

 Drive architecture with key use cases

 20% of use cases drive 80% of the architecture

Inception Elaboration Construction Transition

IBM Software Group | Rational software

Construction: Build The Product

 Incrementally define, design, implement and test more and more scenarios

 Incrementally evolve executable architecture to complete system

 Evolve architecture as you go along

 Frequent demonstrations and partial deployment

 Partial deployment strategy depends greatly on what system you build

 Daily build with automated build process

 You may have to have a separate test team if you have

 Complex test environments

 Safety or mission critical systems

Inception Elaboration Construction Transition

IBM Software Group | Rational software

Transition: Stabilize and Deploy

 Project moves from focusing on new capabilities to stabilizing and tuning

 Produce incremental ‘bug-fix’ releases

 Update user manuals and deployment documentation

 Execute cut-over

 Conduct “post-mortem” project analysis

Inception Elaboration Construction Transition

IBM Software Group | Rational software

Lean Development Governance

 Pragmatic

Governance Body

 Staged Program

Delivery

Business-Driven

Project Pipeline

 Scenario-Driven

Development

Align HR Policies With IT

Values

Align Stakeholder Policies

With IT Values

Organization

Mission &

Principles

Roles &

Responsibilities

 Promote Self-Organizing Teams

Align Team Structure With

Architecture

Iterative Development

Adapt The Process

Risk-Based Milestones

Continuous Improvement

Embedded Compliance

Processes

Policies &

Standards

Measures

Simple And

Relevant Metrics

Continuous Project

Monitoring

Integrated Lifecycle Environment

Valued Corporate Assets

Flexible Architectures

IBM Software Group | Rational software

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group | Rational software

Disclaimer

This presentation covers current capabilities as well as potential future capabilities.

The material discussing potential futures is directional in nature and does not imply any product commitment on the part of IBM.

Concepts and prototypes shown in this presentation may or may not reflect current or future product function.

IBM Software Group | Rational software

Loosely Coupled Practices

 Easily configure the process to match your needs

 Incrementally add practices as you need them

 Develop a library of practices with minimum of dependencies between practices

 Different companies can develop practices that work together, assuming they follow certain ‘interface specifications’

 Has the potential of focusing the industry on documentation of effective practices vs. “process branding wars”

 Removes distractions

IBM Software Group | Rational software

Supporting the Agile Enterprise – 2008 Focus

Practices for the

Agile Business

Practices for

Scaling Projects

2008 Focus

Practices for the

Small Agile Project

We cover a spectrum Practices for the Small non-Agile Project

IBM Software Group | Rational software

Sample Proposed Practices

Compliance

 CMMI level 2

 Measured Capability Improvement

Commercial

Open Source

Req. Def. & Mgmt

 Stakeholder Req

 Req. Definition

Scrum

Architecture Mgmt

 Architecture

 Operational Modeling

 Service modeling

Quality Management

 Test Management

 Performance Testing

 Functional Testing

 SOA Testing

 Security Testing

SCM

 Staged integration

ScaleUP Practices

 Shared Vision

 UC-Driven development

 Risk-value lifecycle

 Agile Architecture

 Evolutionary Design

 Iterative development

 Release planning

 Whole Team

Agile Kernel

XPish

 Continuous Integration

 TDD

 Agile / Acceptance Testing

OpenUP

IBM Software Group | Rational software

Late Role Assignment

 Problem - Everybody wants their own roles

 OpenUP, RUP, Scrum, XP, …

 Job functions, Company X, Company Y, …

Developer

Project Manager

Stakeholder

• OpenUP

 Solution - Late role assignment

 Use your own role names

 Make very precise responsibility assignments - exactly your own

 Replaces some of the needs for the development case

Customer

Programmer

Tester

• XP

Team

Scrum Master

Product Owner

• Scrum

IBM Software Group | Rational software

Measured Capability Improvement:

Link Business Value to Practice Adoption

Customer Business

Objectives

 Create financial products more quickly

 Functionality of customer web falling behind competition

 Inconsistencies with integrated financial reporting

 Recent SOX Audit failure

 Improve Oversight

Generic Business Objectives

 Reduce Time-to-Market

 Improve productivity

 Increase innovation

 Improve consistency / predictability

 Improve Oversight

 Enable Flexible /

Global Resourcing

 Satisfy Compliance Mandate

Target – Phase 1

Already Implemented

Outside Scope

Practices

 Iterative Development

 Continuous Integration

 Shared Vision

 Whole Team

 Staged Integration

 Multi-Team Management

 GDD

 Asset-Based Development

 Asset Governance

 Use-Case Driven

 SOA Modeling

 Enterprise SOA

 SOA Governance,

 Arch. Modeling

 TDD

 Functional Testing

 Test Mgmt

 Structured Testing

 …

IBM Software Group | Rational software

Measurements: Deployment Evaluation Framework (DEF)

Measure and correlate outcome to practice adoption

Measure level of practice adoption on scale of 0-10

Business

Objectives

IBM

Ration al

Gover nance

Metho d

Measure

Adopt

Enact

Correlation can over time be done between practice adoption and outcome. Example:

“Customers improving adoption of iterative dev by 4 or more, on average reduce TTM by 30%.”

IBM Software Group | Rational software

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group | Rational software

The project

Open Commercial Community

Created by IBM to drive innovation in collaborative software development, building upon the success of Eclipse

Tooling the Eclipse Way!

A project, led by the team that brought us Eclipse, automating the best practices of this proven open community

Jazz.net

Innovation

A major investment by IBM to shape the direction of our portfolio for years to come marrying the innovation from Jazz.net

with IBM's experience in collaboration and social networking technology

“Simplicity through consistency, collaboration in context. Agility through transparency. Jazz is about helping people work together to deliver software more effectively.”

IBM Software Group | Rational software

The value of the technology?

 Enables teams to collaborate in real time in the context of the work they are doing

 Provides visibility into accurate real-time project health information drawn directly from actual work across the team

Automates traceability and auditability by managing artifacts and their interrelationships across the lifecycle

Enables custom process enactment via process automation & definable checkpoints

 Provides an extensible technology platform for building products & adapters

The Platform

An Open, Services Or i ented Architecture

Eclipse Client

Jazz Client Extensions

Eclipse Platform

Lotus Sametime or open source Jabber

Web 2.0 or

Web Services clients

Team Server

Web UI Jazz Server Extensions

Jazz Kernel

Eclipse Equinox

J2EE Web Services

DB2 or open source Derby

IBM Software Group | Rational software

IBM Rational Team Concert

Secure Eclipse & Web 2.0 clients

Globally distributed projects

Method

Composer

Agile Plug-ins

(optional)

Asset Manager

Portfolio

Manager

Performance

Tester

Adaptive process enactment

Real-time collaboration and project information

in context”

Dynamic artifact relationships

Powered by

ClearQuest

ClearCase

 Beta 2

New Products for Agile

Development

Incubators etc …

IBM Software Group | Rational software

Vision: RMC – Powered by

 Enact RMC-based processes (RUP, OpenUP,

Eclipse Way, XP, Scrum, …) in Jazz-based tools

 Access Jazz process template capabilities within

RMC

 Assemble a Jazz process template by configuring your process in RMC

 Change the behavior of your Jazz-based tools to reflect your documented process

 Keep process documentation in synch with process enactment capabilities

 Instantiate tasks and artifacts through process enactment extensions.

 Available in any Jazz-based tools.

 Collaborative process authoring

 Leverage Jazz collaboration technology to provide a more powerful process authoring environment

 Provide process development governance

Rational Method

Composer

Author, Configure, and Publish.

Keep documented and enactable processes in synch.

Collaborative process authoring

Process

Enactment

Extensions

View Process

Instantiate tasks and artifact, prepopulated with relevant information.

Team Server DB2 or open source Derby

Jazz Beta 2 (mid Dec) includes OpenUP 1.0 extended with Jazz process templates and tool mentors.

IBM Software Group | Rational software

Agenda

IBM Software Group is Going Agile

What Is RUP?

What is agile?

Common Mistakes Implementing RUP

Learning from OpenUP

Implementing RUP – Agile Style

Future direction

Rational Team Concert

Some parting thoughts

IBM Software Group

Parting Thoughts: Implementing RUP – Agile Style

 Focus on principles of RUP

 Chose a version of RUP suitable for your projects

 Further customize it, and use development case as a living document

 Only use what adds value to your project

 Most artifacts are there to aid collaboration. Use them as such.

 Some artifacts provides crucial persistency (audits, maintenance, extended audience, contractual situations, oversight, …)

 A process is a baseline, evolve it as you improve

 Do not let the “process police” dictate what makes sense

 If you like practices outside RUP, include them

IBM Software Group

Parting Thoughts: Succeeding with Agile

 Agile Development is transforming how development is done

 Placing greater demand on people, processes and tools

 Agile can scale to accommodate technical and organizational complexity

 Agility at Scale has unique needs

 IBM Rational and partners brings a wealth of knowledge to help companies succeed in complex environments

 IBM Rational is forging new ground in Agile Development

 Bringing technology, services and best practices to help customers reduce the risk of Agile projects

 Investing significant resources to improve Agile success

IBM Software Group

Resources

 All in one page: www.ibm.com/rational/agile/

 Rational Team Concert / Jazz: www.jazz.net

 RMC / RUP: http://www.ibm.com/developerworks/rational/products/rup/ http://blog.haumer.net/

 EPF / OpenUP: http://www.eclipse.org/epf/

 Guidance on incremental adoption of a process:

Agility and Discipline Made Easy – Practices from OpenUP and RUP , Kroll and MacIsaac, Addison-Wesley, 2005

IBM Software Group

Questions

IBM Software Group

Thank You

Download