3
ESI POINT OF VIEW 1 WWW.ESIINTL.COM For more information, please contact us at [email protected] or at +1 (877) 766-3337. As the Agile movement continues to gain momentum and managing projects using Agile methods becomes more and more prolic, project professionals must become more savvy in their use of Agile methods. While the techniques and processes associated with Agile are dierent than those associated with Waterfall, many innovative project teams are incorporating non-Agile techniques into the Agile environment, with great success.  There is a common misconception that Agile rep laces the ne ed for use c ases with user stories. Quest ions on this topic have been posted on social network sites such as Skillsharks, blogs, Twitter, Facebook, etc. The question shouldn’t be “Do user stories replace use cases?” Rather, the question should be framed: “How do we leverage the power of use cases with user stories when developing eective Agile requirements?” Many shy away from use cases within an Agile approach because they resemble the ways of elicitation and analysis from the Waterfall approach. However, regardless of how one approaches requirements analysis, the end goal is the same: help business users/stakeholders identify their true needs and translate them into requirements. For Agile requirements to be successful, both must be leveraged to get to the heart of the most appropriate business solution that brings value to the customer. According to Chapter 6 in the BABOK® Guide, “…business analysts prioritize and progressively elaborate stakeholder and solution requirements in order to enable the project team to implement a solution that will meet the needs of the sponsoring organization and stakeholders. It involves analyzing stakeholder needs to dene solutions that meet those needs, assessing the current state of the business to identify and recommend improvements, and the verication and validation of the resulting requirements.” To be successful, a business analyst needs to have strong facilitation, information elicitation, and process design skills. These are the core elements to building eective use cases. In Agile, requirements are progressively elaborated. Each iteration or sprint allows business users/stakeholders to better dene their needs to ensure the most eective development of solutions. These iterations or sprints rely on the user stories that the business user/stakeholder “tells” to concentrate on features that users value and interact with directly. These short scenarios of user expectations are just part of the user story process. User stories include two additional elements: 1. Notes from further discussions about the story that help to clarify the expectations (Conversation) 2. Intent of the story and validation tests that will conrm to the user that the story, when delivered, does what it is expected to do (Conrmation) DEVELOPING EFFECTIVE AGILE REQUIREMENTS RELIES ON BOTH USER STORIES AND USE CASES NANCY Y. NEE, PMP, PMIACP, CSM, CBAP VP, GLOBAL PRODUCT STRATEGY Captures the user’s description of the product feature expected. CARD Set up the test cases that the customer will use to ensure the product does what is expected. CONFIRMATION Allows for elaboration of the story so that the developer can understand the context and details. CONVERSATION BABOK® is a registered trademark owned by International Institute of Business Analysis.

ESIViewpoint Developing Effective Agile Requirements

Embed Size (px)

Citation preview

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 13

ESI POINT OF VIEW

1

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

As the Agile movement continues to gain momentum and managing projects using Agile methods becomes

more and more prolific project professionals must become more savvy in their use of Agile methods While

the techniques and processes associated with Agile are different than those associated with Waterfall many

innovative project teams are incorporating non-Agile techniques into the Agile environment with great success

There is a common misconception that Agile replaces the need for use cases with user stories Questions on this

topic have been posted on social network sites such as Skillsharks blogs Twitter Facebook etc The question

shouldnrsquot be ldquoDo user stories replace use casesrdquo Rather the question should be framed ldquoHow do we leverage the

power of use cases with user stories when developing effective Agile requirementsrdquo

Many shy away from use cases within an Agile approach because they resemble the ways of elicitation and

analysis from the Waterfall approach However regardless of how one approaches requirements analysis the end

goal is the same help business usersstakeholders identify their true needs and translate them into requirements

For Agile requirements to be successful both must be leveraged to get to the heart of the most appropriate

business solution that brings value to the customer

According to Chapter 6 in the BABOKreg Guide ldquohellipbusiness analysts prioritize and progressively elaborate

stakeholder and solution requirements in order to enable the project team to implement a solution that will

meet the needs of the sponsoring organization and stakeholders It involves analyzing stakeholder needs to

define solutions that meet those needs assessing the current state of the business to identify and recommend

