Week 2 Flashcards

1
Q

What is the moving target problem?

A

▪ A change in the requirements while the software product is being
developed
▪ Any change made to a software product can potentially cause a
regression fault
* A fault in an apparently unrelated part of the software
▪ If there are too many changes
* The entire product may have to be redesigned and re-implemented

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are Functional User Requirements?

A

▪ Should describe the user requirements
in detail.
▪ Map a problem to a solution without
implementation detail and in the user’s
language.
▪ Describe the interaction between the
system and its environment.
▪ The details of a requirement can highly
affect your planning and negotiation
with the client.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are Non-Functional User Requirements?

A

▪ Quality Attributes:
* Reliability
* Security
* Usability
* Performance
▪ Design Constraints
* Platform constraints
* Response time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the 7 guidelines of a good requirement?

A

Verifiable
Clear & Concise
Viable
Traceable
Consistent
Implementation Free
Complete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the 4 ways of writing requirements?

A

Natural Language
Structured Natural Language
Mathematical specifications/Formal Specification
Graphical Notions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How to write Natural Language Specifications?

A

*The requirements are
written using numbered
sentences in natural
language.
*Each sentence should
express one requirement.
*Supplemented by
diagrams and tables

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Benefits of Natural Language Specifications

A

Expressive, intuitive and universal. This means that the requirements can
be understood by users and customers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Problems of Natural Language Specifications

A
  • Lack of clarity: Precision is difficult without making the document
    difficult to read.
  • Requirements confusion: Functional and non-functional requirements
    tend to be mixed-up.
  • Requirements mix: Several different requirements may be expressed
    together.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How to write Structured Natural Language Specifications?

A

▪ Requirements are written in a standard way.
▪ Example of form-based specification:
* Definition of the function or entity.
* Description of inputs and where they come from.
* Description of outputs and where they go to.
* Information about the information needed for the
computation and other entities used.
* Description of the action to be taken.
* Pre and post conditions (if appropriate).
* The side effects (if any) of the function.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is meant by Formal specification

A

These notations are based on mathematical concepts such as
finite-state machines or sets.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Advantages of Formal Specification

A

▪ Unambiguous
specifications, can
reduce the ambiguity in
a requirements
document

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Disadvantages of Formal Specification

A

▪ Requires experts and
takes more time.
▪ Most customers don’t
understand a formal
specification. They
cannot check that it
represents what they
want and are reluctant
to accept it as a system
contract

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is meant by Graphical Notations Specifications

A

▪ Graphical models, supplemented by text
annotations, are used to define the
functional requirements for the system;
▪ UML use case and sequence diagrams are
commonly used

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Why is it important to understand the domain?

A

▪ Every member of the development team must become fully
familiar with the application domain
* Correct terminology is essential
❖To avoid misunderstandings
❖To be taken seriously

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the various methods of Elicitation?

A
  1. Interviews
  2. Focus groups
  3. Documents
  4. Observations
  5. Prototyping
  6. Questionnaires
  7. Scenarios
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the 4 activities of Requirements Engineering?

A

Elicitation, Analysis, Validation, Management

17
Q

What are some validation techniques?

A

1) Requirements Reviews & Walkthrough
2) Prototyping
3) Test-case Generation

18
Q

How should you name actors?

A

Name Actors Based on the Functions It Plays

19
Q

Which of the following is an example of a non-functional requirement?
The system must generate monthly reports for management
The system must have a responsive user interface
The system must allow users to log in using their email address
The system must use a relational database

A

The system must have a responsive user interface

20
Q

What is an important factor to consider when setting project timelines?
Allowing for buffer time in case of delays
Making the timeline too long to ensure all tasks are completed leisurely
Setting an unrealistic timeline to motivate the team
Withholding information about the timeline to prevent undue stress on the team
None of these mentioned

A

Allowing for buffer time in case of delays

21
Q

In which phase of the software development life cycle (SDLC) are the user requirements documented and analyzed?

Maintenance
Requirements gathering
Planning
Implementation
Design

A

Requirements gathering

22
Q

What is the purpose of a feasibility study during requirements engineering?

