Вы находитесь на странице: 1из 51

Agenda

• What is a requirement?
• What is the best way to
present requirements?
• How do we categorize
requirements?
• Requirements Engg.

F O C U S Q U A L I T Y E X P E R I E N C E
F O C U S Q U A L I T Y E X P E R I E N C E
Some Facts

• 80% defects are introduced at


requirements gathering stage

• < 12% time is allocated to requirements


analysis phase

F O C U S Q U A L I T Y E X P E R I E N C E
The V Model

Analyze Acceptance Test

Design System Test

Code Unit Test

F O C U S Q U A L I T Y E X P E R I E N C E
Before I begin . . .

Jot down a requirement


– From a project you are working on, or
– From a past project

Any requirement!

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Quiz
• Number your sheet of paper from 1 to 9
• Each of the following questions should be
answered Yes or No
• No right or wrong answers

F O C U S Q U A L I T Y E X P E R I E N C E
1. Is this a requirement?

4.1 The system shall allow customers who


have not registered on our web site to
review the product catalog.

F O C U S Q U A L I T Y E X P E R I E N C E
2. Is this a requirement?

If the order total is greater than $500.00, the


shipping charge is zero.

F O C U S Q U A L I T Y E X P E R I E N C E
3. Is this a requirement?

A customer is a person or an organization


that may purchase a product or service.

F O C U S Q U A L I T Y E X P E R I E N C E
4. Is this a requirement?
CUSTOMER
Customer number PRODUCT
Product number
Customer first name
Customer last name Product description
Customer email address Product name
Customer phone number Product color code
Customer billing street address Product price
Customer billing city
Customer billing state code
Customer billing zip code

describes / is described by
places / is placed by

ORDER ORDER LINE ITEM

Customer number Customer number


Order number Order line item number
includes / is on Order number
Order date
Order shipping charge Order line item quantity
Order ship address street Product number
Order ship address city Order line item product color code
Order ship address state Order line item product size
Order ship address zip code
Order shipping method
Order status

F O C U S Q U A L I T Y E X P E R I E N C E
5. Is this a requirement?

Order
Processing

Respond to
Track Order Accept Order
Accept Order Customer
Status Cancellation
Request

F O C U S Q U A L I T Y E X P E R I E N C E
6. Is this a requirement?
Process id: P1.2
Process name: Accept order
Description: This process describes the work performed to receive an
order from a customer through shipment of the order.
External agents involved: Customer
What causes the process to occur? A customer places an order via fax, phone, mail, web site, or
retail store.
What happens after this process? Once the order is accepted it is sent to the Order Fulfillment
Dept.

Business rules: Web orders must be paid with a valid credit card.

F O C U S Q U A L I T Y E X P E R I E N C E
7. Is this a requirement?
Title/Authorization Add/update Inquire on Delete
orders order status orders

Customer service rep X X

Customer service supervisor X X X

Accounts receivable X
administrator

F O C U S Q U A L I T Y E X P E R I E N C E
8. Is this a requirement?
Order Processing

Place order

CUSTOMER Order fulfillment dept.

F O C U S Q U A L I T Y E X P E R I E N C E
9. Is this a requirement?
Customer Information

Please tell us who you are.

Organization

Contact first name

Contact last name

Street address

City

State

Zip Code

Email address

Phone number

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Quiz Results
• Audience results?
• Would all of the BAs
in your organization
have answered the
same as you?
• Would you have
answered the same
way five years ago?

F O C U S Q U A L I T Y E X P E R I E N C E
IIBA Definition of “Requirement”

A condition or capability needed by a


stakeholder to solve a problem or achieve
an objective.

IIBA BABOK™ v 1.6

F O C U S Q U A L I T Y E X P E R I E N C E
1. Is this a requirement?
4.1 The system shall allow customers who
have not registered on our web site to
review the product catalog.

A software requirement
presented textually

F O C U S Q U A L I T Y E X P E R I E N C E
2. Is this a requirement?

