Software Requirements Elicitation Techniques

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Which of the following is NOT a main focus of requirements elicitation?

  • Validating requirements with the user
  • Acquiring sensor data systematically (correct)
  • Understanding the nature, features, and boundaries of a problem
  • Understanding the problem domain

Requirements elicitation is solely about gathering pre-existing, readily available information from stakeholders.

False (B)

In the context of requirement elicitation, what does the acronym JAD stand for?

Joint Application Development

The process of imagining what kind of system is required by the analyst is known as ______.

<p>introspection</p> Signup and view all the answers

Match the following social analysis types with their descriptions:

<p>Passive Observation = Observing without direct involvement, using recordings. Active Observation = Direct involvement of the observer, providing prototypes to users. Explanatory Observation = Users explain their actions while using the product. Ethnography = Observer is immersed in the society, conducting in-depth observation.</p> Signup and view all the answers

When is analyzing existing system primarily useful?

<p>Building a new improved version of an existing system (D)</p> Signup and view all the answers

In document analysis, the documents being analyzed are always up-to-date and accurate.

<p>False (B)</p> Signup and view all the answers

Name a classic requirements elicitation technique that involves looking at oneself to determine requirements.

<p>Introspection</p> Signup and view all the answers

Understanding the current process is aided by documents like user manuals, which is part of ______ .

<p>document analysis</p> Signup and view all the answers

Match the following observation methods with their descriptions:

<p>Passive observation = Collecting data without direct involvement, using recordings. Active observation = Observer provides a prototype and notes how the user interacts with it. Explanatory observation = Users verbalize their actions while using a product.</p> Signup and view all the answers

According to the information provided, which of the following is MOST accurate about using brainstorming in requirement elicitation?

<p>It is used to develop the preliminary mission statement. (B)</p> Signup and view all the answers

Ethnography is a technique that primarily relies on conducting formal interviews to gather requirements.

<p>False (B)</p> Signup and view all the answers

What kind of requirements are you collecting when you utilize ethnography?

<p>quality attributes requirements</p> Signup and view all the answers

When the observer is fully integrated into the society that user is using, which observation method are they using? ______.

<p>ethnography</p> Signup and view all the answers

Choose the most appropriate definition for the task analysis terms:

<p>Task Analysis = Decomposing high-level tasks into detailed sequences. Actions and Events = Detailed interactions between users and system Hierarchy of tasks = Tasks performed by the user as well as the system.</p> Signup and view all the answers

Which of the following is the most accurate description of task analysis?

<p>A top-down approach of breaking tasks into subtasks (B)</p> Signup and view all the answers

In brainstorming, it is critical to critique each idea as it is presented to ensure only the best ideas are considered.

<p>False (B)</p> Signup and view all the answers

Should you evaluate a project before selecting JAD participants? (yes/no)

<p>yes</p> Signup and view all the answers

A key principle of Joint Application Development is the utilization of ______.

<p>group dynamics</p> Signup and view all the answers

Match each role within Joint Application Development (JAD) with its primary function:

<p>Session Leader = Organizes, facilitates, and guides the JAD process. Analyst = Produces official JAD documents and understands the big picture. User Representatives = Provide the perspective of end-users and managers. Executive Sponsor = Provides strategic insights and makes executive decisions.</p> Signup and view all the answers

Within JAD, who's responsibilities are to come well-prepared with suggestions and ideas of needs; to brainstorm for the ideas?

<p>User representatives (D)</p> Signup and view all the answers

In Joint Application Development (JAD), the session should lack structure, defined roles, or any forms to be filled out.

<p>False (B)</p> Signup and view all the answers

What 1970's corporation developed JAD?

<p>IBM</p> Signup and view all the answers

Mock-ups can support the requirement gathering process, when introduced at the correct time. This process can then be referred to as creating a ______

<p>prototype</p> Signup and view all the answers

Match the prototyping type to the correct description:

<p>Horizontal Prototyping = A prototype that shows the general user interface. Vertical Prototyping = A prototype that is a slice of the system. Evolutionary Prototyping = A prototype that is incrementally turned into the product. Throw-away Prototyping = A less precise prototype that's discarded after being used.</p> Signup and view all the answers

