Transcript

Lecture 6Ch. 5: Investigation

SE3821 Software Requirements and SpecificationDr. Rob Hasker (based on slides by Dr. Brad Dennis)

2

Today’s Outline• Investigating the Business• Modeling• Engaging Stakeholders

4

Review• An adjacent system places some demand on or makes

some contribution to our work. This is a business event.• We use a WCD to help us identify adjacent systems

and to model the information flows. This is how we identify the business events.• How the work responds to this event is a Business Use

Case.

5

The Volere Process

• Investigating the work: understanding what the business is doing.• Can’t improve

without understanding what you’re improving!

• Today: trawling the business

6

The Volere Process

• Investigating the work: understanding what the business is doing.• Can’t improve

without understanding what you’re improving!

• Today: trawling the business

Why “trawling”?

7

The Volere Process

• Investigating the work: understanding what the business is doing.• Can’t improve

without understanding what you’re improving!

• Today: trawling the business

Why “trawling”?• Methodically

fishing for requirements!

8

The Volere Process

• Investigating the work: understanding what the business is doing.• Can’t improve

without understanding what you’re improving!

• Today: trawling the business

Why “trawling”?• Methodically

fishing for requirements!

Danger: potential time waste

9

The Volere Process

• Investigating the work: understanding what the business is doing.• Can’t improve

without understanding what you’re improving!

• Today: trawling the business

Why “trawling”?• Methodically

fishing for requirements!

Danger: potential time waste• Stay focused on work

that affects your product

10

Project types• Rabbit: essentially agile• Need to understand work context in agile as well!• Trawling: PO tool to identify needed information

•Horse: many stakeholders• Extensive use of apprenticeship, interviews, use

case workshops

• Elephant: very large number of stakeholders• “Formal” specification a must• High ceremony; lots of artifacts related to trawling

11

How do we investigate the business?• We have to engage the set of stakeholders that know

about the work that is currently being done.• When we engage stakeholders, it’s important to be

aware that they contain 3 “layers” of requirements.• The work they are consciously aware they do.• The work that has become habits and are no longer

consciously aware of.• The work as they wish it were done.

• The outputs of this engagement are models of how the work is being done.

12

What is your role?• Observe and learn the work. What are the stakeholders

doing and why are they doing it? (How-Now)• Be a good listener. You need to attentively listen and

understand the meaning behind the words they are using.• Interpret the work. You must evaluate and synthesize

what the stakeholders are reporting and distill it down to it’s essence. (What-Now)• Record the results in a stakeholder friendly way… an

understandable model. These models can be the common language for understanding the work. (BUC)

13

A Framework for Modeling• We use business events to anchor our modeling, one

business use case at a time.• We model what the work is doing not how it’s being

done.• The level of detail in our models is just enough to

understand what the work is doing.• The breadth of our models is sufficient to cover all the

work that might be relevant to the future product.• In a valid model the outputs should be derivable from

the inputs.• Your models should confirm your Work Context

Diagram.

14

A Framework for Modeling• It helps when investigating the work to consider certain

viewpoints.• How the work is currently being done.• The essence of what the work is doing.• Abstractly, what the future work should be doing.• How the future work will do what it’s supposed to do.

Raw Model

s

Distilled BUC

Enhanced BUC

PUC

Now Future

Now Future

WhatHow How

What

1

2 3

4

15

Brown Cow

• Method to define product use cases to develop

• Process: examine the project from four different viewpoints.

16

Brown Cow

Clockwise:• How-Now• Hence the name• Current implementation• Start here

• What-Now• Essence of current work

• Future-What• What we want

• Future-How• What needs to be implemented

17

Brown Cow

Clockwise:• How-Now• Hence the name• Current implementation• Start here

• What-Now• Essence of current work

• Future-What• What we want

• Future-How• What needs to be implemented

Why start here?• Maybe current

system not ideal, but contains information!

• Warning: timebox modeling effort

18

How do we record results?• During the How-Now work, you can use mind maps.

Taking an

order

Answer phone

Greet customer

Ask what they would like to order

“Hello my name is ____”

Confirm order

Take payment

Submit order toflorist to prepare

19

How do we record results?• You can build other types of models.

Phone Call

Answer phone Greet customer Take order Confirm order

Take paymentGive confirmation

Notify Florist

Record order

20

How do we record results?• You can build other types of models.

Customer Order taker

Order System

Orders

Gives order

Confirms order

Submits order

Stores order

21

What other things should we collect?• The desired outcome of the event. This shouldn’t be a

list of outputs, but what does the business want to achieve.• Any business rules. Business rules are prescriptions

that guide the day to day work.• Record the work as the stakeholder would desire it to

be like.• Record any exceptions to the work flow.• We synthesize these artifacts into scenarios.

22

Group Exercise

• Raise your hand if you currently work or recently did over the summer and are comfortable with standing in front of the class and being interviewed.• Let’s identify one business event. The task is for the

class to interview the stakeholder and model the current work and desired work. • We should list the outcome, any business rules, and

exceptions that you discover.• REMINDER: Take photo and collect an artifact

23

Review• Investigating the work environment• What’s the goal again?• How does the brown cow fit in?• Why bother modeling the system we’re getting rid of?• How long should we spend modeling?

• Ways to record results• Mind map• Data flow diagram• Pictures!


Recommended