Professional Documents
Culture Documents
What model can we use to help the user and developer UNDERSTAND the ff:?
The
goal of the requirement The interaction between the user and system How to know if the requirement is done (acceptance criteria)?
Students can reserve equipment online so that its more accessible to submit the requests.
10
Priority
will the user USE the system to accomplish the particular goal/task?
3. 4. 5. 6. 7. 8. 9.
Student views the reservation form. Student provides request details like equipment, date, time, and duration. Student submits the request. System validates the information provided. System presents the reservation request details. Student confirms the request information is accurate. System provides a tracking ID for the request. System sends the request to the person in charge for approval. System informs the user that the request has been submitted.
Provide
much work will you need to show sample screen for the interaction in previous slide? ^_^ Interface design is based on REQUIREMENTs. Sample screens may shift the focus on HOW instead of WHAT the software will do.
the specifications for the Approval of Requests. Step 1: Start with the story. Step 2: Describe the interaction. Step 3: Define the acceptance criteria.
Pair Work
Re-write
the requirements for Online English Tutoring System from last meeting. Use only one sheet.
CHALLENGE:
Front Page : User story Front Page : Interaction Back Page : Acceptance Criteria
Ambiguous
How
or
What
#2:
Shut off the pumps if the water level remains above 100 meters for 4 seconds. Mean water level? Standard interpretation Root mean square water level?
Ambiguous
The
danger is that ambiguity often goes UNDETECTED. After all, how can you figure out someone elses interpretation is different from yours? Requires special domain understanding or knowledge to detect the possible interpretations!
Low-Value / Unnecessary
What
The developer can get excited with solving the problems or meeting the needs of the client and thinks of features (read: extra). Developer finds that client is not using the feature! (GASP)
It
does not help at all with what the user needs. User can do what he needs without using the feature.
Low-Value/Unnecessary
How
Incomplete
Details
Incomplete
Example #2 (Problem) We arent making enough money from quarterly treatments. Our technicians are completely booked, but they spend at least three hours a day driving from job to job double the industry average. Our prices are competitive, and our costs are in-line with the industry. We need our technicians to perform more treatments per day. Spot checks of a few previous schedules revealed that travel time could be reduced by 70% if we reorganized the treatments to minimize travel time.
Incomplete
Example #2 Requirement We need software that determines the better routes for our technicians each day. The optimal route is the one that requires the minimum travel time between each location, and between the office and the first location. Our software must generate routes that are 50% better than our existing process. Our dispatcher will be able to use these routes to plan each technicians schedule for the day. Note: The dispatcher will communicate the daily schedule to each technician at the beginning of each shift.
Incomplete
Example #2 Analysis We have data. Prices and costs are reasonable, but profit is unacceptable. Technician efficiency is the identified culprit. Weve written a software requirement that should provide us with an improvement. Weve assessed the potential value (50% reduction in travel time) and validated that it is feasible (70% reduction for manual spot-checks). Weve even established critera for testability of the requirement (50% improvement over existing process we can use historical data to validate the software solution).
Incomplete
Example #2: Whats missing Additional research reveals that 80% of the time, the technicians have to return to the office to pick up more treatment chemicals because they didnt bring enough with them for the whole schedule, or they have to cancel the last job of the day to account for drive time to return left-over chemicals to the office. The technicians can not take the pesticides home with them, and try to avoid a return trip to the office at the end of the day. If they use up all of the chemicals, they can drive directly home from the last appointment.
Other problems
Unverifiable
Inconsistent
Impossible
Assignment #2
At the back: Reflection (Individual) Based on our discussions, what are the concerns (give the top 3) of requirement engineering? How is this different from your initial impression of writing software specifications? How do you find this phase? Do you like it? Why or why not?
Project Plan
Feb.
1, 2013 (6:00pm)
Feb.
2, 2013 (9:00pm)
References
http://www.agilemodeling.com/artifacts/user Story.htm http://www.extremeprogramming.org/rules/u serstories.html http://www.xpexchange.net/en/intro/userStor y.html http://services.natureserve.org/member/userS tory.htm D. Pilone and R. Miles: Head First Software Development.OReilly, 2008