Which is a key descriptor of High-fidelity prototypes?

<p>You press a button and something happens (C)</p> Signup and view all the answers

Low-fidelity prototyping is useful in understanding functionality of developed features.

<p>False (B)</p> Signup and view all the answers

Is it possible to prototype critical system requirements? (yes/no)

<p>no</p> Signup and view all the answers

A group of users or stakeholders working together to identify requirements is called ______.

<p>workshop</p> Signup and view all the answers

Match the reverse engineering type to its description:

<p>Black box reverse engineering = Studying what the system does without examining internal structure. White box reverse engineering = Understanding software by analysing code.</p> Signup and view all the answers

Which elicitation technique involves examining the inner workings of a system by analyzing and understanding the software code?

<p>White box reverse engineering (D)</p> Signup and view all the answers

Reverse engineering is most commonly used in projects starting from scratch.

<p>False (B)</p> Signup and view all the answers

Identify one advantage and disadvantage of ethnography.

<p>Advantage: Collects quality attributes such as usability. Disadvantage: Fails when assessing diverse communities.</p> Signup and view all the answers

A technique from the social science which has proved to be valuable in understanding the wok processes is ______.

<p>ethnography</p> Signup and view all the answers

Match the stages of Joint Application Design to these descriptions:

<p>Preparation = Planning and pre-work that is required to be done. Working Session = Session where leader welcomes the participates and the consensus begins. Summary = The follow-up and wrap-up is done from the information acquired.</p> Signup and view all the answers

Which of the following accurately summarizes a function of reverse engineering?

<p>Understanding an existing system without current documentation (C)</p> Signup and view all the answers

Task analysis focuses solely on the user's interactions with a system, ignoring the system's internal processes.

<p>False (B)</p> Signup and view all the answers

What are two main activities of brainstorming?

<p>The Storm (generating as many ideas as possible), The Calm (filtering out of ideas)</p> Signup and view all the answers

If one of the main goal is to describe the nature of those who are studied through writing, then you would want to perform ______

<p>ethnography</p> Signup and view all the answers

Match the following "P"s of Joint Application Design:

<p>Purpose = Why do you do things? Goals, needs, motivation. Participants = Who is involved? People, roles, responsibilities. Principle = How do you function? Guidelines, working agreement. Products = What do we create? Deliverables, decisions, plans.</p> Signup and view all the answers

Which of the following statements accurately distinguishes requirements elicitation from other related activities?

<p>Elicitation is about understanding the problem domain to develop a requirements model, not merely acquiring pre-existing requirements or specifying models. (A)</p> Signup and view all the answers

During the 'Understanding the application domain' stage of user requirements elicitation it is important to begin classifying and organizing requirements.

<p>False (B)</p> Signup and view all the answers

When selecting an elicitation method, which factor should be considered?

<p>The nature of the project, organizational structure, and type of stakeholders involved. (C)</p> Signup and view all the answers

When building a newer version of the the analysis of ___________ systems is very useful.

<p>existing</p> Signup and view all the answers

What is a key consideration when performing document analysis as an elicitation technique?

<p>Identifying relevant business details in the documents and confirming them with subject matter experts. (D)</p> Signup and view all the answers

In observation and social analysis, what is an example of active observation?

<p>Providing users with a new product prototype and observing their work with it. (C)</p> Signup and view all the answers

Questionnaires can be used to obtain in-depth qualitative data after initial interviews.

<p>False (B)</p> Signup and view all the answers

In social analysis, what does 'Explanatory Observations' entail?

<p>Users loudly explaining what they are doing while using the product, with the observer taking notes. (D)</p> Signup and view all the answers

If a project team is having trouble determining requirements, and needs to describe the nature of a group of stakeholders through writing which elicitation technique should they use?

<p>Ethnography (D)</p> Signup and view all the answers

Which requirements elicitation technique involves discovering what workers do by observation and analysis, rather than asking them to explain?

<p>Ethnography (C)</p> Signup and view all the answers

Using ethnography to gather requirements is cheap and fast.

