SlideShare una empresa de Scribd logo
1 de 32
Dependability and Security Specification

                                                        Lecture 2




Dependability and Security Specification, CSE course, 2011          Slide 1
Reliability specification

• Reliability can be measured so non-functional reliability
  requirements may be specified quantitatively.
     • Non-functional reliability requirements define the number
       of failures that are acceptable during normal use of the
       system or the time in which the system must be available.

 •     Functional reliability requirements define system and
       software functions that avoid, detect or tolerate faults
       in the software and so ensure that these faults do not
       lead to system failure.
 •       Software reliability requirements may also be
         included to cope with hardware failure or operator
         error.
Dependability and Security Specification, CSE course, 2011 Slide 2
The reliability specification process
 Identify the types of system failure that
 may lead to economic losses.
      Risk identification


Estimate the costs
and consequences of            Risk analysis
the different types of
software failure

                Identify the root causes            Risk
                of system failure               decompostition


                     Generate reliability
                     specifications, including quantitative   Risk reduction
                     requirements defining the acceptable
    Dependability andlevels Specification, CSE course, 2011
                      Security of failure                                      Slide 3
Types of system failure

Failure type                                       Description

Loss of service                                    The system is unavailable and cannot deliver its
                                                   services to users. You may separate this into loss of
                                                   critical services and loss of non-critical services, where
                                                   the consequences of a failure in non-critical services
                                                   are less than the consequences of critical service
                                                   failure.

Incorrect service delivery                         The system does not deliver a service correctly to
                                                   users. Again, this may be specified in terms of minor
                                                   and major errors or errors in the delivery of critical and
                                                   non-critical services.

System/data corruption                             The failure of the system causes damage to the system
                                                   itself or its data. This will usually but not necessarily be
                                                   in conjunction with other types of failures.


  Dependability and Security Specification, CSE course, 2011                                          Slide 4
Reliability metrics
                                                                 •   Reliability metrics
                                                                     are units of
                                                                     measurement of
                                                                     system reliability.
                                                                 •   System reliability is
                                                                     measured by
                                                                     counting the number
                                                                     of operational
                                                                     failures and, where
                                                                     appropriate, relating
                                                                     these to the
                                                                     demands made on
                                                                     the system and the
                                                                     time that the system
                                                                     has been
Metrics                                                              operational.
    * Probability of failure on demand
                                                       •
    * Rate of occurrence of failures/Mean time to failure            A long-term
    * Availability                                                   measurement
                                                                     programme is
                                                                     required to assess
    Dependability and Security Specification, CSE course, 2011
                                                                     the reliability of Slide 5
                                                                     critical systems.
Probability of failure on demand
                              (POFOD)
                                                              •   The probability that the
                                                                  system will fail when a
                                                                  request for service is
                                                                  made.
                                                              •   Used when demands for
                                                                  service are intermittent
                                                                  and relatively infrequent.
                                                              •   Appropriate for protection
Protection system at Sizewell B power station                     systems where services
                                                                  are demanded
Shuts down reactor if problems detected
                                                                  occasionally and where
                                                                  there are serious
 Dependability and Security Specification, CSE course, 2011
                                                                  consequence if the Slide 6
Rate of fault occurrence (ROCOF)

                                                                 •   Reflects the rate of
                                                                     occurrence of failure in the
                                                                     system.
                                                                     –   ROCOF of 0.002 means 2
                                                                         failures are likely in each
                                                                         1000 operational time units
                                                                         e.g. 2 failures per 1000
                                                                         hours of operation
•        Relevant for systems where the
         system has to process a large
         number of similar requests in a
         defined time period
       –      Credit card processing
              system, supermarket checkout
              system.
    Dependability and Security Specification, CSE course, 2011                                  Slide 7
Mean time to failure

                                                             •   Reciprocal of ROCOF is
                                                                 Mean time to Failure (MTTF)
                                                                 –   Relevant for systems with long
                                                                     transactions i.e. where system
                                                                     processing takes a long time (e.g.
                                                                     CAD systems).

                                                             •   MTTF should be longer than
                                                                 expected transaction length
                                                                 so that the system does not
                                                                 normally fail during a session
                                                                 or transaction



Dependability and Security Specification, CSE course, 2011                                      Slide 8
Availability

                                                      •      Measure of the fraction of the
                                                             time that the system is
                                                             available for use.
                                                      •      Takes repair and restart time
                                                             into account
                                                      •      Availability of 0.998 means
                                                             software is available for 998
                                                             out of 1000 time units.
                                                      •      Relevant for non-
                                                             stop, continuously running
                                                             systems
                                                             –   telephone switching
Dependability and Security Specification, CSE course, 2011
                                                                 systems, railway signalling   Slide 9
                                                                 systems, e-commerce
Availability specification


         Availability                  Explanation

                0.9                    The system is available for 90% of the time. This means that,
                                       in a 24-hour period (1,440 minutes), the system will be
                                       unavailable for 144 minutes.

               0.99                    In a 24-hour period, the system is unavailable for 14.4
                                       minutes.

              0.999                    The system is unavailable for 84 seconds in a 24-hour period.

             0.9999                    The system is unavailable for 8.4 seconds in a 24-hour
                                       period. Roughly, one minute per week.




Dependability and Security Specification, CSE course, 2011                                   Slide 10
Failure consequences

                                                         •   When specifying reliability, it is
                                                             not just the number of system
                                                             failures that matter but the
                                                             consequences of these failures.
                                                         •   Failures that have serious
                                                             consequences are clearly more
                                                             damaging than those where
                                                             repair and recovery is
                                                             straightforward.
                                                         •   In some
                                                             cases, therefore, different
                                                             reliability specifications for
                                                             different types of failure may be
