Use Cases and User Stories for Agile Requirements

Similar documents
Managing Requirements in an Agile World: Avoiding the Round Peg/Square Hole Dilemma

Agile Essentials Track: Business Services

Agile Certified Professional

[Name] [ ID] [Contact Number]

Better Requirements and Improved Collaboration with User Stories

Requirements Engineering and Agile Methodology

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016

PMI Agile Certified Practitioner (PMI-ACP) Duration: 48 Hours

BABOK v3 Task to Technique Mapping

approach to successful project

SOFTWARE ENGINEERING SOFTWARE-LIFE CYCLE AND PROCESS MODELS. Saulius Ragaišis.

Owning An Agile Project: PO Training Day 2

Portfolio Management In An Agile World

Practical Agile: Hands-on application of agile principles and practices to turn business concepts into deliverable, value based components

Your Coach: Paul Hodgetts

Business Events as a focal point of analysis

Agile I m a Product Owner, How Do I Tell a Better Customer Story? AGILE WEBINAR

Agile XXL. March 29, Scaling Agile for Project Teams. Alan Bustamante, PMP, PMI - ACP

04. Agile Development

Agile Systems Development In a Medical Environment

Johanna Rothman Part II Design and Manage an Agile and Lean Project Chapter 5 Start Your Agile Project Right. Copyright 2017

Scrum Product Owner Course 03 - Roles and Responsibilities

Scaling Agile to the Enterprise

Business Analysis Essentials

Agile at Mid-Scale. Al Shalloway. Introducing FLow for Enterprise Transformations (FLEX)

Business Analyst and Product Owner Where do they meet & conflict? Cherifa Mansoura

Russell Pannone February 10, 2009

SAFe in a Nutshell SCALED AGILE FRAMEWORK

A Guide to Critical Success Factors in Agile Delivery

VALUE FOCUSED DELIVERY

Rule = A definition of what a Product Backlog is. Good Practice = A practice which is commonly done and is good to do. Avoid = A practice which, in

Agile Transformation In the Digital Age

Requirements Engineering and Software Architecture Project Description

Making Visions Actionable. Pejman Makhfi Certified Scrum Master VP of Solution, Savvion Inc. 11/29/2008

VALUE FOCUSED DELIVERY

Prerequisites It is recommended that the participants have a working knowledge of traditional Business Analysis tasks and techniques.

Events. Artifacts. Roles. Product Owner Scrum Master Development Team. Sprint Sprint Planning Daily Scrum Sprint Review Sprint Retrospective

Watson Internet of Things. Agile Development Why requirements matter

Agile Enterprise Architecture Project Simulation. How to apply the Agile approach to TOGAF

User Stories Applied, Mike Cohn

Child Welfare Services New System Project. Requirements Management Plan

Agile Software Development. Stefan Balbo / Patrick Dolemieux

Transforming Business Needs into Business Value. Path to Agility May 2013

Chapter 01 - The Process The Process Application Process ACP Qualifications Scheduling Your Exam Rescheduling/Cancelling Fees

Sign up to mailing list Join Slack, teaching team is available. All links are on the course website Slides are uploaded there too

Bridging the Gap Between Governance and Agility. Mario E. Moreira

Course Title: Planning and Managing Agile Projects

AGILE INTERNAL AUDIT (IA)

This course will explore how your projects can easily and successfully make the transition to an effective Agile environment.

CTC/ITC 310 Program Management California State University Dominguez Hills First Exam Answer Key November 20, 2018 Instructor: Howard Rosenthal

Organizational Matters

Organizational Agility and How To Attain It

AGILE LESSONS FROM THE NEW PMBOK. Presented by Eddie Merla, PMI-ACP, PMP

CS 5704: Software Engineering

CS314 Software Engineering Project Management

1. The Case for Agile 2. The Scrum Process 3. Scaling Scrum

Implementing Agile SW Development Processes in a Healthcare IT Organization Approach and Lessons Learned

Designing the Process. A Brief Introduction to Agile Programming

Becoming More Agile: How to Adopt Agile Development Methodology

Chapter 4 Document Driven Approach for Agile Methodology

