Requirements Engineering Flashcards

1
Q

What are system requirements?

A

Requirements are defined during the early stages of a system development as a specification of what should be implemented or as a constraint of some kind on the system.

Examples:
* a user-level facility description
* a detailed specification of expected system behaviour
* a general system property
* a specific constraint on the system,
* information on how to carry out some computation
* a constraint on the development of the system.

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

Example of Requirements

A
  • Functional requirements
  • “If a patient is known to be allergic to a particular medication, then prescription of that medication
    shall result in a warning message being issued to to the prescriber”
  • Non-functional requirements
  • “The system shall be available to all clinics during normal working hours (Mon-Fri, 08:30-17:30).
    Downtime during normal working hours shall not exceed 5 seconds in any one day”
  • Domain requirements
  • “The system shall implement patient privacy provisions as set out in the Regulation (EU) 2016/679
    (General Data Protection Regulation).”
  • The European Data Protection Regulation was applicable as of May 25th, 2018 in all member states
    to harmonise data privacy laws across Europe.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Requirements engineering?

A

Requirements Engineering is a field that covers all of the activities involved in discovering, documenting, and maintaining a set of requirements for a computer-based system.

Extra Note: The use of the term ‘engineering’ implies that systematic and repeatable techniques should be used to ensure that system requirements are complete,
consistent, relevant, etc.

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

What happens if the requirements are incorrect?

A

The system may be delivered late and cost more than originally expected.

The customer and end-users are not satisfied with the system. They may not use its facilities or may even decide to scrap it altogether.

The system may be unreliable in use with regular system errors and crashes disrupting normal operation.

If the system continues in use, the costs of maintaining and evolving the system are very high.

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

Why is Requirements Engineering generally difficult? (4 reasons)

A

Changing Environments:
- Businesses operate in a rapidly changing environment so their requirements for system support are
constantly changing.

Differing Views:
- Multiple stakeholders with different goals and priorities are involved in the requirements engineering process.

Unclear Opinions:
- Systems stakeholders do not have clear ideas about the system support that they need.

Politics and people:
- Requirements are often influenced by political and organisational factors that stakeholders will not admit to publicly.

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

Name and Describe each key terms related/aid to Requirements Engineering?

A

Stakeholders
- People or roles who are affected, in some way, by a system and so who can contribute requirements or
knowledge to help you understand the requirements.
- Example (Medical System Stakeholders):
- Doctors
- Nurses
- Patients
- Hospital managers
- Administrators
- Owners of other connected systems
- System designers

Viewpoints
- Viewpoints are a way of organising and grouping requirements that have been obtained from stakeholders.
- The requirements generally represent the views and needs of a class or type of stakeholder.
Examples of viewpoints:
- End-user viewpoint
- Managerial viewpoint
- System administration viewpoint
- Engineering viewpoint

Concerns
- Issues that an organisation must pay attention to and that apply to the system as a whole.
- These are issues that may affect all system stakeholders and the requirements from these stakeholders.
- Concerns help bridge the gap between organisational goals (what the organisation has to achieve) and system requirements (how a system
contributes to these goals).

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

What/How are the processes involved in requirements engineering?

A

Lecture week 4 - slides 44, 45, 46 explain more via diagrams.

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

Name examples of system requirement changes?

A

Context: System requirements reflect the world outside of the system. As this is constantly changing then the requirements will inevitably also change.

Examples:
- Technology Changes
- Organisational Changes
- Market Changes
- Economic Changes
- Political and legal Changes

Note: It is often difficult to understand the implications of changes for the requirements as a
whole.

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

List examples of stakeholder perspectives on a system

A

Social Perspective
Certification Perspective
User Perspective
Management Perspective
Technical Perspective

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

How can we ‘compare’ different sets of the requirements?

A

There are no objective ways to compare alternative sets of requirements.

The impact of a system on a business is very hard to understand so therefore we cannot tell which might be the ‘best’ system for any particular business.

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

How can we determine the level of detail required in a requirements specification.

A

The level of detail required in a requirements specification differs greatly depending on the type of product that is being developed.

  • A railway signalling system is a very detailed specification that can be
    validated by authorities outside of the organisation procuring the software
  • A computer game specification is a storyboard with pictures and examples
  • They use completely different processes involving different types of people to derive these specifications
  • Scope for process standardisation and support is therefore limited
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How can Politics and People affect the system requirements?

A
  • Many system requirements are influenced by the politics in an organisation. Decisions on requirements are not made on a rational basis but are made
    because of the personal goals of stakeholders
  • Requirements engineers may not understand the politics and, even when they do, they may not be able to challenge the ‘political’ requirements
  • People providing requirements for a system may not be convinced that the system is necessary or may feel that other systems should have a higher priority. They may actively or passively refuse to cooperate in the
    requirements engineering process.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Summary of Topic (Requirements Engineering)

A
  • Requirements engineering is a key component of system development
    processes
  • If we pay attention to requirements, we reduce later problems in system development and operation
  • Requirements engineering will always be difficult because the requirements are reflections of a rapidly changing business environment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly