Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lesson 17 Requirements Discovery

Similar presentations


Presentation on theme: "Lesson 17 Requirements Discovery"— Presentation transcript:

1 Lesson 17 Requirements Discovery
Define system requirements and differentiate between functional and nonfunctional requirements. Understand the activity of problem analysis and be able to create an Ishikawa (fishbone) diagram to aid in problem solving. Understand the concept of requirements management. Identify seven fact-finding techniques and characterize the advantages and disadvantages of each. Chapter 6 objectives.

2 Lesson Map No additional notes

3 Introduction to Requirements Discovery
Requirements discovery includes those techniques to be used by systems analysts to identify or extract system problems and solution requirements from the user community. Problem analysis is the activity of identifying the problem, understanding the problem (including causes and effects), and understanding any constraints that may limit the solution. Teaching Notes This chapter focuses on the techniques and activities for eliciting system requirements as well as how to properly validate and document requirements. The authors have placed an emphasis on this chapter because recent studies have shown that as many as 80% of all system development failures can be traced back to problems with requirements.

4 Introduction to Requirements Discovery
A system requirement (also called a business requirement) is a description of the needs and desires for an information system. A requirement may describe functions, features (attributes), and constraints. No additional notes.

5 Types of Requirements A functional requirement is a function or feature that must be included in an information system in order to satisfy the business need and be acceptable to the users. A nonfunctional requirement is a description of the features, characteristics, and attributes of the system as well as any constraints that may limit the boundaries of the proposed solution. Teaching Notes A functional requirement is an action of the system and usually is written using an action verb phrase. For example: ·         The system should process a checking account deposit ·         The system should calculate the GPA for a student ·         The system should capture the account holder identification information Examples of nonfunctional requirements. ·         be user friendly ·         be able to accommodate users at different physical locations Teaching Tips Have students give examples of different types of requirements and classify this as functional versus nonfunctional.

6 Types of Nonfunctional Requirements
operate, as well as the type and degree of security that must be provided. happen? increase profits. What are the budgetary limits? handling (backups, offsite storage, etc.) of the data? Performance Information Control (and Security) Requirement Type Explanation Performance requirements represent the performance the system is required to exhibit to meet the needs of users. What is the acceptable throughput rate? What is the acceptable response time? n requirements represent the information that is pertinent to the users in terms of content, timeliness, accuracy, and format. What are the necessary inputs and outputs? When must they What is the required data to be stored? How current must the information be? What are the interfaces to external systems? Economy requirements represent the need for the system to reduce costs or What are the areas of the system where costs must be reduced? How much should costs be reduced or profits be increased? What is the timetable for development? Control requirements represent the environment in which the system must Must access to the system or information be controlled? What are the privacy requirements? Does the criticality of the data necessitate the need for special Teaching Tips Review each category and have the students give additional examples. Teaching Notes Other classifications of requirements exist and are published by IEEE and in Military standards. We chose to use PIECES to be consistent and reinforce the theme of the textbook.

7 Types of Nonfunctional Requirements (concluded)
Requirement Type Explanation Efficiency Efficiency requirements represent the systems ability to produce outputs with minimal waste. Are there duplicate steps in the process that must be eliminated? Are there ways to reduce waste in the way the system uses it resources? Service Service requirements represent needs in order for the system to be reliable, flexible, and expandable. Who will use the system and where are they located? Will there be different types of users? What are the appropriate human factors? What training devices and training materials are to be included in the system? What training devices and training materials are to be developed and maintained separately from the system, such as stand- alone computer based training (CBT) programs or databases? What are the reliability/availability requirements? Ho w should the system be packaged and distributed? What documentation is required? No additional notes.

8 An Ambiguous Requirements Statement
Create a means to transport a single individual from home to place of work. Management Interpretation I T User Teaching Tips Try to give other examples of a requirements statement that can be interpreted many ways. These can relate to homework assignments, current events, or normal household chores.

9 Results of Incorrect Requirements
The system may cost more than projected. The system may be delivered later than promised. The system may not meet the users’ expectations and that dissatisfaction may cause them not to use it. Once in production, the costs of maintaining and enhancing the system may be excessively high. The system may be unreliable and prone to errors and downtime. The reputation of the IT staff on the team is tarnished because any failure, regardless of who is at fault, will be perceived as a mistake by the team. No additional notes.

10 Relative Cost to Fix an Error
Phase in Which Found Cost Ratio Requirements 1 Design 3-6 Coding 10 Development Testing 15-40 Acceptance Testing 30-70 Operation Teaching Notes Table based on work by Barry W. Boehm, a noted expert in information technology economics. Based on these findings, an erroneous requirement that goes undetected and unfixed until the operation phase may cost 1,000 times more than if it were detected and fixed in the requirements phase!

11 Criteria to Define System Requirements
Consistent Complete Feasible Required Accurate Traceable Verifiable Teaching Notes The goal of the systems analyst is to define system requirements that meet the following criteria: ·         Consistent  the requirements are not conflicting or ambiguous. ·         Complete  the requirements describe all possible system inputs and responses. ·         Feasible  the requirements can be satisfied based on the available resources and constraints (feasibility analysis is covered in Chapter 9). ·         Required  the requirements are truly needed and fulfill the purpose of the system. ·         Accurate  the requirements are stated correctly. ·         Traceable  the requirements directly map to the functions and features of the system. ·         Verifiable  the requirements are defined so they can be demonstrated during testing.

12 The Process of Requirements Discovery
Problem discovery and analysis Requirements discovery Documenting and analyzing requirements Requirements management Teaching notes The process of requirements discovery consists of four activities.

