570 likes | 605 Views
Requirements Analysis. What, not How!. Reference. Exploring Requirements, Quality BEFORE Design, by Donald C. Gause & Gerald M. Weinberg Dorset House Publishing, 1989 ISBN: 0-932633-13-7. It’s All About Reducing Ambiguity. Consider the following requirement:
E N D
Requirements Analysis What, not How!
Reference • Exploring Requirements, Quality BEFORE Design, by Donald C. Gause & Gerald M. Weinberg • Dorset House Publishing, 1989 • ISBN: 0-932633-13-7
It’s All About Reducing Ambiguity • Consider the following requirement: • “Create a means for protecting a small group of human beings from the hostile elements of their environment.” • Does this mean: • An Igloo • A Bavarian Castle • A Space Station
Other Problems in This Example • Missing Requirements • No properties of materials specified. • Nothing is said about physical environment. • Little is said about functions. • Ambiguous Words • Small?? • Group?? • Structure?? (Actually not mentioned!!, Only means.) If we use the term structure we assume a solution!
A Picture Of Requirements What we want What we don’t want The Universe of Everything That’s Possible
Exploring Requirements Tools
A Problem With Direct Questions! • When you ask questions about a requirement, you are building a decision tree. • Take out a sheet of paper and number one side 1 and the other side 2. • On side 2 at the top of the page, put the following requirement: Design A Transportation Device.
Consider The Following Question • How many points were in the star that was used as a focus slide for this representation?
Questions(number these on side 1) • What do you think the answer is to the question posed on the previous slide?
Questions(number these on side 1) • What do you think the answer is to the question posed on the previous slide? • With 100 people attending the seminar, how many different answers did the participants write down as their first-impression answer to the question?
Questions(number these on side 1) • What do you think the answer is to the question posed on the previous slide? • With 100 people attending the seminar, how many different answers did the participants write down as their first-impression answer to the question? • What factors do you think are responsible for the differences among answers?
Questions (number these on side 1) • What do you think the answer is to the question posed on the previous slide? • With 100 people attending the seminar, how many different answers did the participants write down as their first-impression answer to the question? • What factors do you think are responsible for the differences among answers? • Write down, verbatim to the best of your ability, the question that you think you answered in question 1.
Results (clumped answers) 75 Not to scale. 12 4 3 3 2 1 ∞ 0-2 5-9 10-12 13-16 21-24 29-32
Discussion? • 0 – 2 : 4 • 5 – 9 : 75 • 10 – 12 : 1 • 13 – 16: 12 • 21 – 24: 2 • 29 – 32 : 3 • Infinity : 3
Now! • Does the previous discussion prompt you to change your answer to the “number of points” question?
Now! • Does the previous discussion prompt you to change your answer to the “number of points” question? • In the test: • 0-2 went up to 10. • 5-9 went down to 65. • 13-16 went up a couple. • Infinity went up a couple.
Sources Of Experimental Error • Observational and recall errors. • Interpretation errors. • Read some examples of the question. • The actual question was: How many points were in the star that was used as a focus slide for this representation?
Back To Direct Questions • On side 2, you have a requirement. What do you think the manufacturing cost would be for the solution to this requirement? (Write your first estimate below the requirement.) • What are some of your estimates? • Now, let’s ask some direct questions.
Question 1 • Designer: When is the solution needed?
Question 1 • Designer: When is the solution needed? • Client: Within eighteen months.
Question 2 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported?
Question 2 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported? • Client: People.
Question 3 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported? • Client: People. • Designer: How many people are to be transported at one time?
Question 3 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported? • Client: People. • Designer: How many people are to be transported at one time? • Client: 1
Question 4 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported? • Client: People. • Designer: How many people are to be transported at one time? • Client: 1 • Designer: How is the device to be powered?
Question 4 • Designer: When is the solution needed? • Client: Within eighteen months. • Designer: What is to be transported? • Client: People. • Designer: How many people are to be transported at one time? • Client: 1 • Designer: How is the device to be powered? • Client: Only by the person being transported and natural forces that are readily available. It is to be “passenger-powered”.
Question 5 • Designer: Over what kind of surface or terrain is the device to travel?
Question 5 • Designer: Over what kind of surface or terrain is the device to travel? • Client: It is to provide transportation over a very hard, flat surface.
Question 6 • Designer: Over what kind of surface or terrain is the device to travel? • Client: It is to provide transportation over a very hard, flat surface. • Designer: How far is the person to be transported?
Question 6 • Designer: Over what kind of surface or terrain is the device to travel? • Client: It is to provide transportation over a very hard, flat surface. • Designer: How far is the person to be transported? • Client: Up to 1.2 miles.
Question 7 • Designer: Over what kind of surface or terrain is the device to travel? • Client: It is to provide transportation over a very hard, flat surface. • Designer: How far is the person to be transported? • Client: Up to 1.2 miles. • Designer: How fast must the device travel?
Question 7 • Designer: Over what kind of surface or terrain is the device to travel? • Client: It is to provide transportation over a very hard, flat surface. • Designer: How far is the person to be transported? • Client: Up to 1.2 miles. • Designer: How fast must the device travel? • Client: At least one mile every four hours.
Question 8 • Designer: How reliable must the device be?
Question 8 • Designer: How reliable must the device be? • Client: It may not have more than one failure per thousand miles of operation, and that failure may not be one that endangers the passenger.
Question 9 • Designer: How reliable must the device be? • Client: It may not have more than one failure per thousand miles of operation, and that failure may not be one that endangers the passenger. • Designer: Are there any cost limitations?
Question 9 • Designer: How reliable must the device be? • Client: It may not have more than one failure per thousand miles of operation, and that failure may not be one that endangers the passenger. • Designer: Are there any cost limitations? • Client: The device must be designed, developed, and manufactured so that it will cost less than three hundred Swiss francs each time the device is used.
Estimate the manufacturing cost again. • Add this estimate below the previous one. • What are some of your estimates?
Estimates From An Experiment • First manufacturing cost estimates ranged from $10 to $15 billion (with a b). • Second manufacturing cost estimates ranged from $20 to $10,000. • There were two clusters, called “Little Wheels” and “Big Wheels”. • These designer’s were reasonably confident that they had a grasp of the situation. Lets say our company was given the green light.
The “Solution?” • We designed and manufactured a compact, lightweight, folding tricycle that can be carried in a pedestrian’s hip pocket. • Profitably sold for not more than $49.95 with a sales volume of 100,000 per year for 5 years. • What a slick solution! • ???
Surprise! • At a presentation, our client said, “I’m delighted with the portability of the device, but could you explain how it can be used to rescue a climber on the north face of Eiger Mountain?” • Whoops!?! • Evidently we missed something.
Client’s Clarification • Our clients explain, what they had in mind was a mountaineer’s rescue device, which is understandable since Grindelwald and Wengen base their economies on tourism in general and mountain climbing in particular. To keep tourism booming and to make sure climbers return, the villages’ official guides must rescue stranded climbers.
Context-Free Questions • High-level questions that can be posed early in a project to obtain information about global properties of the design problem and potential solutions. • Context free questions are completely appropriate for any product to be designed, whether it’s an automobile, airplane, ship, house, jingle, light bulb, or a trek in Nepal.
Example Context Free QuestionsAbout Process • Who is the client for the project? • What is a highly successful solution really worth to this client? • What is the real reason for wanting to solve this problem? • Should we use a single design team, or more than one? Who should be on the team(s)? • How much time do we have for this project? • What is the trade-off between time and value?
Example Context Free QuestionsAbout Product • What problem does this system solve? • What problems could this system create? • What environment is this system likely to encounter? • What kind of precision is required or desired in the product?
Example Metaquestions • Am I asking you too many questions? • Do my questions seem relevant? • Are you the right person to answer these questions? Are your answers official? • (The accounts payable story reprise.) • Is there anyone else who can give me useful answers? • Is there someplace I can go to see the environment in which this product will be used?
Example Metaquestions (cont.) • Is there anything else I should be asking you? • Is there anything you want to ask me? • May I return or call you with more questions later, in case I don’t cover everything this time?
“Mary Had A Little Lamb” Heuristic • Take a statement and emphasize each word one by one, and then in combinations. • Mary had a little lamb. • (It was mary’s lamb, not Tom’s or Sam’s.) • Mary had a little lamb. • (She no longer has the lamb.) • Mary had a little lamb. • (She no longer has the lamb.)
(cont.) • Mary had a little lamb. • (It really was surprisingly small.) • Mary had a little lamb. • (She didn’t have a dog, cat, goat, or bird.) • Mary had a little lamb. • (John still has his little lamb.) • … Mary had a little lamb. • (As contrasted witih Pallas, who still has four large turtles.)
Importance Of the Project’s Name • The right name increases possibilities. • The wrong name stifles possibilities. • One word is worth a thousand pictures. • The Naming Heuristic • Propose a name. • Offer three reasons why the name is NOT adequate. • Propose another name that eliminates these problems. • Don’t go on forever!