/
Requirements Engineering Techniques
Save to my account
Sign up
Requirements Engineering Techniques
Requirements Engineering Techniques
Study
1
Question
What are system requirements in requirements engineering?
Answer
Descriptions of system services and constraints generated during the requirements engineering process, ranging from high-level statements to detailed functional specifications.
2
Question
Name four generic activities common to all requirements engineering processes.
Answer
1. Requirements elicitation, 2. Requirements specification, 3. Requirements validation, 4. Requirements management.
3
Question
What is requirements elicitation (or discovery)?
Answer
Involves technical staff working with customers to find out about the application domain, the services that the system should provide, and the system's operational constraints.
4
Question
Who are stakeholders in requirements elicitation?
Answer
End-users, managers, engineers involved in maintenance, domain experts, trade unions, etc.
5
Question
Name some traditional requirements elicitation techniques.
Answer
Interviewing and Listening, Interviewing Groups, SurveyQuestionnaire, Ethnography, Analyzing procedures and other documents
6
Question
Name some modern requirements elicitation techniques.
Answer
Joint Application Design, Case tools, Prototyping
7
Question
What are the two types of interviews?
Answer
Closed interviews (based on a pre-determined list of questions) and Open interviews (where various issues are explored with stakeholders).
8
Question
What makes an interview effective?
Answer
Being open-minded, avoiding pre-conceived ideas, listening to stakeholders, prompting discussions, and using a mix of closed and open-ended interviewing.
9
Question
What are some problems with interviews?
Answer
Application specialists may use difficult language, interviews may not be good for understanding domain requirements, and familiar domain knowledge may be overlooked.
10
Question
What are the advantages of group interviews?
Answer
More effective use of time, can hear agreements and disagreements at once.
11
Question
What are the disadvantages of group interviews?
Answer
More difficult to schedule than individual interviews
12
Question
What is ethnography and what is it useful for?
Answer
Spending time observing and analyzing how people actually work, effective to understand existing processes.
13
Question
What are the limitations of ethnography in RE?
Answer
Cannot identify new features that should be added
14
Question
What is the Nominal Group Technique (NGT)?
Answer
A facilitated process that supports idea generation by groups where members work separately initially, then discuss and prioritize ideas together.
15
Question
What is the purpose of a Survey/Questionnaire?
Answer
To elicit business analysis information (customers, products, practices, attitudes) from a group in a structured way, in a short period of time.
16
Question
What are the two types of questions used in a survey or questionnaire?
Answer
Close-ended (easier to analyze) and Open-ended (useful when issues are known but responses are wide-ranging).
17
Question
What are the strengths of using a Survey/Questionnaire?
Answer
Relatively inexpensive, collects information from a larger audience, doesn't require significant time, suitable for geographically dispersed stakeholders, effective for quantitative data.
18
Question
What are the limitations of using a Survey/Questionnaire?
Answer
Specialized statistical sampling skills needed, potentially low response rates, open-ended questions require more analysis, ambiguous questions can lead to incorrect answers and require follow-up.
19
Question
What is Joint Application Design (JAD)?
Answer
Brings together key users, managers, and systems analysts to collect system requirements simultaneously.
20
Question
What is the purpose of JAD?
Answer
Collect systems requirements simultaneously from key people involved with the system (users, managers, analysts).
21
Question
Describe the JAD process.
Answer
Intensive, group-oriented, conducted off-site, highly focused, and structured for effectiveness.
22
Question
What is the purpose of CASE tools?
Answer
Analyze existing systems and help discover requirements to meet changing business conditions.
23
Question
What are System prototypes?
Answer
Iterative development process where a basic working version of the system is built to refine the understanding of system requirements in concrete terms.
24
Question
What is the purpose of Joint Application Design (JAD)?
Answer
To resolve conflicts and understand why a conflict may not be simple to resolve.
25
Question
What are the roles of JAD participants?
Answer
Session Leader: Facilitates group process, manages the group and sets the agenda. Users: Active, speaking participants. Managers: Active, speaking participants. Sponsor: High-level champion, limited participation. Scribe: Records session activities. Systems Analysts and IS Staff: Mostly listen.
26
Question
What is the end result of Joint Application Design (JAD)?
Answer
Documentation detailing existing system features and proposed system features.
27
Question
How are CASE tools used during JAD?
Answer
To enable analysts to enter system models directly into CASE during the JAD session. Screen designs and prototyping can be done during JAD and shown to users.
28
Question
What is prototyping?
Answer
An iterative process that creates a model or design of requirements to elicit and validate stakeholder needs, optimize user experience, evaluate design options, and serve as a basis for development of the final business solution.
29
Question
When is prototyping most useful?
Answer
When user requests are not clear, few users are involved in the system, designs are complex, and there is a history of communication problems between analysts and users.
30
Question
What are the drawbacks of prototyping?
Answer
Difficult to adapt to more general user audience, technology needs to be understood, unrealistic expectations for the final solution, higher expectations of performance, reliability, and usability, and focus on design specifications rather than non-functional requirements.