Trawling for Knowledge - UIC

Transcription

Trawling for Knowledge - UIC
1/28/2016
Trawling for Knowledge
and Requirements
John T. Bell
Department of Computer Science
University of Illinois, Chicago
based on material from chapter 5, 6, and 7 of “Mastering the
Requirements Process”, 3rd e, by Robertson and Robertson.
Overview
• This material is all about trawling through the
business, methodically picking out information to
better understand the business.
• These techniques are also useful for gathering
potential requirements, possibly at the same time.
• Rabbit, horse, and elephant projects all need to
gather knowledge, though rabbits may not spend
a lot of time documenting it.
• Understanding the current business should be a
quick process. Don’t spend too much time on it.
2
1
1/28/2016
Trawling in Context
3
Summary of Techniques
• Business events
• Current situation
modeling
• Apprenticing
• Structures & patterns
• Interviewing
• Essence
• Business use case
workshops
• Creativity workshops
•
•
•
•
•
•
•
•
•
•
Brainstorming
Personas
Mind mapping
Wikis
Scenarios
Low-fidelity prototypes
High-fidelity prototypes
Document archaeology
Family therapy
Murder Book
4
2
1/28/2016
Recommendation: Carry a pack of blank
snow cards while trawling for knowledge:
5
Business Events
• Business use cases are the business’s
responses to externally initiated business
events.
• As discussed previously, business events are a
useful tool for partitioning the business into
manageable chunks.
6
3
1/28/2016
The 4 Views of the Brown Cow Model
7
Current Situation Modeling
• Modeling the current
situation ( how now )
helps to understand it.
• Flaws in the model
identify areas where more
questions need to be
asked. ( Figure out what
you don’t know. )
• Verify your understanding.
8
4
1/28/2016
Apprenticing
• Work on site as a volunteer / employee,
getting trained from current users.
• Covers details not brought up in discussions.
• Try to learn why tasks are done they way they
are – Reasons may be lost or out of date.
• a.k.a. Job Shadowing.
9
Business Use Case Workshops
• Stakeholders gather to review BUC:
10
5
1/28/2016
Review
When writing up a requirement, what is the relationship between customer
satisfaction and customer dissatisfaction?
A. Customer satisfaction and dissatisfaction are determined via product
testing, and are not a part of the requirements documentation process.
B. Customer satisfaction indicates how happy the customer will be if the
requirement is met, while dissatisfaction indicates how unhappy they will
be if the requirement is not met.
C. One is the negative of the other.
D. They are complimentary numbers which should add to 100%.
E. They are synonyms - The two terms can be used interchangably.
11
Mind Mapping
12
6
1/28/2016
Document Archaeology
• Archaeology – Learning about people by
studying their things.
13
Personas
Wrong
Right
14
7
1/28/2016
Interviewing
• Ask, listen, and feedback your understanding.
• Build models ( e.g. activity diagrams, etc. )
and have interviewee correct them.
– Ahead of time or on the fly.
• Use stakeholders terminology & artifacts.
• Prepare questions and/or other materials
ahead of time. E.g. scenarios, models,
mockups, etc.
16
8
1/28/2016
Quick and Dirty Process Modeling . . .
• Useful for rapid communication of
understanding.
17
. . . Possibly with post-its and a wall:
18
9
1/28/2016
Brainstorming
• Synergy produces ideas.
• Wide variety of people.
• No judgment, criticism,
debate, or filtering.
• Write everything down.
• Keep it fun & lively.
• Seed from dictionary.
• Bad ideas inspire good.
• Mix, match, & merge.
19
Creativity / Innovation Workshops
• Used to generate lots of new ideas.
• Suggested approach:
1.
2.
3.
4.
5.
6.
Set the scope of the innovation.
Partition scope using business use cases.
Plan workshop, & techniques to be used.
Record everything. Do not attempt to assess.
Feed results back to participants afterwards.
Incubate. Let the ideas develop over time.
20
10
1/28/2016
Review
Which of the following requirements trawling
techniques involves looking through a client’s bulletin
boards and trash cans to learn more about how the
client’s business operates now?
A. Apprenticing
B. Business Inspection
C. Current situation modeling
D.Document archaeology
E. Interviewing
21
Essence
• Working “above the line” on the brown cow
model, to determine what is really needed.
• “If a requirement contains the means of
implementation, then it is a solution, not a
requirement.”
– Wrong: “The product shall beep and put a flashing
message on the screen if a weather station fails to
transmit readings.”
– Right: “The product shall alert the repair crew when a
weather station fails to transmit its readings.”
• The analyst should not tie the developers hands.
22
11
1/28/2016
Structures and Patterns
• Useful for reusing reqs from past projects.
23
Wikis, Blogs, Discussion Forums
• Especially useful for large projects with many
far-flung stakeholders.
• Most effective with technically savvy
stakeholders with enough interest to speak
up.
– Customers of previous products.
– Beta testers.
24
12
1/28/2016
Scenarios
• Useful for telling a story of how a business or
product operates.
• Consider “what if” scenarios to explore if
constraints were removed or rules were
broken. ( What if there were no gravity? )
• Consider “negative scenarios” to explore case
of accidental or intentional misuse of the
product.
25
Low-Fidelity Prototypes ( Sketches )
• Focuses on functionality, not appearance.
26
13
1/28/2016
High-Fidelity Prototypes
• Generated with SW to look like a finished product.
• Useful for modeling the system and for HCI issues.
27
Family Therapy
• Useful for getting stakeholders to see others’
views.
“Family therapists do not set out to make
people agree. Instead, they aim to make it
possible for people to hear and get an
understanding of other individuals’
positions.”
- Roberston & Robertson, Chapter 5
28
14
1/28/2016
The Murder Book
• Collect every scrap of paper generated in a big
binder ( or more ) for later review.
• Alternate: Collect every electronic document
in a directory.
29
Choosing the Right Technique
Consider:
• Stakeholders’ familiarity with the methods.
• Geography of stakeholder distribution.
• Need to maintain legacy components.
• Level of abstraction desired or possible.
• Knowledge – Is the domain concrete or
abstract?
30
15
1/28/2016
Summary of Techniques
•
•
•
•
•
•
•
•
•
Business events
Current situation modeling
Apprenticing
Structures & patterns
Interviewing
Essence
Business use case workshops
Creativity workshops
Brainstorming
•
•
•
•
•
•
•
•
•
Personas
Mind mapping
Wikis
Scenarios
Low-fidelity prototypes
High-fidelity prototypes
Document archaeology
Family therapy
Murder Book
31
Class Exercise
1. Based on the list from the previous slide,
select your top 4 choices, numbered 1 to 4.
2. For each one, write a sentence or two about
how you would use it for this term’s project.
3. Compare your list with the rest of your
group.
4. Share your most common matches with the
class.
32
16
1/28/2016
Opinion Poll
Which of these 5 methods would be your top
choice?
A. Current situation modeling
B. Apprenticing
C. Interviewing
D. Business use case workshops
E. Creativity workshops
33
Opinion Poll 2
Which of these 5 methods would be your top
choice?
A. Brainstorming
B. Personas
C. Mind mapping
D. Wikis
E. Scenarios
34
17
1/28/2016
Opinion Poll 3
Which of these 5 methods would be your top
choice?
A. Low-fidelity prototypes
B. High-fidelity prototypes
C. Document archaeology
D. Family therapy
E. Murder Book
35
Review
What is the term for an imaginary stakeholder, documented in
full detail and given a name and a personality, who represents
real stakeholder(s) who cannot provide direct input to the
development process?
A.
B.
C.
D.
E.
Mannequin
Persona
Proxy
Representative
Surrogate
36
18