Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ondřej Přibyl L5: Requirements Analysis page 1 Lecture 5: Requirements Analysis Telematics systems and their design Doc.Ing. Ondřej Přibyl, Ph.D. Department.

Similar presentations


Presentation on theme: "Ondřej Přibyl L5: Requirements Analysis page 1 Lecture 5: Requirements Analysis Telematics systems and their design Doc.Ing. Ondřej Přibyl, Ph.D. Department."— Presentation transcript:

1 Ondřej Přibyl L5: Requirements Analysis page 1 Lecture 5: Requirements Analysis Telematics systems and their design Doc.Ing. Ondřej Přibyl, Ph.D. Department of applied mathematics Faculty of Transportation sciences, CTU

2 Ondřej Přibyl L5: Requirements Analysis page 2 Faculty of Transportation Sciences, CTU Telematics systems and their design Discussion What is a requirement?

3 Ondřej Přibyl L5: Requirements Analysis page 3 Faculty of Transportation Sciences, CTU Telematics systems and their design Introduction to the terminology System requirement – something that the system (ITS) must do or a property that it must have. Requirements engineering (discovery, analysis) and management – the process and techniques used by systems analysts to identify or extract system problems and solution requirements from the user community and to manage them through the product’s life cycle.

4 Ondřej Přibyl L5: Requirements Analysis page 4 Faculty of Transportation Sciences, CTU Telematics systems and their design What is a requirement? The process by which customer needs are understood and documented Expresses “what” is to be built and NOT “how” it is to be built. Example 1: –The system shall allow users to withdraw cash. [What?] Example 2: –A sale item’s name and other attributes will be stored in a hash table and updated each time any attribute changes. [How?]

5 Ondřej Přibyl L5: Requirements Analysis page 5 Faculty of Transportation Sciences, CTU Telematics systems and their design Why is a good requirement engineering important? http://www.my-project-management-expert.com/business-requirements-management.html

6 Ondřej Přibyl L5: Requirements Analysis page 6 Faculty of Transportation Sciences, CTU Telematics systems and their design Discussion What are the effects of incorrect or missing requirements?

7 Ondřej Přibyl L5: Requirements Analysis page 7 Faculty of Transportation Sciences, CTU Telematics systems and their design 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.

8 Ondřej Přibyl L5: Requirements Analysis page 8 Faculty of Transportation Sciences, CTU Telematics systems and their design Relative Cost to Fix an Error

9 Ondřej Přibyl L5: Requirements Analysis page 9 Faculty of Transportation Sciences, CTU Telematics systems and their design Criteria to Define System Requirements Consistent – requirements are not conflicting or ambiguous. Complete – requirements describe all possible system inputs and responses. Feasible – requirements can be satisfied based on the available resources and constraints. Required – requirements are truly needed and fulfill the purpose of the system. Accurate – requirements are stated correctly. Traceable – requirements directly map to the functions and features of the system. Verifiable – requirements are defined so they can be demonstrated during testing.

10 Ondřej Přibyl L5: Requirements Analysis page 10 Faculty of Transportation Sciences, CTU Telematics systems and their design Requirements Template To increase the probability of writing a good requirement (according to the criteria above) When? Under what condition The system Shall Should Will Provide WHOM? WITH THE ABILITY TO BE ABLE TO <additional detail about the object> If triggered The camera Shall Take a picture Of a vehicle above a sensor

11 Ondřej Přibyl L5: Requirements Analysis page 11 Faculty of Transportation Sciences, CTU Telematics systems and their design Requirements Management Requirement engineering – the process of capturing requirements Requirements management - the process of managing change to the requirements. Over the lifetime of the project it is very common for new requirements to emerge and existing requirements to change. Studies have shown that over the life of a project as much as 50 percent or more of the requirements will change before the system is put into production.

12 Ondřej Přibyl L5: Requirements Analysis page 12 Faculty of Transportation Sciences, CTU Telematics systems and their design Requirements management