<p>False (B)</p> Signup and view all the answers

What is the primary goal of Task Analysis in requirements elicitation?

<p>To construct a hierarchy of tasks performed by users and the system, and to determine the knowledge required. (B)</p> Signup and view all the answers

Why is it essential to avoid critiquing ideas in detail during a brainstorming session?

<p>Brainstorming is useful to avoid exploring or critiquing ideas in great detail (C)</p> Signup and view all the answers

During the 'storm' portion of a brainstorming session it is important to focus on the ________ of ideas, not the quality.

<p>quantity</p> Signup and view all the answers

What is the main goal of Joint Application Development (JAD) sessions?

<p>To conduct structured brainstorming with a predefined set of roles and forms. (A)</p> Signup and view all the answers

Which of the following is a key principle of Joint Application Development (JAD)?

<p>Using visual aids to enhance understanding. (C)</p> Signup and view all the answers

In Joint Application Development (JAD), what is completed during the 'Pre-work' stage?

<p>Clear schedules for the working session are made. (A)</p> Signup and view all the answers

Match the role to the primary responsibility in a Joint Application Development (JAD) session:

<p>Session leader = Sets tone of meeting Analyst = Produces official JAD documents Executive sponsor = Provides strategic insights User representatives = Suggests ideas of needs</p> Signup and view all the answers

The only goal of of software requirements prototyping is resolving uncertainties early in the process.

<p>False (B)</p> Signup and view all the answers

What is the effectiveness of a prototyping exercise?

<p>Effective in addressing the “Yes, But” and the “Undiscovered Ruins” syndromes (A)</p> Signup and view all the answers

What is the main purpose of throw-away prototypes?

<p>To help elicit and develop system requirements, focusing on the hardest aspects to understand. (C)</p> Signup and view all the answers

Which fidelity prototype is most likely to focus on details rather than on long term goals?

<p>High fidelity. (C)</p> Signup and view all the answers

____________ comprise a group of users or stakeholders working together to identify requirements.

<p>workshops</p> Signup and view all the answers

What is the primary use case for Reverse Engineering as an elicitation technique?

<p>Migration projects with outdated documentation. (A)</p> Signup and view all the answers

Studying documentation when gathering requirements has which of the following advantages?

<p>It requires no time commitment from the users. (C)</p> Signup and view all the answers

Flashcards

Requirement Elicitation

The process of acquiring all the relevant knowledge needed to produce a requirements model of a problem domain.

Introspection

A classic requirements elicitation technique where the analyst 'imagines' the required system based on their beliefs of user needs.

Analysis of Existing Systems

Examining existing systems to gather requirements for a new, improved version, focusing on what works, what doesn't, and how it's used.

Document Analysis

A helpful elicitation technique involving understanding current processes through user manuals, vendor manuals, and process documents to inform new system requirements.

Signup and view all the flashcards

Observation (Social Analysis)

Collecting requirements by observing people doing their normal work to find additional needs or issues they can't articulate.

Signup and view all the flashcards

Passive Observation

Type of social analysis carried out without direct involvement of the observer, typically using video recordings to document the people work and problems

Signup and view all the flashcards

Active Observation

A social analysis carried out with the direct involvement of the observer, where new product prototype or existing product to perform the operations on the product.

Signup and view all the flashcards

Explanatory Observations

A social environment where users are required to talk loudly, explaining what they are doing, while using the product so the observer will take notes using the explanation given by the user

Signup and view all the flashcards

Ethnography

A method where the observer is completely immersed in the society. Observer goes through in depth observation of society and their works.

Signup and view all the flashcards

Ethnography

A elicitation technique technique from social science to observe and writing the nature of those who are studied through writing.

Signup and view all the flashcards

Task Analysis

A top-down approach where high-level tasks are broken down into subtasks until detailed sequences are described, defining user and system interactions and what knowledge is needed.

Signup and view all the flashcards

Brainstorming

A process where participants engage in informal discussion to generate as many ideas as possible without critique, used to develop a preliminary mission statement and find innovative solutions.

Signup and view all the flashcards

Joint Application Development (JAD)