Dependability and Security Specification, CSE course, 2011
                                                             defined.                       Slide 11
Over-specification of reliability

   •       Over-specification of reliability means that a high-
           level of reliability is specified but it is not cost-
           effective to achieve this.
   •       In many cases, it is cheaper to accept and deal with
           failures rather than avoid them occurring.
   •       To avoid over-specification
         –       Specify reliability requirements for different types of failure.
                 Minor failures may be acceptable.
         –       Specify requirements for different services separately.
                 Critical services should have the highest reliability
                 requirements.
         –       Decide whether or not high reliability is really required or if
                 dependability goals can be achieved in some other way.
Dependability and Security Specification, CSE course, 2011                   Slide 12
Steps to a reliability specification
For each sub-
system, analyse the
consequences of
possible system
failures.     From the system failure                             Different metrics may be
                       analysis, partition                        used for different reliability
                       failures into appropriate                  requirements
                       classes
                                         For each failure class
                                         identified, set out the
                                         reliability using an
                                         appropriate metric
                                                                Identify functional
                                                                reliability requirements
                                                                to reduce the chances
                                                                of critical failures


  Dependability and Security Specification, CSE course, 2011                            Slide 13
Insulin pump specification
                                                    •        Probability of failure (POFOD) is the
                                                             most appropriate metric.
                                                             –   Relatively infrequent demands (10s
                                                                 per day).
                                                    •        Transient failures that can be repaired
                                                             by user actions such as recalibration of
                                                             the machine. A relatively low value of
                                                             POFOD is acceptable (say 0.002) –
                                                             one failure may occur in every 500
                                                             demands.
                                                    •        Permanent failures require the
                                                             software to be re-installed by the
                                                             manufacturer. This should occur no
                                                             more than once per year. POFOD for
Dependability and Security Specification, CSE course, 2011
                                                             this situation should be less than Slide 14
                                                             0.00002.
Functional reliability requirements

  •       Checking requirements that identify checks to ensure
          that incorrect data is detected before it leads to a
          failure.
  •       Recovery requirements that are geared to help the
          system recover after a failure has occurred.
  •       Redundancy requirements that specify redundant
          features of the system to be included.
  •       Process requirements for reliability which specify the
          development process to be used may also be
          included.

Dependability and Security Specification, CSE course, 2011   Slide 15
Examples of functional reliability
                   requirements for MHC-PMS

      RR1: A pre-defined range for all operator inputs shall be defined
     and the system shall check that all operator inputs fall within this
     pre-defined range. (Checking)
     RR2: Copies of the patient database shall be maintained on two
     separate servers that are not housed in the same building.
     (Recovery, redundancy)
     RR3: N-version programming shall be used to implement the
     braking control system. (Redundancy)
     RR4: The system must be implemented in a safe subset of Ada
     and checked using static analysis. (Process)



Dependability and Security Specification, CSE course, 2011          Slide 16
Security specification

 •    Security specification has something in common with safety
      requirements specification – in both cases, your concern is to
      avoid something bad happening.
 •    Four major differences
     –    Safety problems are accidental – the software is not operating in a
          hostile environment. In security, you must assume that attackers
          have knowledge of system weaknesses
     –    When safety failures occur, you can look for the root cause or
          weakness that led to the failure. When failure results from a
          deliberate attack, the attacker may conceal the cause of the failure.
     –    Shutting down a system can avoid a safety-related failure. Causing
          a shut down may be the aim of an attack.
     –          Safety-related events are not generated from an intelligent
                adversary. An attacker can probe defenses over time to discover
                weaknesses.
Dependability and Security Specification, CSE course, 2011                   Slide 17
Security policy
                                                •       An organizational security policy applies
                                                        to all systems and sets out what should
                                                        and should not be allowed.
                                                •       For example, a military policy might be:
                                                      –      Readers may only examine
                                                             documents whose classification is the
                                                             same as or below the readers vetting
                                                             level.
                                                •       A security policy sets out the conditions
                                                        that must be maintained by a security
                                                        system and so helps identify system
                                                        security requirements.


Dependability and Security Specification, CSE course, 2011                                  Slide 18
The preliminary risk assessment
               process for security requirements




Dependability and Security Specification, CSE course, 2011   Slide 19
Security risk assessment
Identify the key
system assets (or
services) that have to
be protected.
              Asset identification                           Estimate the value of the
                                                             identified assets

                                               Asset value
                                               assessment                       Assess the potential
                                                                                losses associated with
                                                                                each asset
                                                              Exposure
                                                              assessment

                                                                              Threat identification

                                                                  Identify the most
                                                                  probable threats to
Dependability and Security Specification, CSE course, 2011        the system assets              Slide 20
Security risk assessment
Decompose threats
into possible attacks
on the system and the
ways that these may
occur
             Attack assessment                               Propose the controls that
                                                             may be put in place to
                                                             protect an asset

                                                  Control                         Assess the technical
                                               identification                     feasibility and cost of
                                                                                  the controls

                                                              Feasibility
                                                              assessment
                                                                                     Security
                                                                                  requirements
                                                                                    definition
                                                                  Security requirements can be
                                                                  infrastructure or application
Dependability and Security Specification, CSE course, 2011        system requirements               Slide 21
Asset analysis in a preliminary risk assessment report
                        for the MHC-PMS

    Asset                                           Value                      Exposure

