how to succcessfully collect, analyze and implement user ...€¦ · design based on detailed...

23
How to Successfully Collect, Analyze and Implement User Requirements Gerry Clancy Glenn Berger February 10–11, 2014 | Washington DC Federal GIS Conference 2014

Upload: others

Post on 28-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

How to Successfully Collect, Analyze and Implement User Requirements

Gerry Clancy Glenn Berger

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014

Page 2: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Requirements Provide direction for program success

Page 3: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Why Requirements are Important? | Early mistakes lead to costly fixes

Page 4: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Where do Requirements Fit? | Waterfall AND Agile

Source: Vikas Thange Blog

Page 5: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

• Involve the right people • Align requirements gathering with project approach (COTS,

Custom, Agile etc.) • Invest adequate time

Requirements Fundamentals | It is an art not a science

Stakeholders Business Analysts

Project Manager Key Users

IT Dept

Requirements

Page 6: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Solution Concept

“What?” “How Well?” “What Constraints?”

Business Meet Goals

Derive Benefits

Leverage COTS components

Functional Quality of Service Performance

Usability Quality

Operational Standards

Infrastructure

What Benefits? Increase Productivity Streamline Processes

Reduce Costs

What NOT how Clear

Define workflow Testable

Requirements Types | Functional, Quality of Service, Solution Concept

Page 7: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Scope

Business Requirements

Customer Requirements

Refined Requirements

Business Processes

Use Cases

Domain Model

Traceability from Detail back to Original Scope

From General to Detail

Requirements Process | Specificity and Traceability

Page 8: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

COTS First

Requirements Collection Potential techniques

Document Analysis

Workshops

Scenario Walkthroughs

Interviews

Prototyping

Surveys

Page 9: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Custom

Custom built to meet business goals

Emphasis on software development

Design based on detailed functional requirements

Considerable development time / effort

Static system

COTS Components

Custom system, using some COTS elements

Emphasis on component-based software development

Design based on detailed functional requirements

Reduced development time / effort

Some capability evolves with COTS releases

COTS system

Orchestrates COTS to meet business goals

Emphasis on workflows and configuration

Design based on business goals and COTS capability

Minimized development time / effort

Evolving system with COTS releases

Custom Development

Configuration

COTS Software

COTS First Approach | Leveraging existing technology

Page 10: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

• Immediate capability… continually improving via COTS release cycles

• Users engaged early to define “real” requirements

• Accelerated project lifecycle and reduced time to deployment

User Engagement and Demonstrations

Non-Functional

Requirements

Business Requirements

• Resource centers • Template GDB’s • Sample workflows • COTS Capabilities

Benefits of a COTS First Approach | Leveraging existing technology

Page 11: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Small focused

Allocate to iterations

Capture but prioritize

Vision - Get everyone on the same page

Workflows – general to detail

Requirement Workshops | Getting at the “real” needs

Page 12: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Requirements Workshop - Example

• High Level Business Requirements - Solution should allow anyone in the public to submit a request for service

via a web application. - The types of service requests is expected to be along the following lines:

- Indicate where a pot hole is located - Indicate if a tree on public lands needs trimming - Indicate if there is a trash or graffiti problem

- Solution is expected to streamline the process of how the public provides this information

- Solution should not require GIS system expertise

Page 13: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Use Case

Page 14: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

User Interface Mock-up

Page 15: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Customer Requirement

1 User Must be Able to Search Service Requests (SRs)

20 Must be able to search SRs by address 1

21 Must be able to search SRs by SR Number 1 22 Address search must support street addresses 1 23 Address search must support intersection address 1

Refined Requirement

Business Processes Use Cases Domain Model

Requirement Decomposition | Preparing for Design

Page 16: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

JIRA Microsoft Team Foundation Server (TFS)

Requirement Management Tools | Licensed and open source

Page 17: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

• Avoid long lists of requirements • Do not be judgmental • Prepare for conflicting requirements • Avoid requirements that are ambiguous • Avoid requirements that describe HOW

(unless you are using COTS approach)

Requirement Process | Things to avoid

Page 18: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

References

• Esri project methodologies - www.esri.com/services/professional-services/methodology.html

• 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

Page 19: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Don’t forget to complete a session evaluation form!

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014

Page 20: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Smithsonian National Museum of Natural History Tuesday, 6:30 PM–9:30 PM Bus Pickup located on L Street

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014

Networking Reception

Page 21: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Print your customized Certificate of Attendance! Printing stations located in Hall B and the 140/150 Room Concourse.

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014

Page 22: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

GIS Solutions EXPO, Hall B Monday, 12:30 PM–6:30 PM Tuesday, 10:45 AM–4:00 PM • Exhibitors • Hands-On Learning Lab • Technical & Extended Support • Demo Theater • Esri Showcase

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014

Page 23: How to Succcessfully Collect, Analyze and Implement User ...€¦ · Design based on detailed functional requirements. Reduced development time / effort . Some capability evolves

Interested in diving deeper into Esri technology? Add a day to your Fed GIS experience and register to attend the Esri DevSummit Washington DC. Stop by the registration counter to sign up.

February 10–11, 2014 | Washington DC

Federal GIS Conference 2014