13 Ondřej Přibyl L5: Requirements Analysis page 13 Faculty of Transportation Sciences, CTU Telematics systems and their design Discussion What is the result of adding requirements later?

14 Ondřej Přibyl L5: Requirements Analysis page 14 Faculty of Transportation Sciences, CTU Telematics systems and their design Classification of Requirements Target person –User requirements (User needs) Statements in natural language plus diagrams of the services the system provides and its operational constraints. Written as a contract between client and contractor –System requirements A structured document setting out detailed descriptions of the system services. Written for developers Type (next slide) –Functional requirements –Non-functional requirements

15 Ondřej Přibyl L5: Requirements Analysis page 15 Faculty of Transportation Sciences, CTU Telematics systems and their design Functional requirements Statements of services that the system should provide, how the system should react to particular inputs and how the system should behave in particular situations –feature sets –capabilities –security Example: –The system shall provide appropriate viewers for the user to read documents in the document store.

16 Ondřej Přibyl L5: Requirements Analysis page 16 Faculty of Transportation Sciences, CTU Telematics systems and their design Non-functional requirements Usability aesthetics consistency in the user interface Online/context-sensitive help wizards and agents user documentation Reliability frequency and severity of failure recoverability accuracy Performance efficiency availability accuracy throughput response time Supportability testability adaptability compatibility configurability Nonfunctional requirements are the ones that act to constrain the solution (timing constraints, constraints on the development process, standards, etc.)

17 Ondřej Přibyl L5: Requirements Analysis page 17 Faculty of Transportation Sciences, CTU Telematics systems and their design Exercise (1) One of you is “requirements analyst (RA)” The rest of the team are “software developers (SD)” RA has 30 seconds to look at the “target system”, can take notes RA describes with words only the target system time limit - 3 minutes all SD are working individually to draw the target system

18 Ondřej Přibyl L5: Requirements Analysis page 18 Faculty of Transportation Sciences, CTU Telematics systems and their design Exercise (2)

19 Ondřej Přibyl L5: Requirements Analysis page 19 Faculty of Transportation Sciences, CTU Telematics systems and their design Discussion Provide examples of requirements for a section speed control system –Functional –Non-functional

20 Ondřej Přibyl L5: Requirements Analysis page 20 Process for Requirements collection and analysis

21 Ondřej Přibyl L5: Requirements Analysis page 21 Faculty of Transportation Sciences, CTU Telematics systems and their design Initial documents Fact Finding Selection and organizing of requirements Resolving conflicts Review with client Final SRS document Iterate Obtaining relevant materials Tenders, description of existing systems, customer requests, best practices, MoM, … Document sampling Research Observation Interviewing Questionnaires INITIATION REQ. DISCOVERY REQ. ANALYSIS Output Draft SRS document Missing requirements Conflicting requirements Infeasible requirements Inconsistent requirements Overlapping requirements Ambiguous requirements Formalizing requirements FINILIZING The Process of Requirements Discovery

22 Ondřej Přibyl L5: Requirements Analysis page 22 Initiation

23 Ondřej Přibyl L5: Requirements Analysis page 23 Faculty of Transportation Sciences, CTU Telematics systems and their design Initiation steps Specify the steps used in the process Identify relevant documents and key persons –Where can I get information –Who is relevant for the process? Users, operators, developers, client, … Organize Kick-off meeting, where the steps are presented –To increase user understanding and cooperation

24 Ondřej Přibyl L5: Requirements Analysis page 24 Faculty of Transportation Sciences, CTU Telematics systems and their design Initial documents Fact Finding Selection and organizing of requirements Resolving conflicts Review with client Final SRS document Iterate Obtaining relevant materials Tenders, description of existing systems, customer requests, best practices, MoM, … Document sampling Research Observation Interviewing Questionnaires INITIATION REQ. DISCOVERY REQ. ANALYSIS Output Draft SRS document Missing requirements Conflicting requirements Infeasible requirements Inconsistent requirements Overlapping requirements Ambiguous requirements Formalizing requirements FINILIZING The Process of Requirements Discovery