The information system                        High. Required to support all High. Financial loss as
                                              clinical consultations.       clinics may have to be
                                              Potentially safety-critical.  canceled. Costs of restoring
                                                                            system. Possible patient
                                                                            harm if treatment cannot be
                                                                            prescribed.

The patient database                          High. Required to support all High. Financial loss as
                                              clinical consultations.       clinics may have to be
                                              Potentially safety-critical.  canceled. Costs of restoring
                                                                            system. Possible patient
                                                                            harm if treatment cannot be
                                                                            prescribed.

An individual patient record                  Normally low although may Low direct losses but
                                              be high for specific high- possible loss of reputation.
                                              profile patients.

  Dependability and Security Specification, CSE course, 2011                                    Slide 22
Threat and control analysis in a
              preliminary risk assessment report

Threat                          Probability Control                        Feasibility

Unauthorized user Low                                Only allow system     Low cost of implementation
gains access as                                      management from       but care must be taken with
system      manager                                  specific locations    key distribution and to
and makes system                                     that are physically   ensure that keys are
unavailable                                          secure.               available in the event of an
                                                                           emergency.

Unauthorized user High                               Require all users to Technically feasible but
gains access as                                      authenticate           high-cost solution. Possible
system user and                                      themselves using a user resistance.
accesses                                             biometric
confidential                                         mechanism.             Simple and transparent to
information                                                                 implement       and    also
                                                     Log all changes to supports recovery.
                                                     patient information to
                                                     track system usage.

 Dependability and Security Specification, CSE course, 2011                                        Slide 23
Security requirements for the MHC-PMS

  •       Patient information shall be downloaded at the start
          of a clinic session to a secure area on the system
          client that is used by clinical staff.
  •       All patient information on the system client shall be
          encrypted.
  •       Patient information shall be uploaded to the database
          after a clinic session has finished and deleted from
          the client computer.
  •       A log on a separate computer from the database
          server must be maintained of all changes made to the
          system database.
Dependability and Security Specification, CSE course, 2011   Slide 24
Formal methods and specification




Dependability and Security Specification, CSE course, 2011   Slide 25
Formal methods and critical systems

  •       Formal specification is part of a more general
          collection of techniques that are known as ‘formal
          methods’.
  •       These are all based on mathematical representation
          and analysis of software.
  •       Formal methods include
        –       Formal specification;
        –       Specification analysis and proof;
        –       Transformational development;
        –       Program verification.

Dependability and Security Specification, CSE course, 2011   Slide 26
Use of formal methods

                                                       •     The principal benefits of formal
                                                             methods are in reducing the
                                                             number of faults in systems.
                                                       •     Consequently, their main area of
                                                             applicability is in critical systems
                                                             engineering. There have been
                                                             several successful projects where
                                                             formal methods have been used
                                                             in this area.
                                                       •     In this area, the use of formal
                                                             methods is most likely to be cost-
                                                             effective because high system
                                                             failure costs must be avoided.
Dependability and Security Specification, CSE course, 2011                                 Slide 27
Specification in the software process

   •       Specification and design are inextricably
           intermingled.
   •       Architectural design is essential to structure a
           specification and the specification process.
   •       Formal specifications are expressed in a
           mathematical notation with precisely defined
           vocabulary, syntax and semantics.




Dependability and Security Specification, CSE course, 2011    Slide 28
Formal specification in a plan-based
                   software process




Dependability and Security Specification, CSE course, 2011   Slide 29
Benefits of formal specification

  •       Developing a formal specification requires the system
          requirements to be analyzed in detail. This helps to detect
          problems, inconsistencies and incompleteness in the
          requirements.
  •       As the specification is expressed in a formal language, it
          can be automatically analyzed to discover inconsistencies
          and incompleteness.
  •       If you use a formal method such as the B method, you can
          transform the formal specification into a ‘correct’ program.
  •       Program testing costs may be reduced if the program is
          formally verified against its specification.

Dependability and Security Specification, CSE course, 2011       Slide 30
Acceptance of formal methods

  •       Formal methods have had limited impact on practical
          software development:
        –       Problem owners cannot understand a formal specification
                and so cannot assess if it is an accurate representation of
                their requirements.
        –       It is easy to assess the costs of developing a formal
                specification but harder to assess the benefits. Managers
                may therefore be unwilling to invest in formal methods.
        –       Software engineers are unfamiliar with this approach and are
                therefore reluctant to propose the use of FM.
        –       Formal methods are still hard to scale up to large systems.
        –       Formal specification is not really compatible with agile
                development methods.

Dependability and Security Specification, CSE course, 2011                 Slide 31
Key points

  •       Reliability requirements can be defined quantitatively. They
          include probability of failure on demand (POFOD), rate of
          occurrence of failure (ROCOF) and availability (AVAIL).
  •       Security requirements are more difficult to identify than safety
          requirements because a system attacker can use knowledge of
          system vulnerabilities to plan a system attack, and can learn
          about vulnerabilities from unsuccessful attacks.
  •       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.
  •       Formal methods of software development rely on a system
          specification that is expressed as a mathematical model. The
          use of formal methods avoids ambiguity in a critical systems
          specification.
Dependability and Security Specification, CSE course, 2011               Slide 32

Más contenido relacionado

La actualidad más candente

CS 5032 L12 security testing and dependability cases 2013
CS 5032 L12  security testing and dependability cases 2013CS 5032 L12  security testing and dependability cases 2013
CS 5032 L12 security testing and dependability cases 2013Ian Sommerville
 
CS5032 L10 security engineering 2 2013
CS5032 L10 security engineering 2 2013CS5032 L10 security engineering 2 2013
CS5032 L10 security engineering 2 2013Ian Sommerville
 