13 Ishikawa Diagram The Ishikawa diagram is a graphical tool used to identify, explore, and depict problems and the causes and effects of those problems. It is often referred to as a cause-and-effect diagram or a fishbone diagram. Teaching Tips Explain concept to students. Try to do another example during lecture based on a well-known problem that most students experience – registration.

14 Requirements Discovery
Fact-finding is the formal process of using research, interviews, questionnaires, sampling, and other techniques to collect information about problems, requirements, and preferences. It is also called information gathering. Teaching Notes Stress that fact-finding is a technique that is used across the entire development cycle but it is extremely critical in the requirements analysis phase. Teaching Tips Be sure to discuss the role of ethics during the fact-finding activity.

15 Seven Fact-Finding Methods
Sampling of existing documentation, forms, and databases. Research and site visits. Observation of the work environment. Questionnaires. Interviews. Prototyping. Joint requirements planning (JRP). No additional notes.

16 Documenting and Analyzing Requirements
A requirements definition document should consist of the following. The functions and services the system should provide. Nonfunctional requirements including the system’s features, characteristics, and attributes. The constraints that restrict the development of the system or under which the system must operate. Information about other systems the system must interface with.     No additional notes.

17 Sample Requirements Definition Outline
Requirements Definition Report 1. Introduction 1.1 Purpose 1.2 Background 1.3 Scope 1.4 Definitions, Acronyms, and Abbreviations 1.5 References 2. General Project Description 2.1 System Objectives 3. Requirements and Constraints 3.1 Functional Requirements 3.2 Nonfunctional Requirements 4. Conclusion 4.1 Outstanding Issues Appendix (optional) Teaching Notes There is no standard name or format for this document. In fact, many organizations use different names such as requirements statement, requirements specification, requirements definition, functional specification, etc., and the format is usually tailored to that organization’s needs. For those companies that provide information systems and software to the U.S. government, the government requires that they use the format and naming conventions specified in their published standards document MIL-STD-498[1]. Many organizations have created their own standards adapted from MIL-STD-498 because of its thoroughness and because many people are already familiar with it. In this book we will use the term requirements definition document . [1] MIL-STD-498 is a standard that merges DOD-STD-2167A and DOD-STD-7935A to define a set of activities and documentation suitable for the development of both weapon systems and automated information systems.

18 Validating Requirements
Requirements validation is an activity that checks the requirements definition document for accuracy, completeness, consistency, and conformance to standards. Requirements Management Teaching Notes Requirements validation is performed on a final draft of the requirements definition document after all input has been solicited from the system owners and users. The purpose of this activity is for the systems analyst to ensure the requirements are written correctly. Teaching Tip Have students provide examples of errors the validation activity may identify. Requirements management is the process of managing change to the requirements.

19 Sampling Sampling is the process of collecting a representative sample of documents, forms, and records. Determining the sample size: Sample Size = 0.25 x (Certainty factor/Acceptable error)2 For a 90% certainty: Sample Size = 0.25(1.645/0.10)2 = 68 Teaching Tips Two versions of the sampling formula are provided in the textbook. The first uses a heuristic (.25) to calculate the sample size and the second replaces the (.25) with p(1-p) to reflect the knowledge of errors in the sample population. Review each with students and calculate various sample sizes using different levels of certainty.

20 Sampling Techniques Randomization is a sampling technique characterized as having no predetermined pattern or plan for selecting sample data. Stratification is a systematic sampling technique that attempts to reduce the variance of the estimates by spreading out the sampling—for example, choosing documents or records by formula—and by avoiding very high or low estimates. Teaching Notes For randomization you just randomly choose the number of sample items based on the sample size calculated. For computerized files, stratification sampling can be executed by writing a simple program. For instance, suppose invoices were stored in a database that had a volume of approximately 250,000. If the required sample size was 25, a program could be written that prints every 10,000th record (=250,000/25).

21 Observation Observation is a fact-finding technique wherein the systems analyst either participates in or watches a person perform activities to learn about the system. Advantages? Disadvantages? Work sampling is a fact-finding technique that involves a large number of observations taken at random intervals. Teaching Notes This technique is often used when the validity of data collected through other methods is in question or when the complexity of certain aspects of the system prevents a clear explanation by the end-users. Teaching Tips Have students review The Railroad Paradox by Gerald M. Weinberg. Discuss the moral of the story. Have students provide advantages and disadvantages of observation.

22 Observation Guidelines
Determine the who, what, where, when, why, and how of the observation. Obtain permission from appropriate supervisors or managers. Inform those who will be observed of the purpose of the observation. Keep a low profile. Take notes during or immediately following the observation. Review observation notes with appropriate individuals. Don't interrupt the individuals at work. Don't focus heavily on trivial activities. Don't make assumptions. No additional notes.

23 Questionnaires Questionnaires are special-purpose documents that allow the analyst to collect information and opinions from respondents. Advantages? Disadvantages? Types of Questionnaires Free-format questionnaires offer the respondent greater latitude in the answer. A question is asked, and the respondent records the answer in the space provided after the question. Fixed-format questionnaires contain questions that require selection of predefined responses from individuals. Types of Fixed-Format Questions Multiple-choice questions Rating questions Ranking questions Teaching Tips Have students provide advantages and disadvantages of observation.

24 Questionnaire Procedure
Determine what facts and opinions must be collected and from whom you should get them. Based on the needed facts and opinions, determine whether free- or fixed-format questions will produce the best answers. Write the questions. Test the questions on a small sample of respondents. Duplicate and distribute the questionnaire. No additional notes.


Download ppt "Lesson 17 Requirements Discovery"

Similar presentations


Ads by Google