Structured brainstorming to gather and consolidate large amounts of information where stakeholders and project teams works together to identify the requirements.

Signup and view all the flashcards

Effective use of Group Dynamics

Utilizing facilitated and directed group sessions to get common understanding and universal buy-in.

Signup and view all the flashcards

Join Application Development(JAD)

Four Main Principles such as visual aids, effective dynamics, defined practices, and standardized forms

Signup and view all the flashcards

Join Application Development(JAD)

Making decisions on different aspects of a project, used where consensus-based decision making across functional areas is required, e.g., planning a project, defining requirements, and designing a solution

Signup and view all the flashcards

Prototyping

supporting the requirement gathering process, helping stakeholders visualize the functionality of a system, and identifying gaps early on.

Signup and view all the flashcards

Software Requirements Prototype

Mock-ups, system requirements, and software itself

Signup and view all the flashcards

Horizontal

focus on one layer – e.g., user interface

Signup and view all the flashcards

Vertical

slice of the real system

Signup and view all the flashcards

Evolutive

turned into a product incrementally, gives users a working system more quickly (begins with requirements that are more understood)

Signup and view all the flashcards

Throw-away

less precise, thrown away, focusing on the less well-understood aspects of the system to design, designed to elicit or validate requirements

Signup and view all the flashcards

Fidelity

the extent to which the prototype is real and (especially) reactive

Signup and view all the flashcards

High-fidelity

in the high mode, you press a button and something happens and it Often involves programming or executable modeling languages

Signup and view all the flashcards

Low-fidelity

not operated – it is static

Signup and view all the flashcards

Requirement Workshop

A structured way to capture requirements.

Signup and view all the flashcards

Reverse Engineering

A elicitation technique generally used in migration projects, reverse engineered to understand what the system does. implemented requirements from the system.

Signup and view all the flashcards

Black box reverse engineering

One reverse engineering technique: The system is studied without examining its internal structure (function and composition of software).

Signup and view all the flashcards

White box reverse engineering

One reverse engineering technique, the inner workings of the system are studied (analysing and understanding of software code)

Signup and view all the flashcards

Study Notes

  • Software Requirements and Specifications is the course name
  • The instructor is Dr. Rasha Kashef, from the Dept. of Electrical, Computer Engineering, and Biomedical Engineering at Ryerson University

Last Week's Topics

  • Requirements Inception
  • Primary investigation procedure
  • Requirements Elicitations
  • Requirement Resources
  • Stakeholder Analysis
  • Elicitation Techniques

Week 4 Agenda

  • Requirements Elicitation Techniques with focus on classical and modern techniques

Basic Elicitation Points

  • Elicitation is not simply acquiring information
  • Requirements are not readily available like sensor data; they need systematic understanding
  • Elicitation is distinct from specification and modeling
  • Requirements Engineering determines the success of the mission
  • Elicitation determines success of the Requirements Engineering process

Requirements Elicitation Definition

  • Acquiring all relevant knowledge to produce a requirements model of a problem domain
  • Understanding a particular problem domain is crucial as an analyst, then formally stating the problem, then having the user validate the requirements

Process of User Requirements Elicitation

  • Understanding the application domain
  • Identifying the sources of requirements
  • Analyzing the stakeholders
  • Selecting the techniques and approaches to use
  • Eliciting the requirements
  • Classifying and organizing the requirements
  • Negotiating the requirements
  • Prioritizing the requirements
  • Defining and documenting the requirements
  • Validating the requirements

Elicitation Techniques

  • It's difficult to determine which technique is universally suitable for all projects
  • Not all techniques can be used for every project
  • There isn't a single universally best methodology
  • Methodologies might be combined in certain cases
  • When selecting a method, consider factors like the project's nature, organizational structure, and type of stakeholders
  • Widely used techniques include brainstorming, document analysis, interviews, prototyping, and workshops

Specific Elicitation Techniques

  • Questionnaires are considered useful
  • Interviewing is a useful elicitation techique
  • Use cases and scenarios are applicable
  • Analyzing existing systems helps to find new solutions
  • Documentation Analysis can play a role
  • Discourse analysis also applies
  • Task observation is a key analysis technique
  • Brainstorming for ideas
  • Ethnography helps understand the users
  • Joint Application Development (JAD)
  • Prototyping
  • Pilot system for early feedback
  • Reverse Engineering is when you understand the existing solution

