Wiegers, Chapter 7: Requirements Elicitation

अब Quizwiz के साथ अपने होमवर्क और परीक्षाओं को एस करें!

A better question is

"What do you need to do?"

When working on a replacement project ask...

"What three things annoy you the most about the existing system?"

Elicitation is

A collaborative and analytical process that includes activities to collect, discover, extract, and define requirements.

The output of requirements development is

A common understanding of the needs held by the diverse project stakeholders

Anything that doesn't fit into our categories might be

A project requirement (need to train users) A project constraint (cost, schedule restriction) An assumption or a dependency Additional info Extraneous information without value

Solution idea

A specific way to interact with the system to perform some action

Requirements workshop is

A structured meeting in which a carefully selected group of stakeholders and content experts work together to define, create, refine, and reach closure on deliverables that represent user requirements

UI analysis is

An independent elicitation technique in which you study existing systems to discover user and functional requirements

Business Requirements

Anything that describes the financial, marketplace, or other business benefit that either customers or the development organization wish to gain from the product is a BReq

Take good notes

Assign sb to be the scribe, responsible for taking accurate notes. Session notes should contain an attendee list, invitees who did not attend, decisions made, actions to be taken and who is responsible for each, outstanding issues, and the high points of key discussions

Cautions about elicitation

Balance stakeholder representation Define scope appropriately Avoid the requirements-versus-design argument Research within reason

Categories of customer input

Business Requirements (BReq) User Requirements (UR) Business Rules (BRl) Functional Requirements (FR) Quality Attributes (QA) External Interface Requirements (EIR) Constraints (C) Data Requirements (DR) Solution Ideas (Sol.Id.) Data Definition (DD)

Following up after elicitation

Consolidate input from multiple sources. Review and update notes soon after the session is complete, while the content is still fresh in your mind.

Prepare for elicitation (activities)

Decide on elicitation scope and agenda Prepare resources Prepare questions and straw man models

Plan session scope and agenda

Decide on the scope of the elicitation session, taking into account how much time is available.

Elicitation strategy and planned techniques

Decide which techniques to use with different stakeholder groups

To find missing requirements:

Decompose high-level requirements into enough detail Ensure that all user classes have provided input Trace SR, UR, event-response lists, and BRls to their FRs to make sure that all necessary functionality is derived Check boundary values for missing requirements Represent requirements information in more than one way Create a checklist of common functional areas to consider for your projects Create a data model

Expected products of elicitation efforts

Define the outcomes of elicitation activities

External Interface Requirements

Describe the connections between your system and the rest of the universe.

Tips for performing elicitation activities

Educate stakeholders Take good notes Exploit the physical space

Workshops are used to

Elicit requirements from multiple stakeholders concurrently

Interviews are also appropriate for

Eliciting business requirements from executives who don't have a lot of time to meet

Tips for conducting workshops

Establish and enforce ground rules Fill all of the team roles Plan an agenda Stay in scope Use flipcharts to capture items for later consideration Timebox discussions Keep the team small but include the right stakeholders Keep everyone engaged

Useful tips for conducting interviews

Establish rapport Stay in scope Prepare questions and straw man models ahead of time Suggest ideas Listen actively

Document analysis

Examining any existing documentation for potential software requirements

Functional Requirements

FR describe the observable behaviors the systems will exhibit under certain conditions and the actions the system will let users take

Data requirements

Format, data type, allowed values, or default value for a data element

User Requirements

General statements of user goals or business tasks that users need to perform (use cases, scenarios, user stories)

Prepare questions

Go into every facilitated elicitation session with a set of prepared questions

Schedule and resource estimates

Identify both customer and development participants for the various elicitation activities, along with estimates of the effort and calendar time required

Elicitation risks

Identify factors that could impede your ability to complete the elicitation activities as intended, estimate the severity of each risk, and decide how you can mitigate or control it

Documents and systems needed for independent elicitation