To create a detailed software design
To assess the technical skills of the development team
To evaluate the cost-effectiveness and practicality of the software project
To determine if the software can be developed within the timeline

A

To evaluate the cost-effectiveness and practicality of the software project

23
Q

What is the main goal of requirements validation?

To finalize the requirements before development begins
To determine the optimal development methodology
To ensure that the requirements meet international standards
To identify conflicts, errors, and omissions in the requirements

A

To identify conflicts, errors, and omissions in the requirements.

24
Q

If a client wants to develop a software for commercial use that has a lot of its functions that are unconventional. How would you begin?

Conduct a focused interview
Don’t waste time with this client and move on to the next
None of these mentioned
Convince the client to keep it realistic

A

Conduct a focused interview

25
Q

What is the main objective of the requirements negotiation process?

To finalize the software architecture
To achieve consensus among stakeholders on conflicting requirements
To replace user requirements with technical specifications
To eliminate non-functional requirements

A

To achieve consensus among stakeholders on conflicting requirements

26
Q

Which of the following should be included in a project plan?

A list of team member’s performance scores
A list of team member’s personal phone numbers and addresses
None of these mentioned
Goals and objectives

A

Goals and objectives.

27
Q

If a client wants to develop a software for commercial use that has all its key functions available from an Off-The-shelf software. Only with very minimal refinements are required. What would you recommend your client to do?

Charge the client minimally as the changes are very minor
Charge the client highly
Suggest your client to get the Off-The-shelf software as there may be many IP challenges
None of these mentioned

A

Suggest your client to get the Off-The-shelf software as there may be many IP challenges.

28
Q

In which phase of the software development life cycle (SDLC) do you start coding?

Design
Implementation
Maintenance
Requirements gathering
Planning

A

Implementation

29
Q

Which of the following is a characteristic of a well-defined requirement?

Ambiguity
Completeness
Multiple interpretations
General wording

A

Completeness

30
Q

What is the most effective way of managing team conflicts?

None of these mentioned
Assigning blame to one person in particular
Ignoring the issue until it goes away
Discussing the issues openly and coming up with a solution together
Yelling and screaming at each other until one person backs down

A

Discussing the issues openly and coming up with a solution together

31
Q

What does the term “verifiable” mean in the context of requirements?

Requirements must be testable and measurable
Requirements must be documented using technical language
Requirements must be easy to understand
Requirements must be approved by a verification team

A

Requirements must be testable and measurable

32
Q

What does the term “elicitation” mean in the context of requirements engineering?

Prioritizing requirements
Reviewing and approving requirements
Documenting requirements
Collecting and discovering requirements from stakeholders

A

Collecting and discovering requirements from stakeholders

33
Q

Which of the following is a functional requirement?

The system must support 1000 concurrent users
The system must be developed using Java programming language
The system must allow users to create, edit, and delete documents
The system must be user-friendly

A

The system must allow users to create, edit, and delete documents

34
Q

What is an effective way to track project progress?

Conducting regular check-ins and giving clear feedback on progress
Assigning blame to one person in particular
None of these mentioned
Setting unrealistic goals to motivate the team
Allowing team members to work completely independently

A

Conducting regular check-ins and giving clear feedback on progress

35
Q

Which of the following is not an essential component of a software requirement specification (SRS)?

Functional requirements
Non-functional requirements
Acceptance criteria
Constraints and assumptions
Design diagrams

A

Constraints and assumptions

36
Q

Which SDLC model is best suited for projects with low risk and a fixed, well-defined scope?

Agile model
Iterative model
Waterfall model
Spiral model
Incremental model

A

Waterfall model

37
Q

Which of the following is an example of a communication barrier that may arise in a team project?

Language barriers
All team members have the same background and skill set
Everyone likes each other too much
Allowing team members to work completely independently
Having too many team meetings

A

Language barriers

38
Q

What is the purpose of establishing roles and responsibilities within a team?

To provide an outlet for frustration among team members
None of these mentioned
To ensure everyone is working on the same task
To make sure that all team members have an equal say in decision making
To ensure that the project is completed efficiently and effectively

A

To ensure that the project is completed efficiently and effectively

39
Q

test

A

test