If the order total is greater than $500.00, the


shipping charge is zero.

A business rule
presented textually

F O C U S Q U A L I T Y E X P E R I E N C E
3. Is this a requirement?

A customer is a person or an organization


that may purchase a product or service.

A definition presented in
a glossary

F O C U S Q U A L I T Y E X P E R I E N C E
4. Is this a requirement?
CUSTOMER
Customer number PRODUCT
Product number
Customer first name
Customer last name Product description
Customer email address Product name
Customer phone number Product color code
Customer billing street address Product price
Customer billing city
Customer billing state code
Customer billing zip code
Data requirements
presented in a Entity
describes / is described by
places / is placed by Relationship Diagram

ORDER ORDER LINE ITEM

Customer number Customer number


Order number Order line item number
includes / is on Order number
Order date
Order shipping charge Order line item quantity
Order ship address street Product number
Order ship address city Order line item product color code
Order ship address state Order line item product size
Order ship address zip code
Order shipping method
Order status

F O C U S Q U A L I T Y E X P E R I E N C E
5. Is this a requirement?

Order
Processing

Respond to
Track Order Accept Order
Accept Order Customer
Status Cancellation
Request

Business processes presented in a


decomposition diagram

F O C U S Q U A L I T Y E X P E R I E N C E
6. Is this a requirement?
Process id: P1.2
Process name: Accept order
Description: This process describes the work performed to receive an
order from a customer through shipment of the order.
External agents involved: Customer
What causes the process to occur? A customer places an order via fax, phone, mail, web site, or
retail store.
What happens after this process? Once the order is accepted it is sent to the Order Fulfillment
Dept.

Business rules: Web orders must be paid with a valid credit card.

A business process presented in a


description table

F O C U S Q U A L I T Y E X P E R I E N C E
7. Is this a requirement?
Title/Authorization Add/update Inquire on Delete
orders order status orders

Customer service rep X X

Customer service supervisor X X X

Accounts receivable X
administrator

Security requirements presented in a table

F O C U S Q U A L I T Y E X P E R I E N C E
8. Is this a requirement?
Order Processing

Place order

CUSTOMER Order fulfillment dept.

A software design presented in a Use


Case diagram

F O C U S Q U A L I T Y E X P E R I E N C E
9. Is this a requirement?
Customer Information

Please tell us who you are.

Organization

Contact first name

Contact last name

Street address

City

State

Zip Code

Email address

Phone number

Design of a user interface


presented in a prototype

F O C U S Q U A L I T Y E X P E R I E N C E
So, what is a requirement?

We all agree that a requirement is


something needed by the business;

we differ on how best to present the


requirement.

F O C U S Q U A L I T Y E X P E R I E N C E
How Best to Present a Requirement?
• SME: “We want our customers
to be able to use a credit card PAYMENT
to purchase products on our Payment number
web site.”
Credit card number
Credit card expiration date
The system shall process credit Credit card type
card payments automatically.

Order Processing Enter Credit Card Number

Credit Card number:


Visa

Place order Expiration Date: SID

Order fulfillment dept. September 07 2007


CUSTOMER

OK Cancel

F O C U S Q U A L I T Y E X P E R I E N C E
How Best to Present Requirements
Example:
How many ways can you represent an activity in the
business?
• Process decomposition diagram
• Workflow diagram
• Dataflow diagram
• Use case diagram/description
• Screen prototype
• Text
• Organizational chart
• Report layout

F O C U S Q U A L I T Y E X P E R I E N C E
How Best to Present a Requirement?
It depends on the audience and purpose of
the presentation.
Examples:

Are we building a database?


Are we building a web page?
Are we re-engineering a process?
Are we customizing a software package?

F O C U S Q U A L I T Y E X P E R I E N C E
How Best to Present a Requirement?
Each requirement may need to be presented
in a different format/style.
Consider:
• Audience (reviewers and solution team)
• Level of detail in the requirement
• Methodology guidelines
• Technique which best fits the
requirement