Accelerating Collaboration, Integrity and Innovation Polarion ALM - Enterprise Agile Jiri Walek Clara Cismaru VP Product Management Product Manager

Agile Projects 7. Agile Project Management 21

"Charting the Course to Your Success!" Planning and Managing Agile Projects Course Summary

Scaling FCC MARCIA HUNGLE & MARK RAJPAL NOVEMBER 22, 2017 PMI-SAC PROFESSIONAL DEVELOPMENT CONFERENCE

The Importance of Business Architecture and IT Architecture in Successful Agile Project Management


AGILE methodology- Scrum

A Hybrid Approach to the Use of Agile in Health IT. Session 147 March 7, 2018 Spencer Reeser-Stout, Senior Project Manager

MIS Systems & Infrastructure Lifecycle Management 1. Week 10 March 24, 2016

Copyright Intertech, Inc All Rights Reserved. May 18, 2011

Agile Software Development in a Regulated Environment. Natalie Custer

Achieving Resiliency with Agile Methods

How to Prepare for and Implement a Project Using Scrum

No Bull Agile. Marc J. Balcer September 2017

Software Engineering Lecture 5 Agile Software Development

The Lessons Learned of a BA on an Agile Project

Child Welfare Digital Services Project Decision Making Framework

A Lean and Scalable Requirements Information Model for the Agile Enterprise. About Dean Leffingwell

SESSION 107 Wednesday, November 1, 10:15am - 11:15am Track: People, Culture, and Value

The ABC of Agile Business Change. James Yoxall BCS 17 September, 2013

Software Design COSC 4353/6353 D R. R A J S I N G H

Software Development Life Cycle:

How to Utilize Agile Project Management for GIS Projects. Lana Tylka and Jennifer Prather

Behavior Driven Development

Requirements Analysis and Design Definition. Chapter Study Group Learning Materials

Leadership Lessons from Agile and PMI s PM-2. Tim Kloppenborg, PhD, PMP Marcie Lensges, PhD

AGILE Realities. Presenters: Chris Koo (Edward Jones) Blake Moyer (Edward Jones) Joan Romine (Boeing)

Organizational Change Through Metrics

Requirements Engineering and SCRUM. Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information Systems February 13, 2007

BA25-Managing the Agile Product Development Life Cycle

"Starting an Agile Team - Evolution or Revolution?" Scott Bird and Rick Freedman 2016 PMI Professional Development Days September 2016

SEPTEMBER 2018 The Agile Team s Playbook to Doing Agile

Michael Prince PMI-ACP Application Development Manager Richland County

Software Engineering Prof. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur.

Introduction to Agile/Extreme Programming

Johanna Rothman. Chapter 1 Why Agile and Lean Approaches Work. Copyright 2017

Managing Projects of Chaotic and Unpredictable Behavior

Scale Your Agile Delivery Engine. Shannah Van Winkle, Solutions Leader Eric Willeke, Transformation Consultant October 16, 2014

Top 5 Reasons Why Agile Fails (and how to avoid them!) March 2017

AGILE SOLUTIONS. Agile Basics

Transcription:

Use Cases and User Stories for Agile Peter Schmidt, PMP, PMI-ACP, CPL VP, Client Services, ESI International pschmidt@esi-intl.com www.esi-intl.com

Agenda 1 2 3 Principles Identify the principles that lead to effective Agile requirements Setting the Stage for Establish the vision as the foundation of Agile requirements Identify the different level of Agile requirements for effective requirements 2

Agile Principles Principles Design a process for collaborative requirements gathering upfront Identify and engage a product owner and knowledgeable SMEs Acquire effective facilitation/elicitation and visual modeling skills Focus on breadth early, on depth later Break down/slice requirements to the right level Define Acceptance Tests as part of the requirement Keep a Just Enough for the Next Step attitude

Principles Top 10 Agile 6 Characteristics 7 1 2 3 4 5 8 9 10 Just in-time detail Light Assumes change Never sealed Estimated in points Prioritized top down Shorter time to gather ONE product owner Focus on breadth Gathered collaboratively 4

