SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 1 Software engineering for real-time systems Section 2 Dependable.

Slides:



Advertisements
Similar presentations
Software Engineering COMP 201
Advertisements

Introduction to Computer Engineering by Richard E. Haskell Basic Digital Design Module M1.2 Section 3.2.
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
PERTEMUAN - 2 SOFTWARE QUALITY. OBJECTIVES After completing this chapter, you will be able to: ■ Define software, software quality and software quality.
Computer Science: A Structured Programming Approach Using C Converting File Type A rather common but somewhat trivial problem is to convert a text.
Oct. 15, 2009RePP Reconciling Predictability with Performance - the questions we asked - Reinhard Wilhelm Saarland University.
Software Engineering COMP 201
Unit 231 Software Engineering Introduction to SWE What is SDLC Phases of SDLC.
Software engineering for real-time systems
SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Program design concepts - slide 1 Software engineering for real-time systems Section 5.
Unit 191 Introduction to Software Engineering The objective of this section is to introduce the subject of software engineering. When you have read this.
1 Introduction to Software Engineering Lecture 39 – Software Development.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Software design - core concepts - slide 1 Software engineering for real-time systems Section.
Software Testing and Quality Assurance
SWE Introduction to Software Engineering
Strategic Directions in Real- Time & Embedded Systems Aatash Patel 18 th September, 2001.
SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Introduction to real-time systems - slide 1 Software engineering for real-time systems.
Testing Metrics Software Reliability
1 Software Fault Protection Allen Goldberg Kestrel Technology.
Architecture and Real Time Systems Lab University of Massachusetts, Amherst I Koren and C M Krishna Electrical and Computer Engineering University of Massachusetts.
School of Computer ScienceG53FSP Formal Specification1 Dr. Rong Qu Introduction to Formal Specification
1 Formal Engineering of Reliable Software LASER 2004 school Tutorial, Lecture1 Natasha Sharygina Carnegie Mellon University.
Chapter 1: Introduction To Computer | SCP1103 Programming Technique C | Jumail, FSKSM, UTM, 2005 | Last Updated: July 2005 Slide 1 Introduction To Computers.
Semantic and phonetic automatic reconstruction of medical dictations STEFAN PETRIK, CHRISTINA DREXEL, LEO FESSLER, JEREMY JANCSARY, ALEXANDRA KLEIN,GERNOT.
Instructore: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Concurrent and.
Software Project Management
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
Introduction to Computers
PROJECT MILESTONES Group Presentations: ~ 5 mins presentations.
 Dipl.-Ing. Lars Grunske, 1 Hasso-Plattner-Institute for Software System Engineering at the University of Potsdam Department of Software Engineering and.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
Parser-Driven Games Tool programming © Allan C. Milne Abertay University v
The Program Development Cycle
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Requirements - slide 1 Software engineering for real-time systems Section 3 Requirements.
Lecture Introduction to Software Development SW Engg. Development Process Instructor :Muhammad Janas khan Thursday, September.
CprE 458/558: Real-Time Systems
1 EE29B Feisal Mohammed EE29B: Introduction to Software Engineering Feisal Mohammed Ph: x3156.
Software Reliabilty1 Software Reliability Advanced Software Engineering COM360 University of Sunderland © 1998.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 9 Slide 1 Critical Systems Specification 1.
The Software Construction Process. Computer System Components Central Processing Unit (Microprocessor)
The Software Construction Process. Computer System Components Central Processing Unit (Microprocessor)
Defect Classes and the defect repository
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Introduction to Testing CSIS 1595: Fundamentals of Programming and Problem Solving 1.
Chapter 8 Testing. Principles of Object-Oriented Testing Å Object-oriented systems are built out of two or more interrelated objects Å Determining the.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 1: Introduction.
EPSII Lecture Section AAA 1505 SC Professor Terry A. Braun Biomedical Engineering, Ophthalmology and Visual Sciences.
A Survey of Fault Tolerance in Distributed Systems By Szeying Tan Fall 2002 CS 633.
Component 4: Introduction to Information and Computer Science Unit 9/Part e: Components and Development of Large Scale Systems.
1 Chapter 5 Software Reliability Software Engineering: Design, Reliability, and Management, International Std. Edition by Martin L. Shooman.
13 1 Computer Programming Ch.15-A,B,C FALL 2000 Rob Wolfe.
“Designing Masking Fault Tolerance via Nonmasking Fault Tolerance“ Oğuzhan YILDIRIM – Erkin GÜVEL Boğaziçi University Computer Engineering Department
Software Verification and Validation
continued on next slide
The Software Construction Process
Different Error Occured With QuickBooks Software.
Programmable Logic Controllers (PLCs) An Overview.
Roles and Responsibilities (1/3)
                                                                                                                                                                                                                                                
Chapter 12 User Interface Design
continued on next slide
continued on next slide
Introduction to Software Testing
IOSH Accredited Behavioural Change Leadership Programme
continued on next slide
Types of Errors And Error Analysis.
continued on next slide
Introduction to Computers
Presentation transcript:

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 1 Software engineering for real-time systems Section 2 Dependable software

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 2 Objectives To: Show where, why and how software errors arise. Distinguish between correct, reliable and safe software. Establish that dependable software should be a primary design aim. Highlight the importance and influence of the software operating environment. Establish the basics of good software. Introduction

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 3 Qualities of dependable software

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 4 System behaviour under fault conditions

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 5 Types of software errors

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 6 Errors in the design process

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 7 A problem of syntax

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 8 A problem of semantics

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 9 Logic errors - what and when

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 10 Algorithmic errors

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 11 Poor software - the reasons

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 12 A flow-chart problem

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 13 Hierarchical modularized structure

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 14 Microprocessor system configurations

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 15 Component categorization

SOFTWARE ENGINEERING for REAL-TIME SYSTEMS (© J.E.Cooling 2003) Dependable software - slide 16 Review of ‘Dependable software’ You should now: Realize why, in the real world, we can never guarantee to produce fault-free systems. Know what is meant by dependable software and why it should be a primary design aim. Understand that software errors arise from problems to do with system design, software design and environmental factors. Appreciate some of the root causes of poor software.  Recognize what has to be done to produce a quality software product. END OF SECTION ‘Dependable software’