25 Ondřej Přibyl L5: Requirements Analysis page 25 Requirements Discovery

26 Ondřej Přibyl L5: Requirements Analysis page 26 Faculty of Transportation Sciences, CTU Telematics systems and their design Requirements Discovery Given an understanding of problems, the systems analyst can start to define requirements. Fact-finding – the formal process of using research, meetings, interviews, questionnaires, sampling, and other techniques to collect information about system problems, requirements, and preferences. It is also called information gathering or data collection.

27 Ondřej Přibyl L5: Requirements Analysis page 27 Faculty of Transportation Sciences, CTU Telematics systems and their design A Fact-Finding Strategy 1.Learn from existing documents, forms, reports, and files. 2.If appropriate, observe the system in action. 3.Given all the facts that already collected, design and distribute questionnaires to clear up things that aren’t fully understood. 4.Conduct interviews (or group work sessions). 5.(Optional). Build discovery prototypes for any functional requirements that are not understood or for requirements that need to be validated. 6.Follow up to verify facts.

28 Ondřej Přibyl L5: Requirements Analysis page 28 Faculty of Transportation Sciences, CTU Telematics systems and their design Seven Fact-Finding Methods 1.Sampling of existing documentation, forms, and databases 2.Research and site visits 3.Observation of the work environment 4.Questionnaires 5.Interviews 6.Prototyping 7.Joint requirements planning (JRP)

29 Ondřej Přibyl L5: Requirements Analysis page 29 Faculty of Transportation Sciences, CTU Telematics systems and their design 1. Sampling of Existing Documentation, Forms, and Files Sampling – the process of collecting a representative sample of documents, forms, and records. –Organization chart –Memos and other documents that describe the problem –Standard operating procedures for current system –Completed forms –Manual and computerized screens and reports –Samples of databases –Flowcharts and other system documentation –And more

30 Ondřej Přibyl L5: Requirements Analysis page 30 Faculty of Transportation Sciences, CTU Telematics systems and their design 2. Research and site visits Research given topic –When dealing with Speed enforcement - learn all about Get publicly available documents Use search engines, internal web sites (Intranet etc.)

31 Ondřej Přibyl L5: Requirements Analysis page 31 Faculty of Transportation Sciences, CTU Telematics systems and their design 3. Observation Observation – 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 - a fact-finding technique that involves a large number of observations taken at random intervals.

32 Ondřej Přibyl L5: Requirements Analysis page 32 Faculty of Transportation Sciences, CTU Telematics systems and their design 3. 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.

33 Ondřej Přibyl L5: Requirements Analysis page 33 Faculty of Transportation Sciences, CTU Telematics systems and their design 4. Questionnaires Questionnaire – a special-purpose document that allows the analyst to collect information and opinions from respondents. –Advantages? –Disadvantages? Free-format questionnaire – a questionnaire designed to 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 questionnaire – a questionnaire containing questions that require selecting an answer from predefined available responses.

34 Ondřej Přibyl L5: Requirements Analysis page 34 Faculty of Transportation Sciences, CTU Telematics systems and their design 5. Interviews Interview - a fact-finding technique whereby the systems analysts collect information from individuals through face-to- face interaction. –Can be used to: Find facts Verify facts Clarify facts Generate enthusiasm Get the end-user involved Identify requirements Solicit ideas and opinions –Advantages? –Disadvantages? The personal interview is generally recognized as the most important and most often used fact-finding technique.

35 Ondřej Přibyl L5: Requirements Analysis page 35 Faculty of Transportation Sciences, CTU Telematics systems and their design 6. Discovery Prototyping Discovery prototyping – the act of building a small-scale, representative or working model of the users ’ requirements in order to discover or verify those requirements. –Advantages? –Disadvantages?