improvements and the verification and validation of the resulting requirementsrdquo To be successful a business

analyst needs to have strong facilitation information elicitation and process design skills These are the core

elements to building effective use cases

In Agile requirements are progressively elaborated Each

iteration or sprint allows business usersstakeholders to

better define their needs to ensure the most effective

development of solutions These iterations or sprints rely

on the user stories that the business userstakeholder

ldquotellsrdquo to concentrate on features that users value andinteract with directly These short scenarios of user expectations

are just part of the user story process User stories include two

additional elements

1 Notes from further discussions about the story that help to

clarify the expectations (Conversation)

2 Intent of the story and validation tests that will confirm to the user that the story when delivered does what

it is expected to do (Confirmation)

DEVELOPING EFFECTIVE AGILE REQUIREMENTS

RELIES ON BOTH USER STORIES AND USE CASESNANCY Y NEE PMP PMI983085ACP CSM CBAPVP GLOBAL PRODUCT STRATEGY

Captures the userrsquosdescription of the product

feature expected

CARD

Set up the testcases that thecustomer willuse to ensurethe productdoes what is

expected

CONFIRMATION

Allows for

elaboration of thestory so that the

developer canunderstand the

context and details

CONVERSATION

BABOKreg is a registered trademark owned by International Institute of Business Analysis

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 23

ESI POINT OF VIEW

2

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

REQUIREMENTS VISIONING991252THE KEY TO USING USE CASES IN AGILE

Before the Agile team begins to collect the detailed requirements that describe the features of the system it is

vital that the overall vision and purpose of the project is identified This also includes the product vision Theproduct vision acts as the boundaries of the project in which the iterative incremental work takes places The

product vision should answer the following three questions

1 What describes the

product

2 Why is the product

useful

3 What features will

attract customers to

this product

This is the first place we

begin to see the power of

integrating user stories that

are being gathered with the

elicitation technique of use

case modeling Figure 1 is a

graphical representation of how we see use cases being leveraged during this process

Setting the product vision from a requirements perspective is the most important element when building a

solution This sets the parameters to ensure that we deliver what is needed as well as marks the end point when it

comes to tracing requirements

WHY AND WHEN TO USE USE CASES IN AGILE

Use cases are diagrams that demonstrate the actors and their goals Actors are typically people or systems and

the goals are what the actor is trying to achieve Use cases in Agile help to define who needs to do what with the

system and begin to identify the business value of that interaction

On Agile projects it is typically

best to leverage the power of use

cases not only from the projectperspective but also the product

From a project perspective it is

a great way to demonstrate in

a visual and easy to understand

format the scope of the lsquowho needs

whatrsquo for this project From the

product vision perspective it is also

Figure 1

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 33

ESI POINT OF VIEW

3

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

great for starting to envision

requirements of a system that is

user driven as well as to identify

Themes and Features

In Agile there are four levels of

requirements Themes are used

to describe larger requirements

that may include multiple

features within it Features are

a collection of related stories

These two levels offer a great

opportunity to use use cases

because they can provide a

simple visual representation of

the product scope and allow for

improved prioritization of the

requirements The other two

levels are a bit more detailed

and are known as Epic and

Story Epic is used to describe a Story that is too big to get done within an iterationsprint and needs to be broken

down into smaller chunks Finally Story is the smallest valuable business requirement that follows the INVEST

attributes

Effective Agile requirements rely heavily on use cases and user stories Remember that user stories focus on the

features that users expect to be available when they use the finished product They are meant to express short

scenarios of user expectations that help business analysts on an Agile team dive deeper into connecting those

expectations with delivering the appropriate solution value Use cases are used to help with the value analysis for

the user thus enabling appropriate prioritization of the product backlog

There is no set prescription on when exactly to use use cases and user stories Both are required to help prioritize

the product backlog and both are used to better understand the customer need and where the customer places

value on what needs to be delivered Using use cases and user stories is needed on Agile projects however the

timing of when to leverage them is dependent upon the type of Agile project that the team is working on

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 23

ESI POINT OF VIEW

2

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

REQUIREMENTS VISIONING991252THE KEY TO USING USE CASES IN AGILE