Please Take the Poll What are the challenges you face when it comes to writing good requirements? Think breadth then depth Break it down into small chunks Collaboration Following INVEST (Independent, Negotiable, Valuable, Estimate-able, Small, Testable) 5

Writing Good Principles Should be done collaboratively Think breadth then depth Follow the U-INVEST attributes Break it down into small chunks Stories are not Tasks

Setting Project Direction Setting the Stage for Revisit the vision Revisit the vision periodically and revise it based on feedback, innovative ideas, and needed change Create a long-term vision Develop strategies for achieving the vision Describe what the project will look like in the future Examine patterns and relationships throughout the project Focus on attainable goals Identify potential problems and risks Balance opportunities and challenges 7

Agreeing on Project Deliverables Setting the Stage for Working Documents: Artifacts needed during project Enterprise Documents: Artifacts needed after project Minimal Documentation Required

Agreeing on Project Deliverables Setting the Stage for

Agreeing on Tools Setting the Stage for What functionality do we need? When? Which tools can help us reach our goal? What is our criteria for selecting

Agreeing on Tools Setting the Stage for

Sprint N Sprint 4 Sprint 3 Sprint 2 Sprint 1 From Portfolio Ideas to Team Backlog Idea Qualification/ Feasibility Portfolio Prioritization Program Planning Build Story Backlog Release Planning Iteration Work Portfolio Projects Idea List Program Master Backlog Team Backlog Team Release Plan

Example Requirement Levels Theme Job Seeker Feature Resume Management Story As a Job Seeker I want to upload a Resume As a Job Seeker I want to delete my Resume Details TC1- Verify that only word and PDF documents can be uploaded. TC2- Verify that file size does not exceed 80k

Please Take the Poll What level of Agile requirements development do you have the most challenges with? Theme/Epic Feature User Story Task 14

at the Portfolio Layer Highest Level of In Agile, there are 2 high level requirements Themes Epics

Epics Portfolio Level Are large scale in nature and are used to realize investment themes Are the highest level of requirement Demonstrate VISION NOT specificity They must be categorized, prioritize and estimated They represent the 2 nd layer of abstraction in Themes

Portfolio Backlog Epics Portfolio Level Epics are managed and maintained by the Portfolio management group, governance team or business unit owners Epics are managed and maintained in the Portfolio backlog Epic1 Epic2 Epic3 Investment Themes

Architectural Epics Portfolio Level Represent the technological/ infrastructure side of initiatives Architectural epics represent large scale implementations that could require execution in Waterfall practices as well as Agile

Understanding the Problem Domain Setting the Stage for Learn Just Enough about the problem domain. Identify actual users and impacted stakeholders. Go-See and understand What do they do today? Why is it not working? Use interviews, shadowing, surveys, and market research to understand true needs. ESI March 2013

Visioning Summary Setting the Stage for Need a clear understanding of: Why are we doing this project? What are the key objectives? How will we measure success? Vision Definition Start collecting high level themes and features here that lead to defining the scope of the effort

Visioning Setting the Stage for Aims to identify a list of major processes and high level process steps for the system. Who needs to do What? Big picture of UI Flow Goal Techniques Facilitator Led Visioning Workshop High Level Modeling Teams Breakout Converge Use Case Diagrams High Level Process Diagrams UI Flow Diagrams Backlog (high level) Output

Features Program Level What new things will a system do for its users Describes the benefits the users will get out of features They bridge the gap between needs and software requirements

Features Program Level Features are a high level user story High Level Theme 25-50 features ensures a broad view of the product vision Medium Feature 1 Feature 2 Features are important for Agile teams to plan and estimate iterations

Challenges in Prioritizing Features for the Program Backlog Customers want them all Product managers want to avoid prioritizing features for sake of having them all Quantification of value for simple must haves is difficult to do for sake of remaining competitive this is often too abstract in nature to prioritize Comparing apple features to oranges features can be very challenging

What is a Story? A brief, simple requirement statement from the perspective of the user Stories should be documented and visible Each story should have acceptance criteria Attributes of a Story: Understandable Independent Negotiable Valuable Estimable Small Testable

