Date post: | 17-Nov-2014 |
Category: |
Technology |
Upload: | saket-bansal |
View: | 3,192 times |
Download: | 0 times |
www.izenbridge.com 1
Saket BansalPMP, PMI-ACP, CSM , ITIL-F
User Stories & Agile Analysis
www.izenbridge.com 2
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 3
A user story describes functionality that will be valuable to either a user or purchaser of a system or software.
What Is A User Story?
www.izenbridge.com 4
Is • An agreements between customers and team members
to discuss detail requirements during an iteration • Emphasize verbal rather than written communication.• Right size for planning
Is not• A Requirement document, requirement need to be
captured by discussion , if discussion is not possible then should be augmented by documentation
User Story
www.izenbridge.com 5
Card: • Stories are traditionally written on note cards• Card may be annotated with Notes , Estimates etc,
Conversation : • Details behind the story come out during conversations
with product owner/customer.Confirmation • Acceptance tests confirms a story was coded correctly
Three Cs
www.izenbridge.com 6
User Story
As a (role) I want
(something) so that
(benefit).
As a Who wants this piece of functionality I want What the user wants So that Why the user wants it
www.izenbridge.com 7
Samples : Test Preparation Site
As a Student I want to take practice test so that I know my readiness for exam.
As a Exam Administrator I should be able to publish new Exam so that test takers can take it.
As a Student I want to see how I am doing in practice test so that I can plan my future study.
As a Administrator I should be able to manage question bank so that I can retire easy questions.
www.izenbridge.com 8
Where Are The Details?
As a Student I want to take practice test so that I know my readiness for exam.
•Does system allows user to select number of questions•Does system allows user to take test in multiple sessions•Does system provides facility to time the exam, is if configurable ? •Do we need to save the test history?
www.izenbridge.com 9
Details As Condition Of Satisfaction
As a Student I want to take practice test so that I know my readiness for exam.
•Verify that test taker can select questions in multiple of 10 with max limit of 100•Verify that registers user can do the test in multiple sessions.•Verify that User can see how he has performed in test at later date.
www.izenbridge.com 10
Details Added In Smaller Sub Stories
As a Student I want to take practice test so that I know my readiness for exam
As a Test taker I can select the number of questions so that i get that many questions in test
As a Test taker I should be able to hold the test so the I can resume it at later stage
As a Test taker I want to save my test results so that I can review them at later date
www.izenbridge.com 11
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 12
Epic and Theme
Epic , Is a large User Story, They are too big to implement in a single iteration and therefore they need to be disaggregated into smaller user stories at some point
Theme : Theme is a set of related user stories that may be combined together and treated as a single entity for either estimating or release planning.
www.izenbridge.com 13
In some cases epic may equal a theme. However we write an epic as a placeholder for big features we want to add someday , while themes serve the purpose of grouping together a set of related stories
Epics come from top-down planning while themes are created bottom.
There is no hierarchy relation between Theme and Epic Epics are usually bigger than theme , but in some cases
theme may have more than one epic in it.
Epic And Theme
www.izenbridge.com 14
Example : Epic
As a Job Seeker I should be able to search for a job so that I can find suitable match
As a Job Seeker I should be able to search for jobs by keywords and location so that I can find the suitable match
As a Job Seeker i should be able to view information about each job that is matched by a search so that I can get details of listed Job
www.izenbridge.com 15
As a PMO Head, I would like to review
performance of ongoing projects so that I can
take corrective actions
As a PMO Head, I would like to review project performance against
time so that I can take corrective actions
As a Head PMO, I would like to see list of projects which are behind schedule so
that I can take corrective actions
As a Head PMO, I would like to see list if upcoming milestones
in any running projects so that I ensure
resources on time.
As a Head PMO, I would like to see list of projects which has
missed last 3 milestone dates so
that I can identify the risky projects.
As a PMO Head, I would like to review Project performance against budget so that I can
take corrective actions
Epic Hierarchy : Project Management
Application
Epic
EpicUser Story
www.izenbridge.com 16
A Job Seeker can post a resume
Technical Division
A Job Seeker can fill out a resume form.
Information on a resume form is written to the database.
Slice the cakeA Job Seeker can submit a resume that includes only basic information such as name, address, education
history
A Job Seeker can submit a resume that includes all information an employer may want to see.
Slice The Cake
Epic
www.izenbridge.com 17
Type Of Epics
Epic
Compound Story An epic that comprises multiple shorter stories
Complex StoryInherently large and
cannot easily be disaggregated
www.izenbridge.com 18
Splitting Epics : Compound Story
Epic : Compound
Story
Splitting across data boundaries
Split along the boundaries of the data supported by the story.
Splitting on Operational Boundaries
Based on the operations that are
performed within the story.
Removing Cross Cutting Concern
Creating two versions of the story: one with
and one without support for the cross-
cutting concern.
Don’t meet performance constraints
Separate the functional and nonfunctional
aspects
Split Stories of Mixed Priority
Split into smaller stories if the smaller stories have different
priorities
www.izenbridge.com 19
Splitting Epics : Complex Story
Epic : Complex Story
Investigation
Research and determine the
feasibility (TimeBoxed Spike)
DevelopmentAdd that
functionality to the product. (User Story)
www.izenbridge.com 20
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 21
Independent• Avoid Introducing dependencies between stories
Negotiable• Stories are negotiable. they are not written contracts or
requirements Valuable to users or customers• Story must be valued by the users / Purchaser
Estimatable• Developers should be able to estimate it.
Small• Stories should be rightly sized , Too large or too small cannot be
used in planning. Testable• Stories must be written so as to be testable. Successfully passing its
tests proves that a story has been successfully developed.
A Good Story Is: (INVEST)
www.izenbridge.com 22
Is a Closed stories Has User Role Written for One user Does not focus too much on UI Has acceptance tests
A Good Story
www.izenbridge.com 23
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 24
Identify Initial asset of User Roles
• Set of User Roles
Identify User Personas for important User Roles , also identify Extreme Characters• User Personas
• Extreme Characters
Identify actions / interactions User Persona or role can have with system
• Epic Stories
Writing User Stories
www.izenbridge.com 25
A user role is a collection of defining attributes that characterize a group of users and their interactions with the system. Its an aggregate individual users Role Modeling Steps• Brainstorm set of user roles relevant for our system• Organize and consolidate roles• Refine the roles
User Roles
www.izenbridge.com 26
Ajay• Deals in Sr. Positions• Specialized in Law Firms recruitment
Sally • Deals in Project Management • Specialized in IT Projects Managers
Sunita• Deals in Entry level Recruitment• Specialized in call Center Recruitment
User Role : Recruiter
www.izenbridge.com 27
Name Picture Education & Experience Likes / Dislikes Demographic Information Not to map to the real user
User Personas
For some of the important user roles we should create a persona . A persona is an imaginary representation of a user role.
www.izenbridge.com 28
Users with exaggerated personalities may lead to new stories
Extreme Character
www.izenbridge.com 29
Includes developers , users , product customers, product owner , anyone who can contribute Should be conducted prior to release planningUse CardsDiscussion remain at a high level
Story Writing Workshop
www.izenbridge.com 30
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 31
Writing User Stories
www.izenbridge.com 32
Identify appropriate user roles. Participate in the process of identifying user roles and
personas. Write Stories. When writing stories ensure that each story can be
associated with at least one user role or persona. If you need help in writing the stories, you are responsible
for scheduling and running story-writing workshops.
Customer / PO
www.izenbridge.com 33
Participate in the process of identifying user roles and personas.
Participate in Writing Stories.
Developer Responsibilities
www.izenbridge.com 34
Writing Acceptance Test
www.izenbridge.com 35
Writing the acceptance tests. Write tests as many which adds value and clarification to
the story. Executing the acceptance tests.
Customer / PO
www.izenbridge.com 36
Responsible for automating the execution of acceptance tests if required
You are responsible for thinking about additional acceptance tests
You are responsible for unit testing your code so that acceptance tests do not need to be specified for all the minutiae of a story
Developer
www.izenbridge.com 37
Agenda
User Stories
Epics and Themes
A Good User Stories
Writing User Stories
Responsibilities
www.izenbridge.com 38
Refernences
User Stories Applied for Agile software Development-Mike Cohn
www.izenbridge.com 39
Check with us for more informative and interesting presentations…
www.izenbridge.com 40
Provide Agile & Scrum training Provide face to face and online training of PMI-ACP (Agile
Certified Practitioner) certification program Help Organizations in adapting agile Helps organizations in setting up project governing office. Get training calendar at www.iZenBridge.com
What We Do?
www.izenbridge.com 41
Saket [email protected]: 9910802561Web: www.iZenBridge.comLinkedIn: www.linkedin.com/in/saketbansal
Reach Us
www.izenbridge.com 42
Did you get your answers? Drop us a note!