Classic Requirements Elicitation Techniques

  • These techniques have historically been used for a long time
  • They are tested and proven methods, like interviews and questionnaires
  • Introspection is considered a classic technique
  • Analyzing Existing Systems
  • Document Analysis
  • Observation and Social Analysis

Modern Requirements Elicitation Techniques

  • Modern techniques involve scenarios
  • Brainstorming which expands on ideas
  • Prototyping
  • Joint/Rapid Application Development
  • Task Analysis
  • Workshops
  • Reverse Engineering
  • Domain Analysis
  • Goal modeling
  • Etc.

Introspection Elicitation Technique

  • Analyst imagines what kind of system is required based on what the users and stakeholders want and need
  • Mainly used as a starting point for other requirements elicitation efforts

Advantages of Introspection

  • Helps other elicitation techniques and is a good starting point
  • There are almost no costs to this technique

Disadvantages of Introspection

  • Can be very inaccurate
  • Unlikely to reflect stakeholder’s goals
  • Analyst should be familiar with the domain and goals of the system, and should be expert in the business processes of the users
  • Requires a large amount of experience from the requirement analyst

Analysis of Existing Systems Elicitation Technique

  • Useful when building a new improved version of an existing system
  • Should know what is used, not used, or missing
  • Should know what works well, and what does not work

Why Analysis of Existing Systems?

  • Users tend to dislike a new system if it is too different or doesn't do what they want, creating nostalgia for the old system
  • Can help to catch obvious possible improvements, like missing features
  • Used to find out which "legacy" features can/cannot be left out

Document Analysis Elicitation Technique

  • One of the most helpful elicitation techniques in understanding the current process
  • User manuals, software vendor manuals, and process documents about the current system can be useful

Steps

  • Evaluate whether the existing docs are appropriate to study
  • Analysing the docs to identify business details
  • Reviewing and confirming identified details with subject matter experts

Documents Analysis Details

  • Start with reading available documentation like user guides, development documents, change histories, intermal memos etc
  • Often the docs are out of date, incorrect etc, but still useful as a starting point
  • Discourse Analysis is when word choice and spoken language is examined

Observation/Social Analysis Elicitation technique

  • Also known as Observation
  • Collecting requirements by observing the users while doing their normal work
  • Generally used to determine additional requirements the user needs

Observations Elicitation Technique

  • Can be supplemented later with questionnaires
  • Based on what you know now from observation to answer questions
  • Provides corroboration (confirmation)
  • Can obtain statistics from a large number of users i.e. "how often do you use feature X?"
  • Can be supplemented later with interviews
  • Getting a better idea of what is to be done, results in more detailed answers
  • Can find out what features they would use
  • If done wrong can be a waste of time and labour intensive

Social Analysis Types

  • Passive observations are carried out without direct involvement of the observer. Observations are recorded using cameras etc. The problems and requirements are then prepared from the recorded data
  • Active observation is carried out with the direct involvement of the observer. People are provided a new product prototype or existing product to perform tasks. The observer provides domain knowledge to the user and reports on requirements

Social Analysis Types (continued)

  • Explanatory Observations are carried out when the user explains what they are doing while using the product, the observer takes notes
  • Ethnography involves the observer being completely immersed in the society. The observer thoroughly observers the users and their work. It is time consuming and expensive to gather the requirements

Ethnography Details

  • Derived from anthropology, writing the culture
  • People often find it hard to describe what they do because it is so natural to them
  • Sometimes to understand, you need to observe
  • Useful in understanding real wok processes from observation and work analysis
  • Aims to describe those who are studied through writing
  • Attempts to discover implicit and non obvious factors
  • Seeks to explore the human factors and social organization of activities

Ethnography Additional details

  • Discoveries are made by observation and analysis, workers are not asked to explain what they do
  • Collect what is ordinary/what is it that people do (aim at making the implicit explicit)
  • Study the context of work and watch work being done

