15
S CS 5380 Software Engineering Chapter 11 Dependability and Security

CS 5380 Software Engineering Chapter 11 Dependability and Security

Embed Size (px)

Citation preview

Page 1: CS 5380 Software Engineering Chapter 11 Dependability and Security

S

CS 5380 Software Engineering

Chapter 11 Dependability and

Security

Page 2: CS 5380 Software Engineering Chapter 11 Dependability and Security

Section 2

Section2 Dependability and Security Ch 10 SocioTechnical Systems Ch 11 Dependability and Security

Chapter 11 - Dependability and Security

Page 3: CS 5380 Software Engineering Chapter 11 Dependability and Security

Objectives – Chapter 11

First page of chapter

Chapter 11 - Dependability and Security

Page 4: CS 5380 Software Engineering Chapter 11 Dependability and Security

Dependability

Several topics Availability Reliability Safety Security

Each has further subtopics

Chapter 11 - Dependability and Security

Page 5: CS 5380 Software Engineering Chapter 11 Dependability and Security

Problem based learning

Student takes responsibility for learning

Solution of a problem is the foundation for learning the key principles

Different from Lecture Lecture/application of principles

Chapter 11 - Dependability and Security

Page 6: CS 5380 Software Engineering Chapter 11 Dependability and Security

Availability

Probability that a system is up and working

Measurement Max time down per instance Max number of times down Percentage of time down

May vary with time of day / day of week Allow for nighttime maintenance

System may have multiple measurement points

Can involve many aspects Hardware, network, power, OS, maintenance,

Affected by system loadChapter 11 - Dependability and Security

Page 7: CS 5380 Software Engineering Chapter 11 Dependability and Security

Availability

Real time systems (robotics, automotive)

Control systems (industrial)

Embedded (printers, medical equipment)

Communications (phone, network)

Financial

Chapter 11 - Dependability and Security

Page 8: CS 5380 Software Engineering Chapter 11 Dependability and Security

Reliability

Probability of failure free operation

Measurement Time between failures Failure per transaction Failures per time

Depends heavily upon the operation Multiple values

Depends on data Different types of data exercise different aspects of sotware

Chapter 11 - Dependability and Security

Page 9: CS 5380 Software Engineering Chapter 11 Dependability and Security

Reliability

Real time systems (robotics, automotive)

Control systems (industrial)

Embedded (printers, medical equipment)

Communications (phone, network)

Financial

Chapter 11 - Dependability and Security

Page 10: CS 5380 Software Engineering Chapter 11 Dependability and Security

Safety

Never harm people or property

Even if system fails to operate Power, network, hardware, system load

Primary vs Secondary Insulin Pump CAD

Author: Malfunctions often related to requirements specification

Hardware failure consideration

Chapter 11 - Dependability and Security

Page 11: CS 5380 Software Engineering Chapter 11 Dependability and Security

Safety

Hazard avoidance Car navigation system – disabled when vehicle

moving

Hazard detection Pressure, temperature, speed sensors Car – distance sensor

Damage limitation Insulin pump – manage failure of sensor.

Chapter 11 - Dependability and Security

Page 12: CS 5380 Software Engineering Chapter 11 Dependability and Security

Security

Protection from threats Intentional Unintentional

Unintentional Tsunami/earthquake

Chapter 11 - Dependability and Security

Page 13: CS 5380 Software Engineering Chapter 11 Dependability and Security

Security

Security from Modification Theft

Layers of Protection Networking Logon Authentication Limitation of data access

Chapter 11 - Dependability and Security

Page 14: CS 5380 Software Engineering Chapter 11 Dependability and Security

Security Terminology

Assets

Exposure

Vulnerability

Attack

Threat

Control

Chapter 11 - Dependability and Security

Page 15: CS 5380 Software Engineering Chapter 11 Dependability and Security

Dependability

Repairability Trace of activities Error logs / meaningful errors

Maintainability Much software evolves

Survivability Resistance to attack Threat identification

Error Tolerance

Chapter 11 - Dependability and Security