Ch12-Software Engineering 9
Ch12-Software Engineering 9Ch12-Software Engineering 9
Ch12-Software Engineering 9Ian Sommerville
 
CS5032 L9 security engineering 1 2013
CS5032 L9 security engineering 1 2013CS5032 L9 security engineering 1 2013
CS5032 L9 security engineering 1 2013Ian Sommerville
 
CS 5032 L1 critical socio-technical systems 2013
CS 5032 L1 critical socio-technical systems 2013CS 5032 L1 critical socio-technical systems 2013
CS 5032 L1 critical socio-technical systems 2013Ian Sommerville
 
Security Engineering 2 (CS 5032 2012)
Security Engineering 2 (CS 5032 2012)Security Engineering 2 (CS 5032 2012)
Security Engineering 2 (CS 5032 2012)Ian Sommerville
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineeringaizazhussain234
 
Concepts in Software Safety
Concepts in Software SafetyConcepts in Software Safety
Concepts in Software Safetydalesanders
 
Critical systems specification
Critical systems specificationCritical systems specification
Critical systems specificationAryan Ajmer
 
Resilience And Failure Obviation Software Engineering
Resilience And Failure Obviation Software EngineeringResilience And Failure Obviation Software Engineering
Resilience And Failure Obviation Software Engineeringtyramisu
 
Security case buffer overflow
Security case buffer overflowSecurity case buffer overflow
Security case buffer overflowIan Sommerville
 
Ch11-Software Engineering 9
Ch11-Software Engineering 9Ch11-Software Engineering 9
Ch11-Software Engineering 9Ian Sommerville
 
CS5032 L20 cybersecurity 2
CS5032 L20 cybersecurity 2CS5032 L20 cybersecurity 2
CS5032 L20 cybersecurity 2Ian Sommerville
 

La actualidad más candente (19)

CS 5032 L12 security testing and dependability cases 2013
CS 5032 L12  security testing and dependability cases 2013CS 5032 L12  security testing and dependability cases 2013
CS 5032 L12 security testing and dependability cases 2013
 
CS5032 L10 security engineering 2 2013
CS5032 L10 security engineering 2 2013CS5032 L10 security engineering 2 2013
CS5032 L10 security engineering 2 2013
 
Ch12-Software Engineering 9
Ch12-Software Engineering 9Ch12-Software Engineering 9
Ch12-Software Engineering 9
 
Ch9
Ch9Ch9
Ch9
 
CS5032 L9 security engineering 1 2013
CS5032 L9 security engineering 1 2013CS5032 L9 security engineering 1 2013
CS5032 L9 security engineering 1 2013
 
CS 5032 L1 critical socio-technical systems 2013
CS 5032 L1 critical socio-technical systems 2013CS 5032 L1 critical socio-technical systems 2013
CS 5032 L1 critical socio-technical systems 2013
 
Security Engineering 2 (CS 5032 2012)
Security Engineering 2 (CS 5032 2012)Security Engineering 2 (CS 5032 2012)
Security Engineering 2 (CS 5032 2012)
 
Ch12 safety engineering
Ch12 safety engineeringCh12 safety engineering
Ch12 safety engineering
 
Software security engineering
Software security engineeringSoftware security engineering
Software security engineering
 
Concepts in Software Safety
Concepts in Software SafetyConcepts in Software Safety
Concepts in Software Safety
 
Ch3
Ch3Ch3
Ch3
 
Presentation
PresentationPresentation
Presentation
 
Critical systems specification
Critical systems specificationCritical systems specification
Critical systems specification
 
Ch13 security engineering
Ch13 security engineeringCh13 security engineering
Ch13 security engineering
 
Resilience And Failure Obviation Software Engineering
Resilience And Failure Obviation Software EngineeringResilience And Failure Obviation Software Engineering
Resilience And Failure Obviation Software Engineering
 
Security case buffer overflow
Security case buffer overflowSecurity case buffer overflow
Security case buffer overflow
 
Security engineering
Security engineeringSecurity engineering
Security engineering
 
Ch11-Software Engineering 9
Ch11-Software Engineering 9Ch11-Software Engineering 9
Ch11-Software Engineering 9
 
CS5032 L20 cybersecurity 2
CS5032 L20 cybersecurity 2CS5032 L20 cybersecurity 2
CS5032 L20 cybersecurity 2
 

Destacado

DDS Security Specification (Adopted Beta1 June 2014)
DDS Security Specification (Adopted Beta1 June 2014)DDS Security Specification (Adopted Beta1 June 2014)
DDS Security Specification (Adopted Beta1 June 2014)Gerardo Pardo-Castellote
 
Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systemssommerville-videos
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architectureHimanshu
 
소프트웨어 아키텍처
소프트웨어 아키텍처소프트웨어 아키텍처
소프트웨어 아키텍처영기 김
 
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론Alex Hahn
 

Destacado (7)

DDS Security Specification (Adopted Beta1 June 2014)
DDS Security Specification (Adopted Beta1 June 2014)DDS Security Specification (Adopted Beta1 June 2014)
DDS Security Specification (Adopted Beta1 June 2014)
 
System success and failure
System success and failureSystem success and failure
System success and failure
 
Emergent properties
Emergent propertiesEmergent properties
Emergent properties
 
Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systems
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
소프트웨어 아키텍처
소프트웨어 아키텍처소프트웨어 아키텍처
소프트웨어 아키텍처
 
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
 

Similar a Reliability and security specification (CS 5032 2012)

