Part II - Dependability and Security Flashcards

1
Q

Why is system dependability important?

A

System dependability is important because failure of critical computer systems can lead to large economic losses, serious information loss, physical damage or threats to human life.

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

What is system dependability, and what are its sub categories?

A

The dependability of a computer system is a system property that reflects the user’s degree of trust in the system. The most important dimensions of dependability are availability, reliability, safety, security, and resilience.

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

What is a sociotechnical system?

A

Sociotechnical systems include computer hardware, software, and people, and are situated within an organization. They are designed to support organizational or business goals and objectives.

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

Describe the process of making a system dependable

A

The process should include verification and validation activities at all stages, from requirements definition through to system implementation.

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

What is a formal method of dependability, and why is it not widely used?

A

Formal methods, where a formal model of a system is used as a basis for development, help reduce the number of specification and implementation errors in a system. However, formal methods have had a limited take-up in industry because of concerns about the cost-effectiveness of this approach.

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

How do you make a system reliable?

A

By avoiding the introduction of faults, by detecting and removing faults before system deployment, and by including fault-tolerance facilities that allow the system to remain operational after a fault has caused a system failure.

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

What are some reliability metrics?

A

Reliability metrics include probability of failure on demand (POFOD), rate of occurrence of fail- ure (ROCOF), and availability (AVAIL).

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

How can you tell if a system is reliable?

A

By checking if the system meets the defined reliability requirements, such as checking and redundancy requirements, which help the system meet its non-functional reliability requirements.

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

What kinds of features are stressed in dependable system specific architectures?

A

Dependable system architectures are system architectures that are designed for fault tolerance. A number of architectural styles support fault tolerance, including protection systems, self- monitoring architectures, and N-version programming.

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

Why is it so difficult to ensure software diversity?

A

Software diversity is difficult to achieve because it is practically impossible to ensure that each version of the software is truly independent.

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

How does one implement dependable programming?

A

Dependable programming relies on including redundancy in a program as checks on the validity of inputs and the values of program variables.

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

How does one test the reliability of a system?

A

Statistical testing is used to estimate software reliability. It relies on testing the system with test data that matches an operational profile, which reflects the distribution of inputs to the software when it is in use.

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

What is a safety critical system?

A

Safety-critical systems are systems whose failure can lead to human injury or death.

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

How does one control potential hazards?

A

A hazard-driven approach may be used to understand the safety requirements for safety-critical systems. You identify potential hazards and decompose them (using methods such as fault tree analysis) to discover their root causes. You then specify requirements to avoid or recover from these problems.

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

What should someone do if they were designing a safety critical system?

A

It is important to have a well-defined, certified process for safety-critical systems development. The process should include the identification and monitoring of potential hazards.

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

What is static analysis

A

Static analysis is an approach to V & V that examines the source code (or other representation) of a system, looking for errors and anomalies. It allows all parts of a program to be checked, not just those parts that are exercised by system tests.

17
Q

What is model checking?

A

Model checking is a formal approach to static analysis that exhaustively checks all states in a system for potential errors.

18
Q

What is security engineering?

A

Security engineering focuses on how to develop and maintain software systems that can resist malicious attacks intended to damage a computer-based system or its data.

19
Q

What kinds of security threats exist?

A

Security threats can be threats to the confidentiality, integrity, or availability of a system or its data.

20
Q

How does one handle security risks?

A

Security risk management involves assessing the losses that might ensue from attacks on a system, and deriving security requirements that are aimed at eliminating or reducing these losses.

21
Q

How does one define security requirements?

A

To specify security requirements, you should identify the assets that are to be protected and define how security techniques and technology should be used to protect these assets.

22
Q

How can one organize a system to increase security?

A

Key issues when designing a secure systems architecture include organizing the system structure to protect key assets and distributing the system assets to minimize the losses from a successful attack.

23
Q

How can one organize a system to increase security?

A

Key issues when designing a secure systems architecture include organizing the system structure to protect key assets and distributing the system assets to minimize the losses from a successful attack.

24
Q

Why are security design guidelines good?

A

Security design guidelines sensitize system designers to security issues that they may not have considered. They provide a basis for creating security review checklists.

25
Q

Why is security engineering so difficult?

A

Security validation is difficult because security requirements state what should not happen in a system, rather than what should. Furthermore, system attackers are intelligent and may have more time to probe for weaknesses than is available for security testing.

26
Q

What is resilience engineering?

A

The resilience of a system is a judgment of how well that system can maintain the continuity of its critical services in the presence of disruptive events, such as equipment failure and cyberattacks.

27
Q

What is the 4 R model of resilience?

A

Resilience should be based on the 4 Rs model—recognition, resistance, recovery, and reinstatement.

28
Q

What is the mindset behind resilience engineering?

A

Resilience planning should be based on the assumption that networked systems will be subject to
cyberattacks by malicious insiders and outsiders and that some of these attacks will be successful.

29
Q

How should systems be designed when concerned with resilience?

A

Systems should be designed with a number of defensive layers of different types. If these layers are effective, human and technical failures can be trapped and cyberattacks resisted.

30
Q

How does one start when making a system resilient?

A

Business resilience requirements should be the starting point for designing systems for resil- ience. To achieve system resilience, you have to focus on recognition and recovery from prob- lems, recovery of critical services and assets, and reinstatement of the system.

31
Q

What is an important aspect of resilience engineering

A

An important part of design for resilience is identifying critical services, which are those services that are essential if a system is to ensure its primary purpose. Systems should be designed so that these services are protected and, in the event of failure, recovered as quickly as possible.