How to Collect and Manage Requirements for Successful GIS … · 2018. 4. 18. · Matt Stephens,...

32
How to Collect and Manage Requirements for Successful GIS Projects Jennifer Prather Betsy Leis

Transcript of How to Collect and Manage Requirements for Successful GIS … · 2018. 4. 18. · Matt Stephens,...

How to Collect and Manage

Requirements for Successful GIS

ProjectsJennifer Prather

Betsy Leis

https://www.youtube.com/watch?v=BKorP55Aqvg

Avoiding Design Nightmares

RequirementsProvide direction for program success

Why Requirements are Important?Early mistakes lead to costly fixes

http://www.seguetech.com/rising-costs-defects/

Waterfall

• Sequential Steps

• Single Release

Staged

• Upfront requirements, design

• Prototypes

• Incremental deliveries

Agile/Scrum

• Just in time requirements, design

• Short duration sprints

• Continued releasable product

Plan

Build

Design

Use

Grow

Project Lifecycle Types

Far from

agreement

Close to

agreement

Close to

certainty

Far from

certainty

Req

uir

em

en

ts

Technology

How Requirements, Technology Affect your Choice of Project Lifecycle

Waterfall

Agile

Certain

Disaster

The Road Map to Requirement Success

So how do we get there?

Test

Day-In-The-Life of

the customer

Assess

business

workflows

Host a Planning

Event with

stakeholders

Conduct

introductory

kickoff meeting

Identify

Opportunities for

Improvement

Establish initial

feature level epics

Kickoff meeting

Bring everyone together

Executive leadership is important

Establish working agreements

Business Value to your organization

Provide timeline and structure

Evaluate other leading industry GIS solutions

Day-In-The-Life of the customer - Shadowing Experience

Identify key workflows

Assess current technology

Pinpoint opportunities for automation

Provide fresh perspective

Detect ways to reduce dependencies

Assess business workflows

Define the Existing Data Structure

Diagram out the existing business workflows

Identifying all users and

roles

What did we learn from shadowing?

Types of RequirementsBusiness, Functional/Technical, COTS

• Streamline processes

• Reduce costs

• Increase productivity

• Improve communication between user groups

Business Level

• Enhance capabilities to accomplish work tasks

• Store metadata to support historical metrics

• Use location information to harness the power of GISFunctional Level

• Must be faster than the old system

• Must be on software that is still supported

• Must be built with future growth allowable

Performance/Quality Level

Identifying opportunities of improvement

GAME TIME!Creating User Stories

http://www.machtested.com/2017/11/things-to-avoid-when-writing-user.html

How to Play

• Step 1 – Left side of room are the Product Owners; Right side of room are the

Developers

• Step 2 – Product Owners, take 5 minutes and write requirements based off what

they see in the diagram. (Example, Draw an upside down triangle)

• Step 3 – Product owners provide your requirements to a Developer on the right side

of the room

• Step 4 – Developers take 5 minutes and recreate the diagram off the requirements

created by the product owners

• Step 5 – Compare the Developer diagram to the original diagram provided to the

Product Owner

Writing and Refining Requirements

Conceptual

levelUser Stories

Narrative texts that

describe an interaction

of the user and the

system, focusing on the

value

Functional

requirementUse Cases

Criteria to which the

system or business

must adhere

Technical

requirementRequirements

Series of interactions by

the user with the

system and the

response of the system

User Stories, Use Cases, Requirements…How do we relate them?

How do you write a requirement?SMART

S

M

A

R

T

CCEPTED

EALISTIC

IMEBOUND

EASURABLE

PECIFIC

INVEST In Your Customer’s User StoriesSMART

I

N

V

E

S

T

aluable

stimable

mall

ndependent

egotiable

estable

https://www.agilealliance.org/glossary/invest/

Progressively decompose your stories…

Example – Enterprise Geocoding ServicesDecomposing work into manageable pieces

Logic adheres to the following order building point, street centerline,

zip code

Integrate reference data for building and

street centerlines

As an employee I need an authoritative geocoding service.

As an employee I need locators to be built on my Agency

Data.

Provide Single Line capabilities

API documentation

As an employee I need a cascading set

of locators.

As a business owner I need a geocoding service available to

3rd party applications.

99.99% SLA

REST service

Provide Enterprise Geocoding Services

Feature level Epic

User Stories

Acceptance Criteria

Provide Reverse capabilities

Provide Batch capabilities

Watch out for the ‘Gotchas’Things to avoid

• Avoid long lists of acceptance criteria on a single

user story

• Prepare for conflicting requirements

• Avoid requirements that are ambiguous

• Avoid requirements that describe HOW

• Requirements must have a “reason”

• Avoid moving forward on development until after the

customer has reviewed the design

• Don’t forget to prioritize

Build for Value

Standish Group Study Reported at XP2002 by Jim Johnson, Chairman

Requirements evolve over time

Tool to assist in Release PlanningRealTimeBoard

An Agile Sprint Lifecycle

TasksWorking

Increment

Sprint Cycle

<30 Days

Daily

Review

Product Backlog

1

2

3

4

5

6

7

1

2

3

Sprint Backlog

Tool to assist in Sprint PlanningJIRA, TFS, Trello

RequirementsTHE most important part of a project

• Solid requirements gathering leads to successful projects

• Involve the right people in the process

• Pick a methodology that fits your project

• Focus on the level of detail that is appropriate

• Important to prioritize and allocate

• Invest plenty of time to secure customer approval

Questions / Discussion

References

• Agile & Iterative Development: A Manager’s Guide by Criag Larman,

Addison-Wesley ,2003

• Software Requirements (2nd Edition) by Karl Wiegers, Microsoft

Press, 2003

• Use Case Driven Object Modeling with UML by Doug Rosenberg and

Matt Stephens, Apress, 2008

• Writing Effective User Cases, A Cockburn, Addison-Wesley, 2001

• Agile Development with ICONIX Process by Doug Rosenberg, Matt

Stephens, and Mark Collins, Apress, 2005

• STARWest Conference: Six Essential Skills for Modern Testers,

October 2015: presented by Bart Knaack

• PMI-ACP; http://projectmanagementacademy.net/pmi-acp

References

www.agilemanifesto.org

http://alistair.cockburn.us/

http://www.iconixsw.com/

http://www.pmi.org/default.aspx

http://ba-resources.co.uk/smart-requirements.php

http://www.extremeprogramming.org/

http://www.scrumguides.org/scrum-guide.html#values

https://www.agilealliance.org/glossary/invest/

http://www.seguetech.com/rising-costs-defects/

http://waterfall-agilemethodology.blogspot.com/

http://www.versionone.com/pdf/10th-Annual-State-of-Agile-Development-Survey.pdf

Download the Esri Events

app and find your eventSelect the session

you attended

Scroll down to find the

feedback section

Complete answers

and select “Submit”

Please Take Our Survey in the Esri Events App

Print Your Certificate of AttendancePrint stations located in the 140 Concourse

Tuesday Wednesday12:30 pm – 6:30 pm GIS Solutions Expo Hall B

5:00 pm – 6:30 pm GIS Solutions Expo SocialHall B

10:30 am – 5:15 pm GIS Solutions Expo Hall B

6:30 pm – 9:00 pm Networking ReceptionSmithsonian National Portrait Gallery