Dependability and security (CS 5032 2012)
Dependability and security (CS 5032 2012)Dependability and security (CS 5032 2012)
Dependability and security (CS 5032 2012)Ian Sommerville
 
Dependablity Engineering 1 (CS 5032 2012)
Dependablity Engineering 1 (CS 5032 2012)Dependablity Engineering 1 (CS 5032 2012)
Dependablity Engineering 1 (CS 5032 2012)Ian Sommerville
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes arvind pandey
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Ian Sommerville
 
Software Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxSoftware Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxVishalPadme2
 
Ch11 - Reliability Engineering
Ch11 - Reliability EngineeringCh11 - Reliability Engineering
Ch11 - Reliability EngineeringHarsh Verdhan Raj
 
Dependable Systems - Summary (16/16)
Dependable Systems - Summary (16/16)Dependable Systems - Summary (16/16)
Dependable Systems - Summary (16/16)Peter Tröger
 
5 - Safety - Critical Systems.pdf
5 - Safety - Critical Systems.pdf5 - Safety - Critical Systems.pdf
5 - Safety - Critical Systems.pdfFelixKipyego1
 
Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Ian Sommerville
 
OTC: Asset maintenance and integrity solutions
OTC: Asset maintenance and integrity solutionsOTC: Asset maintenance and integrity solutions
OTC: Asset maintenance and integrity solutionsLloyd's Register Energy
 
3. reliability modelling
3. reliability modelling3. reliability modelling
3. reliability modellingmadhurgujar
 
module 5 ppt ddb.pptx
module 5 ppt ddb.pptxmodule 5 ppt ddb.pptx
module 5 ppt ddb.pptxSushantRaj25
 
Dependability Engineering 2 (CS 5032 2012)
Dependability Engineering 2 (CS 5032 2012)Dependability Engineering 2 (CS 5032 2012)
Dependability Engineering 2 (CS 5032 2012)Ian Sommerville
 

Similar a Reliability and security specification (CS 5032 2012) (20)

Dependability and security (CS 5032 2012)
Dependability and security (CS 5032 2012)Dependability and security (CS 5032 2012)
Dependability and security (CS 5032 2012)
 
Dependablity Engineering 1 (CS 5032 2012)
Dependablity Engineering 1 (CS 5032 2012)Dependablity Engineering 1 (CS 5032 2012)
Dependablity Engineering 1 (CS 5032 2012)
 
Critical Systems
Critical SystemsCritical Systems
Critical Systems
 
Reliability Engineering
Reliability EngineeringReliability Engineering
Reliability Engineering
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes
 
Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)Static analysis and reliability testing (CS 5032 2012)
Static analysis and reliability testing (CS 5032 2012)
 
Software Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxSoftware Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptx
 
Sqa material
Sqa materialSqa material
Sqa material
 
Ch11 - Reliability Engineering
Ch11 - Reliability EngineeringCh11 - Reliability Engineering
Ch11 - Reliability Engineering
 
Dependable Systems - Summary (16/16)
Dependable Systems - Summary (16/16)Dependable Systems - Summary (16/16)
Dependable Systems - Summary (16/16)
 
State model based
State model basedState model based
State model based
 
5 - Safety - Critical Systems.pdf
5 - Safety - Critical Systems.pdf5 - Safety - Critical Systems.pdf
5 - Safety - Critical Systems.pdf
 
Ch11
Ch11Ch11
Ch11
 
Ch11 reliability engineering
Ch11 reliability engineeringCh11 reliability engineering
Ch11 reliability engineering
 
Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)Requirements Engineering (CS 5032 2012)
Requirements Engineering (CS 5032 2012)
 
OTC: Asset maintenance and integrity solutions
OTC: Asset maintenance and integrity solutionsOTC: Asset maintenance and integrity solutions
OTC: Asset maintenance and integrity solutions
 
Availability and reliability
Availability and reliabilityAvailability and reliability
Availability and reliability
 
3. reliability modelling
3. reliability modelling3. reliability modelling
3. reliability modelling
 
module 5 ppt ddb.pptx
module 5 ppt ddb.pptxmodule 5 ppt ddb.pptx
module 5 ppt ddb.pptx
 
Dependability Engineering 2 (CS 5032 2012)
Dependability Engineering 2 (CS 5032 2012)Dependability Engineering 2 (CS 5032 2012)
Dependability Engineering 2 (CS 5032 2012)
 

Más de Ian Sommerville

Ultra Large Scale Systems
Ultra Large Scale SystemsUltra Large Scale Systems
Ultra Large Scale SystemsIan Sommerville
 
Dependability requirements for LSCITS
Dependability requirements for LSCITSDependability requirements for LSCITS
Dependability requirements for LSCITSIan Sommerville
 
Conceptual systems design
Conceptual systems designConceptual systems design
Conceptual systems designIan Sommerville
 
Requirements Engineering for LSCITS
Requirements Engineering for LSCITSRequirements Engineering for LSCITS
Requirements Engineering for LSCITSIan Sommerville
 
An introduction to LSCITS
An introduction to LSCITSAn introduction to LSCITS
An introduction to LSCITSIan Sommerville
 
Internet worm-case-study
Internet worm-case-studyInternet worm-case-study
Internet worm-case-studyIan Sommerville
 
Designing software for a million users
Designing software for a million usersDesigning software for a million users
Designing software for a million usersIan Sommerville
 
CS5032 Case study Ariane 5 launcher failure
CS5032 Case study Ariane 5 launcher failureCS5032 Case study Ariane 5 launcher failure
CS5032 Case study Ariane 5 launcher failureIan Sommerville
 
