Content Chapter 6 Determining System Requirements 9 Requirements determination 9 Data collection methods 9 © 2011 by Prentice Hall: J.A.Hoffer et.al., Modern Systems Analysis & Design, 6th Edition 9 interview 9 observation & document analysis 9 Joint Application Design (JAD) 9 Prototype 9 Questionnaire Explain how computing can support requirements determination 1/43 1. Performing Requirements Determination 2/43 1.1 Process of Determining Requirements Systems Analyst Characteristics for Successful Requirements Determination Impertinence: Impartiality: find best solution Relaxing constraints: assume every thing is possible Attention to details: find all facts Reframing: 3/43 question everything new create process 4/43 2. Traditional Methods for Determining Requirements 1.2 Deliverables and Outcomes Deliverables for Requirements Determination Interviewing (individuals & groups) Observing workers Studying business documents Questionnaire * From interviews and observations - interview transcripts, observation notes, meeting minutes From existing written documents - mission and strategy statements, business forms, procedure manuals, job descriptions, training manuals, system documentation, flowcharts From computerized sources – Joint Application Design session results, CASE repositories, reports from existing systems, displays and reports from system prototype 5/43 6/43 2.1 Interviewing and Listening Guidelines for Effective Interviewing One Interview Guideline of the primary ways analysts gather information about an IS project Interview guide is a document for developing, planning and conducting an interview Plan the interview Prepare interviewee: appointment, priming questions Prepare agenda, checklist, questions 7/43 Listen carefully and take notes (tape record if permitted) Review notes within that day. Be neutral Seek diverse views 8/43 Choosing Interview Questions Interview Outline Each question in an interview guide can include verbal & non-verbal information Open-ended questions: questions that have no prespecified answers Closed-ended questions: questions that ask those responding to choose from among a set of specified responses T/F Multiple choice Rating a response Ranking items 9/43 10/43 2.2 Interviewing Groups Interviewing Groups (Cont.) Drawbacks Interview to individual interviews Contradictions several key people together Advantages and inconsistencies between interviewees Follow-up More effective use of time Can hear agreements and disagreements at once Opportunity for synergies discussions are time consuming New interviews may reveal new questions that require additional interviews with those interviewed earlier Disadvantages More difficult to schedule than individual interviews 11/43 12/43 2.3 Directly Observing Users Nominal Group Technique (NGT) A facilitated process that supports idea generation by groups Process Direct Observation Watching users do their jobs Members come together as a group, but initially work separately Each person writes ideas Facilitator reads ideas out loud, and they are written on a blackboard or flipchart Group openly discusses the ideas for clarification Ideas are prioritized, combined, selected, reduced Obtaining more firsthand and objective measures of employee interaction with IS (negative) Can cause people to change their normal operating behavior Time-consuming NGT exercise used to complement group meetings or as part of JAD effort and limited time to observe 13/43 2.4 Analyzing Procedures and Other Documents Types of information to be discovered Problems Document Analysis Review of existing business documents Can give a historical and “formal” view of system requirements 14/43 Useful document: work procedure/ form / report For an individual or work group Describes how a particular job or task is performed Includes data and information used and created in the process 15/43 with existing system Opportunity to meet new needs Organizational direction Titles and names of key individuals Values of organization Special information processing circumstances Reasons for current system design Rules for processing data 16/43 Analyzing Procedures and Other Documents (Cont.) a) User document: a written work procedure Potential Problems with Procedure Documents May involve duplication of effort May have missing procedures May be out of date May contradict information obtained through interviews 17/43 18/43 Analyzing Procedures and Other Documents (Cont.) b) User document: a business form Formal Systems the official way a system works as described in organizational documentation (i.e. work procedure) Informal Systems the way a system actually works (i.e. interviews, observations) 19/43 20/43 Comparison of Observation and Document Analysis c) User document: a report 21/43 3. Contemporary Methods for Determining System Requirements 22/43 3.1 Joint Application Design (JAD) Joint Application Design (JAD) Intensive group-oriented requirements determination technique Team members meet in isolation for an extended period of time Highly focused Resource intensive Brings together key users, managers, and systems analysts Purpose: collect system requirements simultaneously from key people Conducted off-site Group Support Systems Facilitate sharing of ideas and voicing of opinions about system requirements CASE/ Prototype 23/43 24/43 JAD (Cont.) JAD (Cont.) JAD Participants: Session Users: Leader: facilitates group process. Documentation active, speaking participants Managers: detailing existing system (AS-IS) Features of proposed system (TO-BE) active, speaking participants Sponsor: high-level champion, limited participation. Systems Scribe: IS End Result Analysts: should mostly listen. record session activities. Staff: should mostly listen. 25/43 3.3 Using Prototyping during Requirements Determination 3.2 Upper CASE Tools during JAD Used to analyze existing systems Help discover requirements to meet changing business conditions 26/43 Iterative development process Elementary working version of system is built Quickly converts requirements to working version of system Enables analysts to enter system models directly into CASE during the JAD session Screen designs and prototyping can be done during JAD and shown to users 27/43 Refine understanding of system requirements in concrete terms Once the user sees requirements converted to system, will ask for modifications or will generate additional requests 28/43 Using Prototyping During Requirements Determination (Cont.) Using Prototyping During Requirements Determination (Cont.) Most useful when User requests are not clear Few users are involved in the system Designs Tendency Difficult are complex and require concrete form to avoid formal documentation to adapt to more general user audience Sharing data with other systems is often not considered History of communication problems between analysts and users Tools Drawbacks Systems Development Life Cycle (SDLC) checks are often bypassed are readily available to build prototype 29/43 4. Radical Methods for Determining System Requirements 4.1 Identifying Processes to Reengineer Business Process Reengineering (BPR) Key business processes Structured, measured set of activities designed to produce specific output for a particular customer or market Search for, and implementation of radical change in business processes to achieve breakthrough improvements in products and services 30/43 Focused BPR Goals on customers and outcome Reorganize complete flow of data in major sections of an organization Eliminate unnecessary steps / Combine steps Become more responsive to future change 31/43 32/43 Disruptive Technologies (Cont.) 4.2 Disruptive Technologies Technologies that enable the breaking of longheld business rules that inhibit organizations from making radical business changes Information technologies must be applied to radically improve business processes 33/43 5. Requirements Determination using Agile Methodologies 34/43 5.1 Continual User Involvement Continual user involvement Replace traditional SDLC waterfall with iterative analyze – design – code – test cycle Agile usage-centered design Focuses on user goals, roles, and tasks Planning Game from eXtreme programming Based on eXtreme programming Exploration, steering, commitment FIGURE 6-11 The iterative analysis–design–code–test cycle 35/43 36/43 5.3 Planning Game from eXtreme Programming 5.2 Agile Usage-Centered Design: Steps Gather a group of people: users, programmers, analysts, testers, facilitator Document complaints of current system Determine important user roles Determine, prioritize, and describe tasks for each user role Group similar tasks into interaction contexts Give description of each interaction context Associate each interaction context with a user interface for the system, and prototype the interaction context Step through and modify the prototype FIGURE 6-12 eXtreme Programming’s Planning Game 37/43 6 e-Commerce Applications: Determining System Requirements 38/43 Summary 9 Determining system requirements for Pine Valley furniture’s Webstore System layout and navigation characteristics Webstore and site management system capabilities Customer and inventory information System 9 Observing workers and business documents 9 Questionnaire 9 Interviews 9 Prototyping 9 Joint Application Design 9 Explain how computing can provide support for requirements determination 9 Understand how requirements determination techniques apply to the development of e-Commerce applications prototype evolution 39/43 Requirements Elicitation 40/43 Quiz Questions & Answers 1 _________________________ is the search for, and implementation of, radical change in business processes to achieve breakthrough improvements in products and services. 2 __________________ are questions in interviews that have no pre-specified answers. 3 The structured, measured set of activities designed to produce a specific output for a particular customer or market is called _________________ 41/43 Exercise 1 Describe traditional techniques for collecting information during analysis. When might one be better than another? 2 What is JAD? How is it better than traditional information gathering techniques? What is its weaknesses? 3 Describe how prototyping can be used during requirements determination. How is it better or worse than traditional methods? 43/43 42/43