36 Ondřej Přibyl L5: Requirements Analysis page 36 Faculty of Transportation Sciences, CTU Telematics systems and their design 7. Joint Requirements Planning Joint requirements planning (JRP) – a process whereby highly structured group meetings are conducted for the purpose of analyzing problems and defining requirements. –JRP is a subset of a more comprehensive joint application development or JAD technique that encompasses the entire systems development process. JRB Participants –Sponsor –Facilitator –Users and Managers –Scribes –IT Staff

37 Ondřej Přibyl L5: Requirements Analysis page 37 Faculty of Transportation Sciences, CTU Telematics systems and their design Initial documents Fact Finding Selection and organizing of requirements Resolving conflicts Review with client Final SRS document Iterate Obtaining relevant materials Tenders, description of existing systems, customer requests, best practices, MoM, … Document sampling Research Observation Interviewing Questionnaires INITIATION REQ. DISCOVERY REQ. ANALYSIS Output Draft SRS document Missing requirements Conflicting requirements Infeasible requirements Inconsistent requirements Overlapping requirements Ambiguous requirements Formalizing requirements FINILIZING The Process of Requirements Discovery

38 Ondřej Přibyl L5: Requirements Analysis page 38 Requirements Analysis

39 Ondřej Přibyl L5: Requirements Analysis page 39 Faculty of Transportation Sciences, CTU Telematics systems and their design Objectives of Analyzing Requirements Analyzing requirements to resolve problems of: –Missing requirements –Conflicting requirements –Infeasible requirements –Overlapping requirements –Ambiguous requirements

40 Ondřej Přibyl L5: Requirements Analysis page 40 Faculty of Transportation Sciences, CTU Telematics systems and their design Objectives of Analyzing Requirements This topic is concerned with the process of analyzing requirements to –Detect and resolve conflicts between requirements –Discover the bounds of the software and how it must interact with its environment –Elaborate system requirements to derive software requirements Care must be taken to describe requirements precisely enough to enable the requirements to be validated, their implementation to be verified, and their costs to be estimated.

41 Ondřej Přibyl L5: Requirements Analysis page 41 Faculty of Transportation Sciences, CTU Telematics systems and their design Initial documents Fact Finding Selection and organizing of requirements Resolving conflicts Review with client Final SRS document Iterate Obtaining relevant materials Tenders, description of existing systems, customer requests, best practices, MoM, … Document sampling Research Observation Interviewing Questionnaires INITIATION REQ. DISCOVERY REQ. ANALYSIS Output Draft SRS document Missing requirements Conflicting requirements Infeasible requirements Inconsistent requirements Overlapping requirements Ambiguous requirements Formalizing requirements FINILIZING The Process of Requirements Discovery

42 Ondřej Přibyl L5: Requirements Analysis page 42 Requirements Finalizing

43 Ondřej Přibyl L5: Requirements Analysis page 43 Faculty of Transportation Sciences, CTU Telematics systems and their design Documenting of Requirements Documenting the draft requirements with various tools: –Use cases –Decision tables –Requirements tables Formalizing requirements –Requirements definition document –Communicated to stakeholders or steering body Tips: –Provide introduction to the document Purpose of the document, document history, basic notation, explanation of terminology –Focus on structuring of requirements into logical groups Chapters/packages, types of requirements, … –Provide clear names (Inclusive numbering) –Use natural language, avoid slang

44 Ondřej Přibyl L5: Requirements Analysis page 44 Faculty of Transportation Sciences, CTU Telematics systems and their design What must be included in a requirement? Unique ID Short Name Desription Version Type (functional / not function) Author Priority (low, medium, high) Origin/Source Status (in definition, accepted, tested, implemented) Verification Method (test, explanation, audit, …)

45 Ondřej Přibyl L5: Requirements Analysis page 45 Faculty of Transportation Sciences, CTU Telematics systems and their design Sample Requirements Definition Outline