Ethnography Examples

  • Helpful to discover what a nuclear technician does during the day
  • Helpful to discover what their workspace looks like

Ethnography Technique Benefits

  • Especially useful when addressing contextual factors such as usability
  • Applicable when investigating collaborative work settings where the understanding of interactions are paramount

Ethnography Uses

  • Effective when the need for a new system is a result of existing problems with processes and procedures
  • Useful in identifying social patterns and complex relationships between human stakeholders

Ethnography Example

  • Sommerville et al. were involved in a project where they had to elicit the requirements of an air traffic control system
  • Observed the air traffic controllers in action with the exisiting system
  • Found the controllers often put aircrafts on potentially conflicting headings with the intention of fixing them later, and closed alarms because they where annoyed by alarm sounds
  • The accurate observation was the controllers dont like being treated like idiots

Advantages of Ethnography

  • Useful to collect quality attributes requirements like usability
  • Effective when determining the social factors

Disadvantages of Ethnography

  • Fails in many cases because there are so much diverse communities of people belonging to different social and ethical sects
  • Is difficult to analyze the social requirements and hence the psychologists are required to provide their services

Task Analysis Elicitation Technique

  • Employs a top-down approach where high-level tasks are decomposed into subtasks and eventually detailed sequences until all actions and events are described
  • The primary objective is to construct a hierarchy of the tasks performed by the users and system
  • Determines what knowledge is used or required to carry them out
  • Provides information on the interactions of both the user and the system within the tasks
  • Considerable effort is required and the level of detail is needed for the level of exploration

Advantages of Task Analysis

  • Provides interaction of user and system
  • Used by the project manager to mange user and system tasks

Disadvantages of Task Analysis

  • Requires a lot of effort compared to interviewing
  • Requires a lot of detail for the low-level tasks

Brainstorming Elicitation Technique

  • Participants from different stakeholder groups engage in informal discussion to generate many ideas without focusing on any one in particular
  • Not intended to explore or critique ideas in detail and used to resolve major issues
  • Used to develop preliminary mission statement for the project and target system
  • Advantage is promoting freethinking and allowing/discovery of new ideas

Brainstorming Facts

  • To invent a new way of doing things or when there is little known
  • When few or too many ideas, specifically early on in a project
  • Useful where there is little expertise for the type of application or important innovation

Brainstorming Activities

  • Storm: Generating as many ideas as possible (quantity, not quality)
  • Calm: Filtering out of ideas to keep the best and may require voting

Brainstorming - Objectives

  • Hear ideas from everyone, especially unconventional ideas
  • Keep the tone informal and non-judgemental
  • Keep the number of participants “reasonable“ – invite more creative people to future sessions
  • Encourage creativity and choose good, provocative project name with a good problem statement
  • Having a a room without distractions, but with good acoustics, whiteboards, coloured pens, provide coffee/donuts/pizza/beer

Advantages of Brainstorming

  • Are mostly used for the innovative sort of projects where each participant provides his or her own ideas
  • Make the key decisions about the requirements of the project
  • Promotes free thinking and expression of ideas
  • Provides the innovative ideas about the project to be developed

Joint Application Development (JAD) Details

  • Developed at IBM in the 1970s
  • A structured brainstorming IBM-style with lots of success stories
  • An extended session to the workshop
  • Stakeholders and project team work together to identify the requirements
  • Sessions allow the business team together to gather and consolidate large amounts of information

Joint Application Development Details (cont)

  • Identification of stakeholders is critical, including business process owners, client representatives or project managers, IT experts (developers, quality assurance)
  • A more structured and intensive brainstorming approach
  • Several activities and six (human) roles to be played
  • JAD session may last few days

Joint Application Development (JAD) - Main Principles

  • Group Session Dynamics is key
  • Facilitated and directed group sessions for common/universal understanding and universal buy-in
  • Enhancing understanding with visual aids, props, prepared digrams
  • Defined process with standardized forms for document results

Joint Application Development (JAD) Purpose

  • Used for consensus-based decision making across functional areas
  • Planning a project
  • Defining requirements
  • Designing a solution