F O C U S Q U A L I T Y E X P E R I E N C E
Key Requirement Guideline
• Every requirement must be uniquely
identifiable so that it can be:

– Stored and re-used


– Reviewed/approved
– Prioritized
– Traced

F O C U S Q U A L I T Y E X P E R I E N C E
Characteristics of Excellent
Requirements
• Correct
• Complete
• Unambiguous
• Verifiable
• Feasible
• Necessary
• Prioritized
Wiegers, Software Requirements 2003

F O C U S Q U A L I T Y E X P E R I E N C E
Packaging and Categorizing
Requirements
Since various requirements will be
presented in various ways and at various
levels of detail, packaging and categorizing
are critical.

F O C U S Q U A L I T Y E X P E R I E N C E
Why Categorize?

F O C U S Q U A L I T Y E X P E R I E N C E
Why Categorize?
• The larger the project, the more
requirements there are  the more
important categorizing is
• Increases opportunities for re-use
• Improve communication with the audience
– Reviewers
– Solution team

F O C U S Q U A L I T Y E X P E R I E N C E
Categorizing Requirements
• Business
– Data
– Process
– Rules
• Functional
– Behaviors of the software
– Workflows for the business area
– Quality of service requirements
• Technical

F O C U S Q U A L I T Y E X P E R I E N C E
Categorizing Requirements

Business Functional
Requirements Requirements

Technical
Requirements

F O C U S Q U A L I T Y E X P E R I E N C E
Categorizing Requirements
• Business requirements
– Business area scope (context level dataflow
diagram)
– Business data requirements (logical ERD)
– Essential business processes (decomp,
structured text)
– Business rules (table)

F O C U S Q U A L I T Y E X P E R I E N C E
Categorizing Requirements
• Functional requirements
– Design area scope (Use Case diagram)
– Data requirements (ERD with attribute
characteristics)
– Use Case descriptions
– Workflow diagrams
– Business rules (table)
– Quality of service requirements (i.e. security,
performance)

F O C U S Q U A L I T Y E X P E R I E N C E
Categorizing Requirements
• Technical requirements
– Design architecture diagrams
– Database design
– SQL query specifications
– Business rules engine specification

F O C U S Q U A L I T Y E X P E R I E N C E
Guidelines for Categorizing
It’s all about communication!
• Who provides the requirements?
• Who reviews the requirements?
• Who approves the requirements?
• Who uses the requirements?

Any system is better than no system!

F O C U S Q U A L I T Y E X P E R I E N C E
Conclusions/recommendations
• BAs must be aware that there are many options
for presenting requirements

• Experience will help guide decisions about the


best presentation for each situation

• Focus on communication!!

• Conduct post implementation assessments and


record lessons learned

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Engg.

An approach to ensure that rigor is introduced


into requirements understanding and
documentation

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Engg. Process
Requirements Requirements Requirements Validation
Elicitation (1) Analysis (2) (Concurrent)

Requirements
Documentation (3)

Requirements
Management (4)

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Elicitation

• Articulating requirements
• Converting tacit knowledge to explicit knowledge
• Technique:
o Apprentice
o Observe
o Recount
o Enact

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Analysis

• S pecific
• M easurable
• A chievable
• R elevant • Req. Elicitation: Laundry list
of requirements
• T ime Framed
• Req. Analysis: Further filters
this list

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Documentation

• Functional Requirements- WHAT


What the system must do

• Non Functional Requirements- How


How well the system should perform

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Documentation

• Requirements Wording: <Actor> <Verb> <Noun>

• Requirements Priority
M
O
S
C
O
W
F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Validation

• Is a concurrent Exercise

• Sign Off (Intermediate & Final)

F O C U S Q U A L I T Y E X P E R I E N C E
Requirements Management

• Handling changes in requirements

• Traceability is Important

• Forward & Backward

F O C U S Q U A L I T Y E X P E R I E N C E

Вам также может понравиться