CS5032 Case study Kegworth air disaster
CS5032 Case study Kegworth air disasterCS5032 Case study Kegworth air disaster
CS5032 Case study Kegworth air disasterIan Sommerville
 
CS5032 L19 cybersecurity 1
CS5032 L19 cybersecurity 1CS5032 L19 cybersecurity 1
CS5032 L19 cybersecurity 1Ian Sommerville
 
L17 CS5032 critical infrastructure
L17 CS5032 critical infrastructureL17 CS5032 critical infrastructure
L17 CS5032 critical infrastructureIan Sommerville
 
CS5032 Case study Maroochy water breach
CS5032 Case study Maroochy water breachCS5032 Case study Maroochy water breach
CS5032 Case study Maroochy water breachIan Sommerville
 
CS 5032 L18 Critical infrastructure 2: SCADA systems
CS 5032 L18 Critical infrastructure 2: SCADA systemsCS 5032 L18 Critical infrastructure 2: SCADA systems
CS 5032 L18 Critical infrastructure 2: SCADA systemsIan Sommerville
 
CS 5032 L3 socio-technical systems 2013
CS 5032 L3 socio-technical systems 2013CS 5032 L3 socio-technical systems 2013
CS 5032 L3 socio-technical systems 2013Ian Sommerville
 

Más de Ian Sommerville (18)

Ultra Large Scale Systems
Ultra Large Scale SystemsUltra Large Scale Systems
Ultra Large Scale Systems
 
Resp modellingintro
Resp modellingintroResp modellingintro
Resp modellingintro
 
Resilience and recovery
Resilience and recoveryResilience and recovery
Resilience and recovery
 
LSCITS-engineering
LSCITS-engineeringLSCITS-engineering
LSCITS-engineering
 
Requirements reality
Requirements realityRequirements reality
Requirements reality
 
Dependability requirements for LSCITS
Dependability requirements for LSCITSDependability requirements for LSCITS
Dependability requirements for LSCITS
 
Conceptual systems design
Conceptual systems designConceptual systems design
Conceptual systems design
 
Requirements Engineering for LSCITS
Requirements Engineering for LSCITSRequirements Engineering for LSCITS
Requirements Engineering for LSCITS
 
An introduction to LSCITS
An introduction to LSCITSAn introduction to LSCITS
An introduction to LSCITS
 
Internet worm-case-study
Internet worm-case-studyInternet worm-case-study
Internet worm-case-study
 
Designing software for a million users
Designing software for a million usersDesigning software for a million users
Designing software for a million users
 
CS5032 Case study Ariane 5 launcher failure
CS5032 Case study Ariane 5 launcher failureCS5032 Case study Ariane 5 launcher failure
CS5032 Case study Ariane 5 launcher failure
 
CS5032 Case study Kegworth air disaster
CS5032 Case study Kegworth air disasterCS5032 Case study Kegworth air disaster
CS5032 Case study Kegworth air disaster
 
CS5032 L19 cybersecurity 1
CS5032 L19 cybersecurity 1CS5032 L19 cybersecurity 1
CS5032 L19 cybersecurity 1
 
L17 CS5032 critical infrastructure
L17 CS5032 critical infrastructureL17 CS5032 critical infrastructure
L17 CS5032 critical infrastructure
 
CS5032 Case study Maroochy water breach
CS5032 Case study Maroochy water breachCS5032 Case study Maroochy water breach
CS5032 Case study Maroochy water breach
 
CS 5032 L18 Critical infrastructure 2: SCADA systems
CS 5032 L18 Critical infrastructure 2: SCADA systemsCS 5032 L18 Critical infrastructure 2: SCADA systems
CS 5032 L18 Critical infrastructure 2: SCADA systems
 
CS 5032 L3 socio-technical systems 2013
CS 5032 L3 socio-technical systems 2013CS 5032 L3 socio-technical systems 2013
CS 5032 L3 socio-technical systems 2013
 

