agile requirements best practices - software...

Post on 15-Sep-2020

8 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

®

IBM Software Group

© 2010 IBM CorporationInnovation for a smarter planet

Agile Requirements Best Practices

Robin BaterCommunity of Practice Architect

Stockholm, Oct 15th

SAST

IBM Software

Innovation for a smarter planet

Topic

Agilists know that any investment in detailed documentation early in a project will be wasted when the requirements inevitably change.

Instead, the fundamental idea is that you do just barely enough modeling at the beginning of the project to understand the requirements for your system at a high level, then you gather the details along the way.

IBM Software

Innovation for a smarter planet

Agile Adoption Rates [1]

A March 2006 survey of 4232 IT professionals shows:

65 % work in organizations that have adopted one or more Agile development techniques

41 % work in organizations that have adopted one or more Agile methodologies

60 % report increased productivity

66 % report increased quality

58 % report improved stakeholder satisfaction

[1] Scott Ambler “Survey Says: Agile Works in Practice” Dr Dobb’s Portal - http://www.ddj.com/architect/191800169 (August, 2006)

According to same survey, the effect that Agile approaches have on productivity:

Large and successful companies practice Agile. In addition to IBM (which is practicing Agile in pockets), a partial list of companies using Agile include:

Microsoft, Google, Motorola, Philips, Yahoo, Nokia, Siemens, Symantec, Sun, Allstate

Agile: A Developing Trend

“You do not do Agile, you ‘are’ Agile”– Scaling Software Agility – Dean Leffingwell”

[1]

IBM Software

Innovation for a smarter planet

What Is Agile Development

Quality first. Test is done by developers.

Teams builds software. People not cogs in a machinery. Self organization.

Minimize waste, no intermediate stockpiles of requirements, design, etc. that grow old. Collaboration. Just In Time. Just enough documentation and process.

Rapid feedback and response. Continuous integration. Iterations deliver useful code that allows meaningful feedback from end user. Continuously improve your process, retrospectives.

One extended team. Customers and developers are all equally vested in success.

Integrated development tools to enable effective collaboration.

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

“Agile” is a relative term. Your context determines which concrete practices are appropriate.

IBM Software

Innovation for a smarter planet

The Eclipse Way

IBM Software

Innovation for a smarter planet

XP

IBM Software

Innovation for a smarter planet

Scrum

Eclipse Way

RUP

RUP

DSDM

RUP

XP

AMDD

Influence

OpenUP

IBM Software

Innovation for a smarter planet

IBM Practices for Agile Delivery

IBM Software

Innovation for a smarter planet

Iterative Development

IBM Software

Innovation for a smarter planet

Release Planning

IBM Software

Innovation for a smarter planet

Shared Vision

IBM Software

Innovation for a smarter planet

Develop Technical Vision (task)

IBM Software

Innovation for a smarter planet

User Story-Driven Development

IBM Software

Innovation for a smarter planet

Drinking Our Own Champagne

Evolution of the RRC V2 Review and Approval feature

1. Stakeholder describes the feature2. Product manager then describes the business scenario and

related requirements3. Architect defines the workflow4. User Interface designers then developed mockups

increasingly realistic versions

identified "how it's really going to work5. Development team developed incremental solutions6. User Interface designers used milestone “drivers” to obtain

feedback from the stakeholders

IBM Software

Innovation for a smarter planet

Domain ComplexityStraight-forward

Intricate/Emerging

Compliance requirement

Low risk Critical,Audited

Team sizeUnder 10

developers1000’s of

developers

Co-located

Geographical distribution

Global

Enterprise discipline

Projectfocus

Enterprisefocus

Technical complexity

HomogenousHeterogeneous,

Legacy

Organization distribution(outsourcing, partnerships)

Collaborative Contractual

Flexible Rigid

Organizational complexity

IBM agility@scaleTM – our team self-assessment

Disciplined Agile

Delivery

IBM Software

Innovation for a smarter planet 16

ProductBacklog

UserStories,

Scenarios

Defects, Change

RequestsUser Documentation

Specifications Design

Specifications

Vision Document

SupplementarySpecificationUse-Case Model

StakeholderRequests

The Product Backlog and Future functionality

IBM Software

Innovation for a smarter planet

Release V2 Requirement – Review & Approval

IBM Software

Innovation for a smarter planet

17-Nov 16-Jan 17-Mar 16-May 15-Jul 13-Sep 12-Nov

Iteration 1

Iteration 2

Iteration 3

Iteration 4

Iteration 5

Iteration 6

Final SVT

Ship Ready

Iterations

Milestone overlap: planning for the next iteration begins during SVT

Duration varies

Each milestone includes Planning, Requirements, Design and Test

Each milestone is consumable

IBM Software

Innovation for a smarter planet

17-Nov 16-Jan 17-Mar 16-May 15-Jul 13-Sep 12-Nov

Review and Approval ProcessR&A document exampleIterative R&A ScenarioIterative R&A process

Use Case for R&AUse Case Details for R&A

Review and ApprovalCreate Review

Review Editor (Edit) – UI specsR&A Service Design

Virtual Design – Rich ClientVirtual Design – Web Client

Views and actions for ReviewersIteration 1Iteration 2Iteration 3Iteration 4Iteration 5Iteration 6Final SVT

Ship Ready

Review and Approval overview

development demo

IBM Software

Innovation for a smarter planet

Feature Requirement – Stakeholder – 59 revisions

IBM Software

Innovation for a smarter planet

Scenario Document – Product Manager – 18 Revisions

IBM Software

Innovation for a smarter planet

Process Sketch – Architect – 6 Revisions

IBM Software

Innovation for a smarter planet

User interface example – Stakeholder – 5 Revisions

IBM Software

Innovation for a smarter planet

Use Case Diagram – Developer – 4 Revisions

IBM Software

Innovation for a smarter planet

Frame List – User Interface Designer – 81 Revisions

IBM Software

Innovation for a smarter planet

Rich Client – User Interface Designer – 19 Revisions

IBM Software

Innovation for a smarter planet

Web Client – User Interface Designer – 8 Revisions

IBM Software

Innovation for a smarter planet

Document – User Interface Designer – 52 Revisions

IBM Software

Innovation for a smarter planet

Document – User Interface Designer – 19 Revisions

IBM Software

Innovation for a smarter planet

Document – Developer – 2 Revisions

IBM Software

Innovation for a smarter planet

Development demo - Developer

IBM Software

Innovation for a smarter planet

Usability feedback – User Interface Designer

IBM Software

Innovation for a smarter planet

IBM Software

Innovation for a smarter planet

Key benefits experienced by the team

Increased the range and depth of stakeholder participation

Elicited more and better feedback before code was writtenIn requirementsIn feature design

Less churn / rework Converged faster on the “right” requirements

Identified gaps and clarified misunderstandings more quickly

Better productivity through lower cost, higher value communication

Developers and testers communicated better among themselves, especially across component teams.

IBM Software

Innovation for a smarter planet

http://jazz.net/community/feedback/

top related