Gathering Information and Use Case Scenarios
Choices to get information Need to understand the current (“as is”) system, identify improvements, and develop the to-be system. How? Interviews Joint Application Design – “JAD” Questionnaires Secondary Sources (document analysis) Observations
Interviews -- Five Basic Steps Selecting Interviewees Designing Interview Questions Preparing for the Interview Conducting the Interview Post-Interview Follow-up
Interview Preparation Steps Prepare General Interview Plan List of Question Anticipated Answers and Follow-Ups Confirm Areas of Knowledge Set Priorities in Case of Time Shortage Prepare the Interviewee Schedule Inform of Reason for Interview Inform of Areas of Discussion
Conducting the Interview Appear professional and unbiased Record all information Check on organizational policy regarding tape recording Be sure you understand all issues and terms Separate facts from opinions Give interviewee time to ask questions Be sure to thank the interviewee End on time
JAD Key Ideas Allows project managers, users, and developers to work together May reduce scope creep by 50% Avoids requirements being too specific or too vague
The JAD Session Tend to last 5 to 10 days over a three week period Prepare questions as with interviews Formal agenda and groundrules Facilitator activities Keep session on track Help with technical terms and jargon Record group input Help resolve issues Post-session follow-up
Questionnaire Steps Selecting participants Using samples of the population Designing the questionnaire Careful question selection Administering the questionnaire Working to get good response rate Questionnaire follow-up Send results to participants
Good Questionnaire Design Begin with non-threatening and interesting questions Group items into logically coherent sections Do not put important items at the very end of the questionnaire Do not crowd a page with too many items Avoid abbreviations Avoid biased or suggestive items or terms Number questions to avoid confusion Pretest the questionnaire to identify confusing questions Provide anonymity to respondents
Document Analysis Provides clues about existing “as-is” system Typical documents Forms Reports Policy manuals Look for user additions to forms Look for unused form elements
Observation Users/managers often don’t remember everything they do Checks validity of information gathered other ways Behaviors change when people are watched Careful not to ignore periodic activities Weekly … Monthly … Annual
Selecting the Appropriate Techniques Interviews JAD Questionnaires Document Observation Analysis Type of As-Is As-Is As-Is As-Is As-Is Information Improve. Improve. Improve. To-Be To-Be Depth of High High Medium Low Low Information Breadth of Low Medium High High Low Integration Low High Low Low Low of Info. User Medium High Low Low Low Involvement Cost Medium Low- Low Low Low- Medium Medium
Creating Use Cases
Elements of a Use Case Trigger -- event that causes the scenario to begin External trigger Temporal trigger All possible inputs and outputs Individual steps Show sequential order Show conditional steps
Steps for building Use Cases Identify the use cases (think “3 to 9”). Identify the major steps within each use case (think “3 to 9”). Identify elements within steps. Confirm the use case.
Ex.: on-line university registration (exercise D, pg. 167) The system should enable the staff of each academic department to examine the course offered by their department, add and remove course, and change the information about them (e.g., the maximum number of students). It should permit students to examine currently available courses, add and drop courses to and from their schedules, and examine the course for which they are enrolled. Department staff should be able to print a variety of reports about the courses and the students enrolled in them. They system should ensure that no student takes too many course and that students who have any unpaid fees are not permitted to register. (Assume that a fees data store is maintained by the university's financial office that the registration system accesses but does not change.)
Use Case Name: Maintain department course offerings ID Number: _1_ Short Description: This describes how department staff reviews course offerings, adds new courses, deletes existing courses or changes existing course information. Trigger: Departments must prepare upcoming course offerings. Type: External / Temporal Major Inputs: Description Source Course offering changes Department Staff Course offerings Course offering file ___________________________ ___________ Major Outputs: Description Destination Updates course offerings Course offering file Course offering list Department staff ________________ _________ Major Steps Performed 1. Department staff requests course offering list for the department. List of course offerings is generated. 2. New course information is entered. 3. Courses to delete are entered. 4. Course modifications are entered. Information for Steps Course offering list request Department identifier New course information Course offering file Course number to delete Course number to modify Course changes
Use Case Name: Maintain student enrollments ID Number: _2_ Short Description: This describes how students review listing of courses available for enrollment, add and remove courses from their schedules, and review their schedules. Trigger: Student needs to enroll in courses. Type: External / Temporal Major Inputs: Description Source Available course request Student Available courses Available course file Course enrollment request Student Fee payment status Fees file ___________________________ ___________ Major Outputs: Description Destination Available course list Student Student enrollment Enrollment file Student schedule Student ________________ _________ Major Steps Performed 1. Student requests list of available courses. List of available courses is generated. 2. Student adds course to current schedule. Fee payment status is checked and total hours is checked. If OK, course is added to student schedule. 3. Student removes course from schedule. 4. Student reviews current scheduled courses. Information for Steps Available course request Available course list Course ID Enrollment file Fees file Available course file
Use Case Name: Course enrollment reports ID Number: _3_ Short Description: This describes how department staff prints various reports on courses and enrollments. Trigger: Department staff needs information on courses and course enrollments. Type: External / Temporal Major Inputs: Description Source Report request Staff Course information Course offerings Enrollment information Enrollments ___________________________ ___________ Major Outputs: Description Destination Report requested Staff ________________ _________ Major Steps Performed 1. Staff enters report request. 2. Requested report is generated. Information for Steps Report type Course offerings Enrollments
Ex.: real estate (exercise E, pg. 167) A Real Estate Inc. (AREI) sells houses. People who want to sell their houses sign a contract with AREI and provide information on their house. This information is kept in a database by AREI and a subset of this information is sent to the citywide multiple-listing service used by all real estate agents. AREI works with two types of potential buyers. Some buyers have an interest in one specific house. In this case, AREI prints information from its database, which the real estate agent uses to help show the house to the buyer (a process beyond the scope of the system to be modeled). Other buyers seek AREI’s advice in finding a house that meets their needs. In this case, the buyer completes a buyer information form that is entered into a buyer database, and AREI real estate agents use its information to search AREI’s database and the multiple-listing service for houses that meet their needs. The results of these searches are printed and used to help the real estate agent show houses to the buyer.
Use Case Name: Maintain house seller information ID Number: _1_ Short Description: This describes how house sellers enter into contract to sell and provide information on house to sell. Trigger: House seller wishes to sell house. Type: External / Temporal Major Inputs: Description Source Sales Contract Seller House information Seller ___________________________ ___________ Major Outputs: Description Destination Sales Contract Contract file House information Offered Houses file House information Multiple listings file ________________ _________ Major Steps Performed 1. Seller signs contract and provides house information. 2. Offered House database is updated with new listing information. 3. Data on new listing is transmitted to Multiple Listings file. Information for Steps Sales contract House information Offered houses file
Use Case Name: Provide buyers required information ID Number: _2_ Short Description: This describes how buyers request and receive information on offered houses. Trigger: Buyers request information on available houses. Type: External / Temporal Major Inputs: Description Source Buyer information form Buyer House information request Buyer House information Offered houses file House information Multiple listings file ___________________________ ___________ Major Outputs: Description Destination House information Buyer Buyer information Buyer file ________________ _________ Major Steps Performed 1. If buyer requests information on a specific house, retrieve that information from the offered house file. 2. If buyer wants to search for several prospective houses, obtain a buyer information form from buyer. Search offered houses file and Multiple Listing file for houses matching buyers specifications and provide house information to buyer. Information for Steps Offered house file Buyer information form Buyer file Offered houses file Multiple listings file