46 Ondřej Přibyl L5: Requirements Analysis page 46 Faculty of Transportation Sciences, CTU Telematics systems and their design Examples

47 Ondřej Přibyl L5: Requirements Analysis page 47 Faculty of Transportation Sciences, CTU Telematics systems and their design Examples

48 Ondřej Přibyl L5: Requirements Analysis page 48 Faculty of Transportation Sciences, CTU Telematics systems and their design Demonstration of resulting document Link to external Document

49 Ondřej Přibyl L5: Requirements Analysis page 49 BACKUP

50 Ondřej Přibyl L5: Requirements Analysis page 50 Faculty of Transportation Sciences, CTU Telematics systems and their design 1. Why to Sample Completed Rather than Blank Forms Can determine the type of data going into each blank Can determine the size of data going into each blank Can determine which blanks are not used or not always used Can see data relationships

51 Ondřej Přibyl L5: Requirements Analysis page 51 Faculty of Transportation Sciences, CTU Telematics systems and their design Sampling of Existing Documentation, Forms, and Files Determining the sample size: –Sample Size = 0.25 x (Certainty factor/Acceptable error) 2 –Sample Size = 0.25(1.645/0.10) 2 = 68 –Sample Size =0.10(1 – 0.10)(1.645/0.10) 2 = 25 Or if analyst knows 1 in 10 varies from norm. Certainty factor from certainty table. 10% acceptable error.

52 Ondřej Přibyl L5: Requirements Analysis page 52 Faculty of Transportation Sciences, CTU Telematics systems and their design Sampling Techniques Randomization – a sampling technique characterized by having no predetermined pattern or plan for selecting sample data. Stratification – 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.

53 Ondřej Přibyl L5: Requirements Analysis page 53 Faculty of Transportation Sciences, CTU Telematics systems and their design Types of Fixed-Format Questions Multiple-choice questions Rating questions Ranking questions Rank the following transactions according to the amount of time you spend processing them. ___ % new customer orders ___ % order cancellations ___ % order modifications ___ % payments The implementation of quality discounts would cause an increase in customer orders. Strongly agree Agree No opinion Disagree Strongly disagree Is the current accounts receivable report that you receive useful? Yes No

54 Ondřej Přibyl L5: Requirements Analysis page 54 Faculty of Transportation Sciences, CTU Telematics systems and their design 5. Interviewing Do’s and Don’ts Do Be courteous Listen carefully Maintain control Probe Observe mannerisms and nonverbal communication Be patient Keep interviewee at ease Maintain self-control Avoid Continuing an interview unnecessarily. Assuming an answer is finished or leading nowhere. Revealing verbal and nonverbal clues. Using jargon Revealing your personal biases. Talking instead of listening. Assuming anything about the topic and the interviewee. Tape recording -- a sign of poor listening skills.

55 Ondřej Přibyl L5: Requirements Analysis page 55 Faculty of Transportation Sciences, CTU Telematics systems and their design Developing a Questionnaire 1.Determine what facts and opinions must be collected and from whom you should get them. 2.Based on the facts and opinions sought, determine whether free- or fixed-format questions will produce the best answers. 3.Write the questions. 4.Test the questions on a small sample of respondents. 5.Duplicate and distribute the questionnaire.

56 Ondřej Přibyl L5: Requirements Analysis page 56 Faculty of Transportation Sciences, CTU Telematics systems and their design Types of Interviews and Questions Unstructured interview – an interview that is conducted with only a general goal or subject in mind and with few, if any, specific questions. The interviewer counts on the interviewee to provide a framework and direct the conversation. Structured interview – an interview in which the interviewer has a specific set of questions to ask of the interviewee. Open-ended question – question that allows the interviewee to respond in any way that seems appropriate. Closed-ended question – a question that restricts answers to either specific choices or short, direct responses.