User Stories Team Level Characteristics of a great user story: They are short and easy to read They are captured in a list format large BRD s not welcome here! They can be discarded after implementation They represent small increments of functionality They should be relatively easy to estimate Detailed system behavior is NOT captured in a user story The best litmus test of user stories is the use of the mnemonic UINVEST

User Stories Team Level Characteristics of a great user story; Card 2 or 3 sentences to describe intent of story Format: As a <role> I can <activity> so that <business value> Conversation The card in essence is the introduction to a conversation between, product owner, developers, users, team, customer etc, in short all stakeholders involved. The conversation is intended to seek clarity and drive out details Confirmation = Acceptance test, has the story been implemented according to conditions of satisfaction?

Writing Workshops Setting the Stage for Involve as many team members as possible. Goal is to brainstorm and write as many user stories as possible. Prepare the room with post-it notes, flip charts and markers. Need an effective facilitator to run these meetings to keep folks on track. Establish Meeting Norms!

Identifying Stories Depending on your project type, there are several ways to identify stories such as: User Focused: Use Case Diagrams Process Focused: Process Diagrams UI Focused: UI Flow Diagrams

Please Take the Poll When developing Agile requirements, what modeling techniques do you use? Use Case Modeling Process Modeling Business Information Modeling None 30

Personas Personas are like avatars that represent different customer segments for your business. They stand-in for real users. We use them to learn about characteristics, needs and behaviors of real users.

High Level Use Case Diagrams What Are They? Diagrams that demonstrate the Actors and their Goals. Actors can be people or systems. When to Use Them? For high level visioning. When identifying Themes and Features. For communicating a simple visual representation of the project scope.

Steps for Identifying User Roles Research the domain and interview real users. Perform surveys to identify true needs, behaviors and characteristics. Brainstorm the initial set of roles with product owner and SMEs. Organize the set. Consolidate and prioritize the target roles.

Sample Use Case Diagram Scott Ambler www.agilemodeling.com

Sample Questions to Ask Setting the Stage for What are you trying to achieve? Why? Who is involved, and how? What do those people want? Do they agree? How do you envision this working? What could go wrong? Why are you making these decisions? What are you assuming?

More Definition The Levels of High Level Theme Medium Feature 1 Feature 2 Small Story 1 Story 2 Epic Details Business Rules Acceptance Tests UI Prototype Activity Diagram Tasks

Example Theme Feature Story Employer Area Manage Jobs 1. As an employer I want to post a job so others can find it. 2. As an employer I want to modify a job posting so it is correct. 3. As an employer I want view a list of my open job postings so I can analyze them.

Example Story Acceptance Criteria 1. As an employer I want to post a job so others can find it. 1. UAT1 Verify that only an authorized user with a valid employer account can post a job. 2. UAT2 Verify that a duplicate job posting cannot be entered. 3. UAT3 Verify that the posting date is past today s date. 4. UAT4 Verify that the positing expiration date within 90 days. 5. UAT5 Verify that the screen fields pass our standard field format rules (link here to doc). 6. UAT6 Verify that all required fields are entered (list them or link to UI Prototype).

Example Story Tasks 1. As an employer I want to post a job so others can find it. 1. Create a database table to store the job posting details. 2. Design and build the screen for job posting. 3. Write the automated acceptance tests 4. Code, unit test and automate UAT1 5. Document/record the on page video help for the job posting page. 6. Perform user acceptance testing. 7. Deploy the code to the test environment. 8... Others as needed.

Agile Elicitation Techniques Setting the Stage for Visioning Interviews/Surveys User Roles, Personas Use Cases Diagrams Process Diagrams UI Flow Diagrams Context Diagrams Deep Dive Acceptance Tests Test Scenarios Example Tables UI Prototyping and Wireframes Business Rules Activity Diagrams Brainstorming Group Brainstorming Facilitator Led Callout Post-it Note Breakout/Converge Story Mapping Silent Sorting Breakdown/Slicing CRUD Business Rule Process Steps User/Platform

Pulling It All Together

Thanks for listening! Peter Schmidt, PMP, PMI-ACP, CPL VP, Client Services, ESI International pschmidt@esi-intl.com www.esi-intl.com