lecture 1 software reliability
DESCRIPTION
Software Reliability and Quality assuranceTRANSCRIPT
![Page 1: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/1.jpg)
ICT 312Software Reliability & Quality
AssuranceLecture Notes
By: Anthony AngmorLecturer, Faculty of Informatics
Ghana Telecom University College
ICT 312: Software Reliability and Quality Assurance
Slide 1
![Page 2: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/2.jpg)
Ghana Telecom University CollegeTesano - Accra
Module:Software Reliability and Quality Assurance
Lecture 1: Introduction
ICT 312: Software Reliability and Quality Assurance
Slide 2
![Page 3: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/3.jpg)
ICT 312: Software Reliability and Quality Assurance
Slide 3
Module Aims / Objectives
Learning Outcome
Topics
Group Project Assignment
Introduction – SRE
![Page 4: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/4.jpg)
Module Aims / Objectives
• Primarily this module aims at:– introducing students to the principles underlying
software reliability.
– introducing students to the processes that underlie the quality into software development and providing students with the basis for managing quality in software products.
– enabling students to plan and implement software quality assurance as a systematic pattern of actions in the software life cycle.
ICT 312: Software Reliability and Quality Assurance
Slide 4
![Page 5: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/5.jpg)
Learning Outcome• On completion of this module, students should be
able to:– define Software Reliability and explain the importance of
the Software Reliability Measurements / Metric.
– Demonstrate understanding of the role of quality assurance in software projects.
– apply various metrics to measure the quality of software process and software products.
– develop quality plans, conduct quality audit and justify the need for quality assurance.
ICT 312: Software Reliability and Quality Assurance
Slide 5
![Page 6: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/6.jpg)
TOPICSIntroduction
Overview of Computer SoftwareSoftware Reliability: Definition
Importance of Software ReliabilityReliability Models
Tools and Methods of ReliabilitySoftware Quality
Quality Management Activities Quality Assurance Systems and Standards
Quality Assurance ActivitiesSoftware Safety and Security
ICT 312: Software Reliability and Quality Assurance
Slide 6
![Page 7: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/7.jpg)
GROUP PROJECT ASSIGNMENT• Identify any one Commercial-Of-The-Shelf (COTS)
software package of your choice OR Design your own small software and access its’ relative reliability using any three (3) standard reliability measurements/metrics.
• Suggest any five (5) ways in which the software package so referenced can be improved and made more reliable.
• Prepare a 10 minutes presentation on the identified software, including your findings to be delivered in class on Wednesday, 23 & 30 March, 2011 from 10:15am prompt.
ICT 312: Software Reliability and Quality Assurance
Slide 7
![Page 8: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/8.jpg)
Ghana Telecom University CollegeTesano - Accra
Course:Software Reliability and Quality Assurance
Lecture 1
ICT 312: Software Reliability and Quality Assurance
Slide 8
![Page 9: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/9.jpg)
ICT 312: Software Reliability and Quality Assurance
Slide 9
Introduction
Overview of Computer Software
What is meant by “Software Reliability”?
Distinction between “a Failure” and “a Fault”
Approaches to Reliability:Developer – Oriented
User – Oriented
![Page 10: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/10.jpg)
Introduction
• Computers and their software plays vital role in our lives in this computer age.
– e.g. TV’s, telephones etc. are having their analog and mechanical parts replaced by digitized CPUs and software.
– the computer industry is booming exponentially with a continuously lowering cost and improved processors and software-controlled systems.
ICT 312: Software Reliability and Quality Assurance
Slide 10
![Page 11: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/11.jpg)
Introduction (cont’d)
• Advanced technology has allowed software to permeate our lives, e.g.:– Comfortable and convenient lifestyle
– Increased use of computerized control systems in safety critical applications
• E.g. flight control, nuclear plant monitoring, robotic surgery, military applications, etc
• Software needs to be ‘‘sufficiently good’’ for its application
ICT 312: Software Reliability and Quality Assurance
Slide 11
![Page 12: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/12.jpg)
Introduction (cont’d)
• Software is developed by humans:– Humans are not perfect– There is a need to strive for perfection
• Can we expect “perfect software” in practice?
• Consumers have high expectations for software:– Realized the power of software– A huge market has developed
ICT 312: Software Reliability and Quality Assurance
Slide 12
![Page 13: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/13.jpg)
Essential Difficulties
• The goal of producing “perfect software” remains elusive [Brooks 86] due to:– Complexity:
• Functional complexity• Structural complexity• Code complexity, …
– Changing requirements
• Software faults introduced in all phases of the System Development Life-Cycle
R.A Brooks, A Robust Layered Control System for a Mobile Robot, IEEE Journal of Robotics and Automation, 2 (1), 1986 Slide 13
![Page 14: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/14.jpg)
Overview of Computer Software
ICT 312: Software Reliability and Quality Assurance
Slide 14
ComputerSoftware
ApplicationSoftware
SystemSoftware
SystemManagement
Programs
SystemDevelopment
Programs
GeneralPurpose
ApplicationPrograms
Application-Specific
Programs
•Web Browsers
•Electronic Mail
•Word Processing
•Spreadsheets
•ERP
•Customer R/ship Management
•Transaction Processing
•Operating Systems
•DBMS
•Application Servers
•System Utilities
•CASE packages
•Programming Editors
•Programming Language Translators
Performs info processing tasks for end users
Manages & supports computer systems and networks
![Page 15: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/15.jpg)
Characteristics of Comp Software
• It does not age, rust, wear-out, deform or crack.
• There are no environmental constraints for software to operate as long as the hardware processor it runs on can operate.
• It cannot be seen or touched, but it has a physical existence and is crucial to system functionality.
ICT 312: Software Reliability and Quality Assurance
Slide 15
![Page 16: Lecture 1 Software Reliability](https://reader038.vdocuments.us/reader038/viewer/2022110208/55cf96da550346d0338e3959/html5/thumbnails/16.jpg)
Software Tragedies
• Some people think that once a software can run correctly, it will forever be correct, but tragedies and chaos caused by softwareproves this thinking to be wrong.
• Software can make decisions, but can just be as unreliable (i.e. imperfect) as human beings.
ICT 312: Software Reliability and Quality Assurance
Slide 16