57 Ondřej Přibyl L5: Requirements Analysis page 57 Faculty of Transportation Sciences, CTU Telematics systems and their design Procedure to Conduct an Interview 1.Select Interviewees –End users –Learn about individual prior to the interview 2.Prepare for the Interview –An interview guide is a checklist of specific questions the interviewer will ask the interviewee. –See Figure 6-3 3.Conduct the Interview –Summarize the problem –Offer an incentive for participation –Ask the interviewee for assistance 4.Follow Up on the Interview –Memo that summarizes the interview

58 Ondřej Přibyl L5: Requirements Analysis page 58 Faculty of Transportation Sciences, CTU Telematics systems and their design Sample Interview Guide (continued)

59 Ondřej Přibyl L5: Requirements Analysis page 59 Faculty of Transportation Sciences, CTU Telematics systems and their design Sample Interview Guide (concluded)

60 Ondřej Přibyl L5: Requirements Analysis page 60 Faculty of Transportation Sciences, CTU Telematics systems and their design Interview Questions Types of Questions to Avoid –Loaded questions –Leading questions –Biased questions Interview Question Guidelines –Use clear and concise language. –Don’t include your opinion as part of the question. –Avoid long or complex questions. –Avoid threatening questions. –Don’t use “you” when you mean a group of people.

61 Ondřej Přibyl L5: Requirements Analysis page 61 Faculty of Transportation Sciences, CTU Telematics systems and their design Communicating With the User Guidelines for Communicating –Approach the Session with a Positive Attitude –Set the Other Person at Ease –Let Them Know You Are Listening –Ask Questions –Don’t Assume Anything –Take Notes “To hear is to recognize that someone is speaking, to listen is to understand what the speaker wants to communicate.” (Gildersleeve – 1978)

62 Ondřej Přibyl L5: Requirements Analysis page 62 Faculty of Transportation Sciences, CTU Telematics systems and their design Body Language and Proxemics Body language – the nonverbal information we communicate. –Facial disclosure –Eye contact –Posture Proxemics – the relationship between people and the space around them. –Intimate zone—closer than 1.5 feet –Personal zone—from 1.5 feet to 4 feet –Social zone—from 4 feet to 12 feet –Public zone—beyond 12 feet

63 Ondřej Přibyl L5: Requirements Analysis page 63 Faculty of Transportation Sciences, CTU Telematics systems and their design 7. Steps to Plan a JRP Session 1.Selecting a location –Away from workplace when possible –Requires several rooms –Equipped with tables, chairs, whiteboard, overhead projectors –Needed computer equipment –See Figure 6-4 2.Selecting the participants –Each needs release from regular duties 3.Preparing the agenda –Briefing documentation –Agenda distributed before each session

64 Ondřej Přibyl L5: Requirements Analysis page 64 Faculty of Transportation Sciences, CTU Telematics systems and their design 7. Typical room layout for JRP session

65 Ondřej Přibyl L5: Requirements Analysis page 65 Faculty of Transportation Sciences, CTU Telematics systems and their design 7. Guidelines for Conducting a JRP Session Do not unreasonably deviate from the agenda Stay on schedule Ensure that the scribe is able to take notes Avoid the use of technical jargon Apply conflict resolution skills Allow for ample breaks Encourage group consensus Encourage user and management participation without allowing individuals to dominate the session Make sure that attendees abide by the established ground rules for the session

66 Ondřej Přibyl L5: Requirements Analysis page 66 Faculty of Transportation Sciences, CTU Telematics systems and their design Benefits of JRP JRP actively involves users and management in the development project (encouraging them to take “ownership” in the project). JRP reduces the amount of time required to develop systems. When JRP incorporates prototyping as a means for confirming requirements and obtaining design approvals, the benefits of prototyping are realized


Download ppt "Ondřej Přibyl L5: Requirements Analysis page 1 Lecture 5: Requirements Analysis Telematics systems and their design Doc.Ing. Ondřej Přibyl, Ph.D. Department."

Similar presentations


Ads by Google