SE311 · Annotated SlidesChapter 4 — Requirements Elicitation Techniques
Chapter 4 · Annotated slides

Requirements Elicitation Techniques

Interviews, workshops, focus groups, observation, questionnaires, system- and user-interface analysis, document analysis, use cases and usage scenarios, misuse cases, and prototyping (purpose, fidelity, risks and success factors), with a comparison of techniques.

Slide text Study notes Highlight: key words Tips, tricks & traps Seen again elsewhere How it can come up
Slide 1: Slide 1
Exam weight Low

    Outline

    • Overview of requirements elicitation
    • Requirements elicitation techniques
    • Use cases
    2
    Exam weight Low
      Slide 3: RE Process
      Exam weight Low
        Slide 4: Requirements Elicitation
        Exam weight Low

          Requirements Elicitation

          • A collaborative and analytical process that includes activities to collect, discover, extract, and define requirements
          • Discovers business, user, functional, and non-functional requirements
          • Engaging users in the elicitation process is a key element for success
          5
          Exam weight Low

            Requirements Elicitation Goals

            • Determine sources of requirements and select appropriate techniques
            • Elicit information on domain, problem, needs, and constraints
            • Produce a first document
              • Mainly user requirements and elicitation notes
              • Potentially incomplete and inconsistent but one must start somewhere
            6
            Exam weight Low
              Slide 7: Requirements Elicitation
              Exam weight Low
                Slide 8: Requirements Elicitation Techniques
                Exam weight Low

                  Interviews

                  • May be one-on-one or small group interviews
                  • Strengths:
                    • Effective for getting to know the application domain quickly
                    • Interviewees may be more comfortable sharing their thoughts than in a workshop setting
                    • Easier to establish user involvement
                    • Suitable for busy executives
                  9
                  Exam weight Low
                  1. Interviews: one-on-one or small group; good for detail. Prepare questions, stay in scope, listen, take notes.
                  Slide 10: Interviews - Tips
                  Exam weight Low
                    Slide 11: Interviews - Tips
                    Exam weight Low
                      Slide 12: “Facilitation is the art of leading people through
                      Exam weight Low
                      1. Workshops: structured, facilitated sessions with many stakeholders to resolve conflicts and define requirements fast.
                      Slide 13: Workshops - Tips
                      Exam weight Low
                        Slide 14: Workshops - Tips
                        Exam weight Low
                          ★ Past exam

                          Focus Groups

                          • A representative group of users who convene in a facilitated elicitation activity to generate input and ideas on a product’s functional and quality requirements U
                          • seful for exploring users’ attitudes, impressions, preferences, and needs

                          You will need to keep them on topic without influencing their opinions Include users who have used previous versions or similar products Select users from different user classes or a bunch of users from the same class and hold several focused groups

                          -making authority for requirements

                          Participants in focus groups normally don’t have decision

                          15
                          Exam weight High
                          1. Focus groups: representative users discussing attitudes, impressions, preferences and needs: suited to COMMERCIAL products.
                          🎯 How this can come up · 1 question
                          MCQ

                          Best technique for exploring users’ attitudes, impressions and preferences for a commercial product:

                          Slide 16: Focus Groups
                          Exam weight Low

                            Observations

                            • Get into the trenches and observe specialists “in the wild”
                            • Shadow important users as they do their work
                            • Can be silent or interavtive
                            • May be supplemented later with questionnaires and/or interviews
                            • Time consuming
                            Observations
                            17
                            Exam weight High
                            1. Observation: watch users do their real work; reveals tacit steps they forget to mention. Silent or interactive.
                            🎯 How this can come up · 1 question
                            MCQ

                            Users can’t explain a complex task they do automatically. Best technique:

                            Slide 18: Observations
                            Exam weight Low

                              Questionnaires

                              • A way to survey large groups of users to understand their needs
                              • Analyzed results can be used as input for other elicitation techniques
                              • Survey commercial product users for feedback
                              • Strengths:
                                • Inexpensive
                                • Suitable for eliciting information from large user populations
                                • Easily administered across geographical boundaries
                              Questionnaires
                              19
                              Exam weight Low
                              1. Questionnaires: reach many users cheaply; hard to write well; no follow-up.
                              Slide 20: Questionnaires – Tips
                              Exam weight Low
                                Slide 21: System Interface Analysis
                                Exam weight Low
                                1. System interface analysis: study the systems this one connects to.
                                Slide 22: User Interface Analysis
                                Exam weight Low
                                1. User interface analysis: study existing screens and how they are used.

                                User Interface Analysis

                                • Strengths:
                                  • Suitable for building a new version of an existing system
                                  • Facilitates identification of areas of improvement
                                  • Relates user input to reality, thereby clarifying it
                                23
                                Exam weight Low
                                  Slide 24: Document Analysis
                                  Exam weight Low
                                  1. Document analysis: existing documentation, regulations, manuals, reports.

                                  Use Cases

                                  • A sequence of interactions between a system and an external actor that results in the actor being able to achieve some outcome of value
                                  • A user-centric and usage-centric technique for exploring user requirements
                                  • Shifts from product-centric perspective (asking users what they want the system to do) to discussing what the users need to accomplish
                                  Use Cases
                                  25
                                  Exam weight Low
                                  1. Use case: a goal-oriented interaction between an actor and the system (normal flow, alternatives, exceptions).

                                  Usage Scenario

                                  • A scenario is a description of a single instance of a usage of a system
                                  • A use case is a collection of related usage scenarios, and a scenario is a specific instance of a use case
                                    • Specific actor, at a specific time, with specific data Scenario 1: Request a chemical from the checmical stockroom Request a Chemical Scenario 2: Request a checmical from a vendor
                                  26
                                  Exam weight Low

                                    Representation of Use Cases - Textual

                                    • Narrative form – a paragraph focusing on the primary scenario and some secondary ones A User inserts a card in the card reader slot. The system asks for a personal identification number (PIN). The user enters a PIN. After checking that the user identification is valid, the system asks the user to chose an operation...
                                    • Useful when stakeholders first meet
                                    27
                                    Exam weight Low
                                      Slide 28: Representation of Use Cases – Visual
                                      Exam weight Low

                                        Use Cases

                                        • Strengths:
                                          • Users have clearer expectations of what the system will do
                                          • BA’s and developers better understand user’s business
                                          • Prevents implementation of unneeded functionality
                                          • May be turned into object models for object-oriented design
                                        • Risks:
                                          • Too many use cases
                                          • Highly complex use cases
                                        29
                                        Exam weight Low

                                          Misuse Cases

                                          • A negative scenario is one with a goal that is:
                                            • Undesirable from a business obejctive’s perspective D esriable from a hostile agent’s perspective
                                          • Can be handled using misuse cases
                                            • Proposed by Sindre & Opdahl (2000)
                                            • Capture use cases that a system must be protected against
                                            • Obvious applications for security and risk analysis
                                          30
                                          Exam weight High
                                          1. Misuse case: what an attacker (or careless user) wants to do; reveals security requirements.
                                          🎯 How this can come up · 1 question
                                          MCQ

                                          Misuse cases help discover mainly:

                                          Slide 31: Agents with intentions to harm
                                          Exam weight Low
                                            Slide 32: Misuse Cases
                                            Exam weight Low
                                              Slide 33: Block
                                              Exam weight Low

                                                Misuse Cases

                                                • Strengths:
                                                  • Useful for eliciting security anf safety requirements
                                                  • Early identification of threats, mitigations, and exceptions
                                                • Risks:
                                                  • If used during elicitation, it could lead to premature design solutions when identifying mitigations
                                                  • Potential for missing misactors or threats if consulting partial view of system

                                                M. Zarour, M. Alenezi: Software Security Specifications and Design How Software Engineers and Practitioners Are Mixing Things up

                                                34
                                                Exam weight Low
                                                  Slide 35: Prototyping
                                                  Exam weight High
                                                  1. Prototype: a partial implementation to clarify requirements. Throwaway vs. evolutionary; low fidelity (paper) vs. high fidelity (looks real).
                                                  Exam trapRisk: stakeholders see a polished prototype and think the system is nearly done.
                                                  🎯 How this can come up · 1 question
                                                  MCQ

                                                  A paper sketch of screens is a:

                                                  Prototyping - Purpose

                                                  • Prototypes can serve three major purposes, and that purpose must be made clear from the very beginning:
                                                    • Clarify, complete, and validate requirements – requirements tool
                                                    • Explore design alternatives – design tool
                                                    • Create a subset that will grow into the ultimate product – construction tool
                                                  36
                                                  Exam weight Low
                                                    Slide 37: Prototyping – Attributes & Applications
                                                    Exam weight Low

                                                      Rapid Prototyping: Digital Figma

                                                      38
                                                      Exam weight Low
                                                        Slide 39: Prototyping – Fidelity
                                                        Exam weight Low
                                                          Slide 40: Prototyping
                                                          Exam weight Low

                                                            Prototyping - Risks

                                                            • Pressure to release the prototype
                                                            • Distraction by detail
                                                            • Unrealistic performance expectations
                                                            • Investing excessive effort in prototypes
                                                            Prototyping - Risks
                                                            41
                                                            Exam weight Low

                                                              Prototyping – Success Factors

                                                              Include them in project plans State the purpose of each prototype before you build it Plan to develop multiple prototypes Create throwaways as quickly and cheaply as possible Don’t prototype requirements that you already understand, except to explore design alternatives Don’t expect a prototype to replace written requirements

                                                              42
                                                              Exam weight Low

                                                                Final Remarks

                                                                Factors to consider when choosing elicitation techniques:

                                                                • The nature of the information being elicited in terms of consciousness
                                                                • The time and budget constraints
                                                                • The availability of stakeholders
                                                                • The experience of the BA with a particular elicitation technique
                                                                43
                                                                Exam weight Low

                                                                  Appendix I – Sample Elicitation Questions

                                                                  • Functional requirements
                                                                    • What will the system do?
                                                                    • When will the system do it?
                                                                    • Are there several modes of operations?
                                                                    • What kinds of computations or data transformations must be performed?
                                                                    • What are the appropriate reactions to possible stimuli?
                                                                    • For both input and output, what should be the format of the data?
                                                                    • Must any data be retained for any period of time?
                                                                  44
                                                                  Exam weight Low

                                                                    Appendix I – Sample Elicitation Questions

                                                                    • Design Constraints
                                                                      • Physical environment
                                                                        • Where is the equipment to be located?
                                                                        • Is there one location or several?
                                                                        • Are there any environmental restrictions, such as temperature, humidity, or magnetic interference?
                                                                        • Are there any constraints on the size of the system?
                                                                        • Are there any constraints on power, heating, or air conditioning?
                                                                        • Are there constraints on the programming language because of existing software components?
                                                                    45
                                                                    Exam weight Low

                                                                      Appendix I – Sample Elicitation Questions

                                                                      • Design Constraints
                                                                        • Interfaces
                                                                          • Is input coming from one or more other systems?
                                                                          • Is output going to one or more other systems?
                                                                          • Is there a prescribed way in which input/output need to be formatted?
                                                                          • Is there a prescribed way for storing data?
                                                                          • Is there a prescribed medium that the data must use?
                                                                        • Standards
                                                                          • Are there any standards relevant to the system?
                                                                        • Laws, policies, and regulations
                                                                          • Are there any laws, policies, or regulations applicable here?
                                                                      46
                                                                      Exam weight Low

                                                                        Appendix I – Sample Elicitation Questions

                                                                        • Performance
                                                                          • Are there constraints on execution speed, response time, or throughput?
                                                                          • What efficiency measure will apply to resource usage and response time?
                                                                          • How much data will flow through the system?
                                                                          • How often will data be received or sent?
                                                                        • Usability and Human Factors
                                                                          • What kind of training will be required for each type of user?
                                                                          • How easy should it be for a user to understand and use the system?
                                                                          • How difficult should it be for a user to misuse the system?
                                                                        47
                                                                        Exam weight Low

                                                                          Appendix I – Sample Elicitation Questions

                                                                          • Security
                                                                            • Must access to the system or information be controlled?
                                                                            • Should each user's data be isolated from data of other users?
                                                                            • Should user programs be isolated from other programs and from the operating system?
                                                                            • Should precautions be taken against theft or vandalism?
                                                                          48
                                                                          Exam weight Low

                                                                            Appendix I – Sample Elicitation Questions

                                                                            • Reliability and Availability
                                                                              • Must the system detect and isolate faults?
                                                                              • What is the prescribed mean time between failures?
                                                                              • Is there a maximum time allowed for restarting the system after failure?
                                                                              • How often will the system be backed up?
                                                                              • Must backup copies be stored at a different location?
                                                                              • Should precautions be taken against fire or water damage?
                                                                            49
                                                                            Exam weight Low

                                                                              Appendix I – Sample Elicitation Questions

                                                                              • Maintainability
                                                                                • Will maintenance merely correct errors, or will it also include improving the system?
                                                                                • When and in what ways might the system be changed in the future?
                                                                                • How easy should it be to add features to the system?
                                                                                • How easy should it be to port the system from one platform (computer, operating system) to another?
                                                                              • Precision and Accuracy
                                                                                • How accurate must data calculations be?
                                                                                • To what degree of precision must calculations be made?
                                                                              50
                                                                              Exam weight Low
                                                                                Slide 51: Appendix II – Comparison of Elicitation Techniques
                                                                                Exam weight Low
                                                                                  Slide 52: Appendix II – Comparison of Elicitation Techniques
                                                                                  Exam weight Low

                                                                                    Appendix III – Prototyping Tools

                                                                                    • https://medium.theuxblog.com/11-best-prototyping-tools-for-ui-ux-designers-how-to-choose-the-right-one-c5dc69720c47
                                                                                    • https://www.justinmind.com
                                                                                    53
                                                                                    Exam weight Low