Último

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Último (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

Reliability and security specification (CS 5032 2012)

  • 1. Dependability and Security Specification Lecture 2 Dependability and Security Specification, CSE course, 2011 Slide 1
  • 2. Reliability specification • Reliability can be measured so non-functional reliability requirements may be specified quantitatively. • Non-functional reliability requirements define the number of failures that are acceptable during normal use of the system or the time in which the system must be available. • Functional reliability requirements define system and software functions that avoid, detect or tolerate faults in the software and so ensure that these faults do not lead to system failure. • Software reliability requirements may also be included to cope with hardware failure or operator error. Dependability and Security Specification, CSE course, 2011 Slide 2
  • 3. The reliability specification process Identify the types of system failure that may lead to economic losses. Risk identification Estimate the costs and consequences of Risk analysis the different types of software failure Identify the root causes Risk of system failure decompostition Generate reliability specifications, including quantitative Risk reduction requirements defining the acceptable Dependability andlevels Specification, CSE course, 2011 Security of failure Slide 3
  • 4. Types of system failure Failure type Description Loss of service The system is unavailable and cannot deliver its services to users. You may separate this into loss of critical services and loss of non-critical services, where the consequences of a failure in non-critical services are less than the consequences of critical service failure. Incorrect service delivery The system does not deliver a service correctly to users. Again, this may be specified in terms of minor and major errors or errors in the delivery of critical and non-critical services. System/data corruption The failure of the system causes damage to the system itself or its data. This will usually but not necessarily be in conjunction with other types of failures. Dependability and Security Specification, CSE course, 2011 Slide 4
  • 5. Reliability metrics • Reliability metrics are units of measurement of system reliability. • System reliability is measured by counting the number of operational failures and, where appropriate, relating these to the demands made on the system and the time that the system has been Metrics operational. * Probability of failure on demand • * Rate of occurrence of failures/Mean time to failure A long-term * Availability measurement programme is required to assess Dependability and Security Specification, CSE course, 2011 the reliability of Slide 5 critical systems.
  • 6. Probability of failure on demand (POFOD) • The probability that the system will fail when a request for service is made. • Used when demands for service are intermittent and relatively infrequent. • Appropriate for protection Protection system at Sizewell B power station systems where services are demanded Shuts down reactor if problems detected occasionally and where there are serious Dependability and Security Specification, CSE course, 2011 consequence if the Slide 6
  • 7. Rate of fault occurrence (ROCOF) • Reflects the rate of occurrence of failure in the system. – ROCOF of 0.002 means 2 failures are likely in each 1000 operational time units e.g. 2 failures per 1000 hours of operation • Relevant for systems where the system has to process a large number of similar requests in a defined time period – Credit card processing system, supermarket checkout system. Dependability and Security Specification, CSE course, 2011 Slide 7
  • 8. Mean time to failure • Reciprocal of ROCOF is Mean time to Failure (MTTF) – Relevant for systems with long transactions i.e. where system processing takes a long time (e.g. CAD systems). • MTTF should be longer than expected transaction length so that the system does not normally fail during a session or transaction Dependability and Security Specification, CSE course, 2011 Slide 8
  • 9. Availability • Measure of the fraction of the time that the system is available for use. • Takes repair and restart time into account • Availability of 0.998 means software is available for 998 out of 1000 time units. • Relevant for non- stop, continuously running systems – telephone switching Dependability and Security Specification, CSE course, 2011 systems, railway signalling Slide 9 systems, e-commerce
  • 10. Availability specification Availability Explanation 0.9 The system is available for 90% of the time. This means that, in a 24-hour period (1,440 minutes), the system will be unavailable for 144 minutes. 0.99 In a 24-hour period, the system is unavailable for 14.4 minutes. 0.999 The system is unavailable for 84 seconds in a 24-hour period. 0.9999 The system is unavailable for 8.4 seconds in a 24-hour period. Roughly, one minute per week. Dependability and Security Specification, CSE course, 2011 Slide 10
  • 11. Failure consequences • When specifying reliability, it is not just the number of system failures that matter but the consequences of these failures. • Failures that have serious consequences are clearly more damaging than those where repair and recovery is straightforward. • In some cases, therefore, different reliability specifications for different types of failure may be Dependability and Security Specification, CSE course, 2011 defined. Slide 11
  • 12. Over-specification of reliability • Over-specification of reliability means that a high- level of reliability is specified but it is not cost- effective to achieve this. • In many cases, it is cheaper to accept and deal with failures rather than avoid them occurring. • To avoid over-specification – Specify reliability requirements for different types of failure. Minor failures may be acceptable. – Specify requirements for different services separately. Critical services should have the highest reliability requirements. – Decide whether or not high reliability is really required or if dependability goals can be achieved in some other way. Dependability and Security Specification, CSE course, 2011 Slide 12
  • 13. Steps to a reliability specification For each sub- system, analyse the consequences of possible system failures. From the system failure Different metrics may be analysis, partition used for different reliability failures into appropriate requirements classes For each failure class identified, set out the reliability using an appropriate metric Identify functional reliability requirements to reduce the chances of critical failures Dependability and Security Specification, CSE course, 2011 Slide 13
  • 14. Insulin pump specification • Probability of failure (POFOD) is the most appropriate metric. – Relatively infrequent demands (10s per day). • Transient failures that can be repaired by user actions such as recalibration of the machine. A relatively low value of POFOD is acceptable (say 0.002) – one failure may occur in every 500 demands. • Permanent failures require the software to be re-installed by the manufacturer. This should occur no more than once per year. POFOD for Dependability and Security Specification, CSE course, 2011 this situation should be less than Slide 14 0.00002.
  • 15. Functional reliability requirements • Checking requirements that identify checks to ensure that incorrect data is detected before it leads to a failure. • Recovery requirements that are geared to help the system recover after a failure has occurred. • Redundancy requirements that specify redundant features of the system to be included. • Process requirements for reliability which specify the development process to be used may also be included. Dependability and Security Specification, CSE course, 2011 Slide 15
  • 16. Examples of functional reliability requirements for MHC-PMS RR1: A pre-defined range for all operator inputs shall be defined and the system shall check that all operator inputs fall within this pre-defined range. (Checking) RR2: Copies of the patient database shall be maintained on two separate servers that are not housed in the same building. (Recovery, redundancy) RR3: N-version programming shall be used to implement the braking control system. (Redundancy) RR4: The system must be implemented in a safe subset of Ada and checked using static analysis. (Process) Dependability and Security Specification, CSE course, 2011 Slide 16
  • 17. Security specification • Security specification has something in common with safety requirements specification – in both cases, your concern is to avoid something bad happening. • Four major differences – Safety problems are accidental – the software is not operating in a hostile environment. In security, you must assume that attackers have knowledge of system weaknesses – When safety failures occur, you can look for the root cause or weakness that led to the failure. When failure results from a deliberate attack, the attacker may conceal the cause of the failure. – Shutting down a system can avoid a safety-related failure. Causing a shut down may be the aim of an attack. – Safety-related events are not generated from an intelligent adversary. An attacker can probe defenses over time to discover weaknesses. Dependability and Security Specification, CSE course, 2011 Slide 17
  • 18. Security policy • An organizational security policy applies to all systems and sets out what should and should not be allowed. • For example, a military policy might be: – Readers may only examine documents whose classification is the same as or below the readers vetting level. • A security policy sets out the conditions that must be maintained by a security system and so helps identify system security requirements. Dependability and Security Specification, CSE course, 2011 Slide 18
  • 19. The preliminary risk assessment process for security requirements Dependability and Security Specification, CSE course, 2011 Slide 19
  • 20. Security risk assessment Identify the key system assets (or services) that have to be protected. Asset identification Estimate the value of the identified assets Asset value assessment Assess the potential losses associated with each asset Exposure assessment Threat identification Identify the most probable threats to Dependability and Security Specification, CSE course, 2011 the system assets Slide 20
  • 21. Security risk assessment Decompose threats into possible attacks on the system and the ways that these may occur Attack assessment Propose the controls that may be put in place to protect an asset Control Assess the technical identification feasibility and cost of the controls Feasibility assessment Security requirements definition Security requirements can be infrastructure or application Dependability and Security Specification, CSE course, 2011 system requirements Slide 21
  • 22. Asset analysis in a preliminary risk assessment report for the MHC-PMS Asset Value Exposure The information system High. Required to support all High. Financial loss as clinical consultations. clinics may have to be Potentially safety-critical. canceled. Costs of restoring system. Possible patient harm if treatment cannot be prescribed. The patient database High. Required to support all High. Financial loss as clinical consultations. clinics may have to be Potentially safety-critical. canceled. Costs of restoring system. Possible patient harm if treatment cannot be prescribed. An individual patient record Normally low although may Low direct losses but be high for specific high- possible loss of reputation. profile patients. Dependability and Security Specification, CSE course, 2011 Slide 22
  • 23. Threat and control analysis in a preliminary risk assessment report Threat Probability Control Feasibility Unauthorized user Low Only allow system Low cost of implementation gains access as management from but care must be taken with system manager specific locations key distribution and to and makes system that are physically ensure that keys are unavailable secure. available in the event of an emergency. Unauthorized user High Require all users to Technically feasible but gains access as authenticate high-cost solution. Possible system user and themselves using a user resistance. accesses biometric confidential mechanism. Simple and transparent to information implement and also Log all changes to supports recovery. patient information to track system usage. Dependability and Security Specification, CSE course, 2011 Slide 23
  • 24. Security requirements for the MHC-PMS • Patient information shall be downloaded at the start of a clinic session to a secure area on the system client that is used by clinical staff. • All patient information on the system client shall be encrypted. • Patient information shall be uploaded to the database after a clinic session has finished and deleted from the client computer. • A log on a separate computer from the database server must be maintained of all changes made to the system database. Dependability and Security Specification, CSE course, 2011 Slide 24
  • 25. Formal methods and specification Dependability and Security Specification, CSE course, 2011 Slide 25
  • 26. Formal methods and critical systems • Formal specification is part of a more general collection of techniques that are known as ‘formal methods’. • These are all based on mathematical representation and analysis of software. • Formal methods include – Formal specification; – Specification analysis and proof; – Transformational development; – Program verification. Dependability and Security Specification, CSE course, 2011 Slide 26
  • 27. Use of formal methods • The principal benefits of formal methods are in reducing the number of faults in systems. • Consequently, their main area of applicability is in critical systems engineering. There have been several successful projects where formal methods have been used in this area. • In this area, the use of formal methods is most likely to be cost- effective because high system failure costs must be avoided. Dependability and Security Specification, CSE course, 2011 Slide 27
  • 28. Specification in the software process • Specification and design are inextricably intermingled. • Architectural design is essential to structure a specification and the specification process. • Formal specifications are expressed in a mathematical notation with precisely defined vocabulary, syntax and semantics. Dependability and Security Specification, CSE course, 2011 Slide 28
  • 29. Formal specification in a plan-based software process Dependability and Security Specification, CSE course, 2011 Slide 29
  • 30. Benefits of formal specification • Developing a formal specification requires the system requirements to be analyzed in detail. This helps to detect problems, inconsistencies and incompleteness in the requirements. • As the specification is expressed in a formal language, it can be automatically analyzed to discover inconsistencies and incompleteness. • If you use a formal method such as the B method, you can transform the formal specification into a ‘correct’ program. • Program testing costs may be reduced if the program is formally verified against its specification. Dependability and Security Specification, CSE course, 2011 Slide 30
  • 31. Acceptance of formal methods • Formal methods have had limited impact on practical software development: – Problem owners cannot understand a formal specification and so cannot assess if it is an accurate representation of their requirements. – It is easy to assess the costs of developing a formal specification but harder to assess the benefits. Managers may therefore be unwilling to invest in formal methods. – Software engineers are unfamiliar with this approach and are therefore reluctant to propose the use of FM. – Formal methods are still hard to scale up to large systems. – Formal specification is not really compatible with agile development methods. Dependability and Security Specification, CSE course, 2011 Slide 31
  • 32. Key points • Reliability requirements can be defined quantitatively. They include probability of failure on demand (POFOD), rate of occurrence of failure (ROCOF) and availability (AVAIL). • Security requirements are more difficult to identify than safety requirements because a system attacker can use knowledge of system vulnerabilities to plan a system attack, and can learn about vulnerabilities from unsuccessful attacks. • 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. • Formal methods of software development rely on a system specification that is expressed as a mathematical model. The use of formal methods avoids ambiguity in a critical systems specification. Dependability and Security Specification, CSE course, 2011 Slide 32