Joint Application Design – Activities

  • Start with Preparation, then have a Working Session, then a Summary

Joint Application Design – Pre-session Planning

  • Preparation is essential as is not informal
  • Evaluate project to identify contentous scope items
  • Select JAD participants and enable them to prepare
  • Create prelimenary addenda
  • Determine deliverables for the session

The 6 “P”s

  • Purpose: Why do we do things? (Goals, needs, motivation)
  • Participants: - Who is involved? (People, roles, responsibilities)
  • Principles: - How do we function? (Guidelines, working agreements, ground rules)
  • Products: - What do we create? (Deliverables, decisions, plans, next steps)
  • Place: - Where is it located? (Venue, logistics)
  • Process: - When do we do what? (Activities, sequence)

Joint Application Design – Pre-work

  • Gather information and clear schedules
  • Refine session agenda and finalize assignments
  • Prepare materials i.e. pizza!

Joint Application Design - Working Session

  • Set-up and start of Brainstorming to achieve consensus on decisions
  • Generate ownership of results and create definable deliverables
  • Identify open questions

Joint Application Development - Follow-up and Wrap-up

  • Resolve open issues and Follow-up on items
  • Re-evaluate results and the process
  • Discuss lessons learned and finalize deliverables

Joint Application Development – Roles

  • Session leader: Organizer, facilitator, JAD expert whom is good with people skills
  • Analyst produces official JAD documents, and have experience developer level overview of the entire solution
  • Executive sponsor provides insight into company’s goals and makes final decisions
  • User representatives are knowledgeable end-users and managers with prepared ideas
  • Information system representatives are technical experts
  • Specialists have specific security knowledge

Advantages of JAD

  • Provides the rapid decision making about the problem and also the solution of the problem
  • Handles the requirements that can be rapidly changed
  • Provides well formated structure with communication between stakeholers

Disadvantages of JAD

  • Sometime the rapid solution it provides cant accurately validate
  • The team must possess previous domain knowledge

Prototyping Elicitation Technique

  • Screen mock-ups support the requirement gathering process by helping stakeholders visualize functionality

Software Requirements Prototype

  • Can improve the developers, customers and users
  • Clarifies requirements, response early, and addresses specific problems
  • Prototyping is effective in uncertainty

Prototyping Facts

  • Focus development on uncertain parts and encourage user participation

Prototyping – Realizations

  • Take many forms depending on needs i.e. paper, screen
  • Interactive prototypes use VB, Python and Flash

Prototyping – Types

  • Horizontal: focus on one layer – e.g., user interface
  • Vertical: a slice of the real system
  • Evolutive: turned into a product incrementally (begins with requirements that are more understood)
  • Throw-away: focusing on the less well-understood aspects of the system to design

Prototyping - Fidelity

  • Extent to which the prototype is real

- High

  • Button press leads to something
  • Advantage is understanding and risk mitigation
  • Disadvantage, time consuming and focuses of the less important issues

Prototyping - Fidelity (continued)

Low Fidelty

  • Static and not operators
  • Easy, quick and good with interfaces
  • Does not cover all aspects of interfaces, and maybe non-professional

Prototyping - Risks and Problems

  • Prototypes that focus on user-interface tends to lose the focus of demonstrating/exploring functionality
  • Unrealistic expectations and do not end-up considering a throwaway prototype as part of the products

Problems with prototyping

  • Training costs
  • Extended development schedules
  • Incompleteness may be a source

Workshops Elicitation Technique

  • Comprise a group of users or stakeholders working together to identify requirements
  • Structured way to capture requirements and scope

Reverse Engineering Elicitation Technique

  • Elicitation technique is generally used in migration projects

Two Types

  • Black box reverse engineering: The system is studied without examining its internal structure
  • White box reverse engineering: The inner workings of the system are studied

Data Gathering techniques

  • Questionnaires, Interviews, Focus Groups, and workshops are all valid methods for elicitation
  • They allow one to understand the customer and the product

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Requirement Elicitation Techniques
24 questions
Requirements Management and Elicitation
10 questions
Use Quizgecko on...
Browser
Browser