Identify the materials needed to ensure that you have docs when you need them

Learn about the stakeholders

Identify the relevant stakeholders for the session, learn about their cultural and regional preferences for meetings.

Focus group

Is 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

Follow up after elicitation (activities)

Organize and share notes Document open issues

Perform elicitation (activities)

Perform elicitation session

Tips for preparing for elicitation

Plan session scope and agenda Prepare resources Learn about the stakeholders Prepare questions

Tips for writing questionnaires

Provide answer option that cover the full set of possible responses Make answer choices both mutually exclusive and exhaustive Don't phrase a question in a way that implies a "correct" answer If you use scales, use them consistently throughout the questionnaire Use closed questions with two or more specific choices if you want to use the questionnaire results for statistical analysis Consider consulting with an expert in questionnaire design to ensure that you ask the right questions of the right people Always test a questionnaire before distributing it Don't ask too many questions or people won't respond

Constraints

Restrict the options available to the developer.

Prepare resources

Schedule the physical resources needed, such as rooms, projectors, teleconference numbers, and videoconferencing equipment; and participants being sensitive to time zone differences.

Comparative reviews point out

Shortcomings in other products that you could address to gain a competitive advantage

Quality Attributes

Statements that describe how well the system does something are QA. (fast, user-friendly, reliable, secure)

Educate stakeholders

Teach your SHs about your elicitation approach and why you chose it, explain techniques you'll be using and how they can help provide better requirements

Facilitation is

The art of leading people through processes toward agreed-upon objectives in a manner that encourages participation, ownership, and productivity from all involved

An elicitation plan includes

The techniques you'll use, when you plan to use them, and for what purpose

Exploit the physical space

Use something to draw diagrams or create lists

Business Ruless

When a customer says that only certain users perform an activity under specific conditions, he might be presenting a BR

Questionnaires are

an inexpensive way to survey large groups of users to understand their needs

Hold additional discussions to resolve...

any inconsistencies and to fill in any blanks.

Implied requirements

are necessary because of another requirement but aren't explicitly stated

Assumed requirements

are those that people expect without having explicitly expressed them

Interface analysis

entails examining the systems to which your systems connect, reveals functional requirements regarding the exchange of data and services between systems

Plan the elicitation objectives...

for the entire project and the objective for each planned elicitation activity

For observations in agile,

have the user demonstrate only the specific tasks related to the forthcoming iteration

For observations, select

important or high-risk tasks and multiple user classes

If you are new to an application domain,

interviews with experts can help you get up to speed quickly

Imagine yourself learning the user's job,

or actually do the job under the user's direction

The most useful documentation includes

requirements specifications, business processes, lessons-learned collections, and user manuals for existing or similar applications

Soon after each activity,

share the consolidated notes with the participants and ask them to review them to ensure that they accurately represent the session

Probe around...

the exceptions. What could prevent the user from successfully completing a task? How should the system respond to various error conditions?

Document...

the source of each requirement so that you can obtain further clarification if needed and trace development activities back to specific customer origins

Goal of elicitation is

to accumulate a shared understanding of requirements that is good enough to let construction of the next release or increment proceed at an acceptable level of risk

Phrase questions...

to avoid leading customers down an unintended path or a specific answer

Elicitation is used

to discover business, user, functional, and nonfunctional requiremtns, along with other types of information.

To facilitate clear communication,

use the vocabulary of the business domain instead of forcing customers to understand technical jargon

Observing users helps to

validate information collected from other sources, identify new topics for interviews, see problems with the current system


संबंधित स्टडी सेट्स

ITALIAN CULTURE THROUGH MUSIC MIDTERM

View Set

EMT Pocket Prep: SIGW w/explanations

View Set

FI 305 Morosan - Chapters 9 & 10

View Set

EDAPT Week 4 Professional Use of Electronic Media

View Set

Chapter 3 Energy, Chemical Reactions, and Cellular Respiration

View Set