Before the Agile team begins to collect the detailed requirements that describe the features of the system it is

vital that the overall vision and purpose of the project is identified This also includes the product vision Theproduct vision acts as the boundaries of the project in which the iterative incremental work takes places The

product vision should answer the following three questions

1 What describes the

product

2 Why is the product

useful

3 What features will

attract customers to

this product

This is the first place we

begin to see the power of

integrating user stories that

are being gathered with the

elicitation technique of use

case modeling Figure 1 is a

graphical representation of how we see use cases being leveraged during this process

Setting the product vision from a requirements perspective is the most important element when building a

solution This sets the parameters to ensure that we deliver what is needed as well as marks the end point when it

comes to tracing requirements

WHY AND WHEN TO USE USE CASES IN AGILE

Use cases are diagrams that demonstrate the actors and their goals Actors are typically people or systems and

the goals are what the actor is trying to achieve Use cases in Agile help to define who needs to do what with the

system and begin to identify the business value of that interaction

On Agile projects it is typically

best to leverage the power of use

cases not only from the projectperspective but also the product

From a project perspective it is

a great way to demonstrate in

a visual and easy to understand

format the scope of the lsquowho needs

whatrsquo for this project From the

product vision perspective it is also

Figure 1

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 33

ESI POINT OF VIEW

3

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

great for starting to envision

requirements of a system that is

user driven as well as to identify

Themes and Features

In Agile there are four levels of

requirements Themes are used

to describe larger requirements

that may include multiple

features within it Features are

a collection of related stories

These two levels offer a great

opportunity to use use cases

because they can provide a

simple visual representation of

the product scope and allow for

improved prioritization of the

requirements The other two

levels are a bit more detailed

and are known as Epic and

Story Epic is used to describe a Story that is too big to get done within an iterationsprint and needs to be broken

down into smaller chunks Finally Story is the smallest valuable business requirement that follows the INVEST

attributes

Effective Agile requirements rely heavily on use cases and user stories Remember that user stories focus on the

features that users expect to be available when they use the finished product They are meant to express short

scenarios of user expectations that help business analysts on an Agile team dive deeper into connecting those

expectations with delivering the appropriate solution value Use cases are used to help with the value analysis for

the user thus enabling appropriate prioritization of the product backlog

There is no set prescription on when exactly to use use cases and user stories Both are required to help prioritize

the product backlog and both are used to better understand the customer need and where the customer places

value on what needs to be delivered Using use cases and user stories is needed on Agile projects however the

timing of when to leverage them is dependent upon the type of Agile project that the team is working on

8132019 ESIViewpoint Developing Effective Agile Requirements

httpslidepdfcomreaderfullesiviewpoint-developing-effective-agile-requirements 33

ESI POINT OF VIEW

3

WWWESI983085INTLCOM

For more information please contact us at totalsolutionsesi-intlcom or at +1 (877) 766-3337

great for starting to envision

requirements of a system that is

user driven as well as to identify

Themes and Features

In Agile there are four levels of

requirements Themes are used

to describe larger requirements

that may include multiple

features within it Features are

a collection of related stories

These two levels offer a great

opportunity to use use cases

because they can provide a

simple visual representation of

the product scope and allow for

improved prioritization of the

requirements The other two

levels are a bit more detailed

and are known as Epic and

Story Epic is used to describe a Story that is too big to get done within an iterationsprint and needs to be broken

down into smaller chunks Finally Story is the smallest valuable business requirement that follows the INVEST

attributes

Effective Agile requirements rely heavily on use cases and user stories Remember that user stories focus on the

features that users expect to be available when they use the finished product They are meant to express short

scenarios of user expectations that help business analysts on an Agile team dive deeper into connecting those

expectations with delivering the appropriate solution value Use cases are used to help with the value analysis for

the user thus enabling appropriate prioritization of the product backlog

There is no set prescription on when exactly to use use cases and user stories Both are required to help prioritize

the product backlog and both are used to better understand the customer need and where the customer places

value on what needs to be delivered Using use cases and user stories is needed on Agile projects however the

timing of when to leverage them is dependent upon the type of Agile project that the team is working on