Figures-Chapter 13. Figure 13.1 The increasing costs of residual fault removal.

Slides:



Advertisements
Similar presentations
Chapter 13 – Dependability engineering
Advertisements

Chapter 13 – Dependability engineering Lecture 1 1Chapter 13 Dependability Engineering.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 30 Slide 1 Security Engineering 2.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development.
3. Hardware Redundancy Reliable System Design 2010 by: Amir M. Rahmani.
Figures – Chapter 24.
Making Services Fault Tolerant
1 Testing Effectiveness and Reliability Modeling for Diverse Software Systems CAI Xia Ph.D Term 4 April 28, 2005.
A Brief Introduction to Software Design and Design Quality By Laura Leventhal.
8. Fault Tolerance in Software 8.1 Introduction Is it true that a program that has once performed a given task as specified will continue to do so? Yes,
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 30 Slide 1 Security Engineering.
Modified from Sommerville’s originals Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development.
1 SWE Introduction to Software Engineering Lecture 5.
Modified from Sommerville’s originals Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
Developing Dependable Systems CIS 376 Bruce R. Maxim UM-Dearborn.
Constructing Reliable Software Components Across the ORB M. Robert Rwebangira Howard University Future Aerospace Science and Technology.
Chapter 1 Principles of Programming and Software Engineering.
Mar Dependable Embedded System -- Ying Shi Robustness.
SENG521 (Fall SENG 521 Software Reliability & Testing Defining Necessary Reliability (Part 3b) Department of Electrical & Computer.
CS 501: Software Engineering Fall 2000 Lecture 22 Dependable Systems II Validation and Verification.
Design of SCS Architecture, Control and Fault Handling.
CH07: Writing the Programs Does not teach you how to program, but point out some software engineering practices that you should should keep in mind as.
Software faults & reliability Presented by: Presented by: Pooja Jain Pooja Jain.
Dr. Pedro Mejia Alvarez Software Testing Slide 1 Software Testing: Building Test Cases.
Chapter 13 Processing Controls. Operating System Integrity Operating system -- the set of programs implemented in software/hardware that permits sharing.
CS 501: Software Engineering Fall 1999 Lecture 16 Verification and Validation.
Critical systems development. Objectives l To explain how fault tolerance and fault avoidance contribute to the development of dependable systems l To.
High-Availability Linux.  Reliability  Availability  Serviceability.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
CS, AUHenrik Bærbak Christensen1 Fault Tolerant Architectures Lyu Chapter 14 Sommerville Chapter 20 Part II.
Feb Software Development and IT Security at NOAA/NESDIS/NODC John Relph and Ken Casey NOAA National Oceanographic Data.
TESTING PRINCIPLES BY K.KARTHIKEYAN. PRINCIPLES Principle 1. Testing is the process of exercising a software component using a selected set of test cases,
Figures – Chapter 14. Figure 14.1 System layers where security may be compromised.
 Chapter 13 – Dependability Engineering 1 Chapter 12 Dependability and Security Specification 1.
Security - Why Bother? Your projects in this class are not likely to be used for some critical infrastructure or real-world sensitive data. Why should.
A Systems Perspective on Building Security Into Applications Dr. William J. Hery Polytechnic University
Building Dependable Distributed Systems Chapter 1 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
SENG521 (Fall SENG 521 Software Reliability & Testing Fault Tolerant Software Systems: Techniques (Part 4b) Department of Electrical.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 3.
Testing “The process of operating a system or component under specified conditions, observing or recording the results, and making an evaluation of some.
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
RELIABILITY ENGINEERING 28 March 2013 William W. McMillan.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development.
CS 360 Lecture 16.  For a software system to be reliable:  Each stage of development must be done well, with incremental verification and testing. 
Chapter 10 – Dependable systems Chapter 10 Dependable Systems1.
Slide 1 Security Engineering. Slide 2 Objectives l To introduce issues that must be considered in the specification and design of secure software l To.
Software Testing Mehwish Shafiq. Testing Testing is carried out to validate and verify the piece developed in order to give user a confidence to use reliable.
Motivation FACE architecture encourages modularity of components on data boundaries Transport Services Segment interface is centered on sending and receiving.
CSE 8377 Software Fault Tolerance. CSE 8377 Motivation Software is becoming central to many life- critical systems Software is created by error-prone.
Software Engineering Lecture 10: System Engineering.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 21 Reliability II.
SENG521 (Fall SENG 521 Software Reliability & Testing Fault Tolerant Software Systems: Techniques (Part 4a) Department of Electrical.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Seminar On Rain Technology
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 20 Reliability 2.
Welcome to the ICT Department Unit 3_5 Security Policies.
Week#3 Software Quality Engineering.
1 Advanced Computer Programming Software Modeling UML Copyright © Texas Education Agency, 2013.
Chapter 11 – Reliability Engineering
Self Healing and Dynamic Construction Framework:
Chapter 17 - Component-based software engineering
Object-Oriented Techniques
Principles of Programming and Software Engineering
Security Engineering.
Critical systems development
Software reliability CS 560 Lecture 15.
Chapter 17 - Component-based software engineering
Presentation transcript:

Figures-Chapter 13

Figure 13.1 The increasing costs of residual fault removal

Figure 13.2 Attributes of dependable processes Process characteristicDescription DocumentableThe process should have a defined process model that sets out the activities in the process and the documentation that is to be produced during these activities. StandardizedA comprehensive set of software development standards covering software production and documentation should be available. AuditableThe process should be understandable by people apart from process participants, who can check that process standards are being followed and make suggestions for process improvement. DiverseThe process should include redundant and diverse verification and validation activities. RobustThe process should be able to recover from failures of individual process activities.

Figure 13.3 Protection system architecture

Figure 13.4 Self-monitoring architecture

Figure 13.5 Airbus flight control system architecture

Figure 13.6 Triple modular redundancy

Figure 13.7 N-version programming

Figure 13.8 Good practice guidelines for dependable programming Dependable programming guidelines 1.Limit the visibility of information in a program 2.Check all inputs for validity 3.Provide a handler for all exceptions 4.Minimize the use of error-prone constructs 5.Provide restart capabilities 6.Check array bounds 7.Include timeouts when calling external components 8.Name all constants that represent real-world values

Figure 13.9 Exception handling