COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility.

Slides:



Advertisements
Similar presentations
System Integration Verification and Validation
Advertisements

Chapter 4 Quality Assurance in Context
Stepan Potiyenko ISS Sr.SW Developer.
Overview Lesson 10,11 - Software Quality Assurance
Chapter 8: Quality Management Project Quality Management
Validating and Improving Test-Case Effectiveness Author: Yuri Chernak Presenter: Lam, Man Tat.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
Software Testing and Quality Assurance: Introduction and Terminology
CS 325: Software Engineering March 26, 2015 Software Quality Assurance Software Metrics Defect Injection Software Quality Lifecycle Measuring Progress.
Testing - an Overview September 10, What is it, Why do it? Testing is a set of activities aimed at validating that an attribute or capability.
Software Process and Product Metrics
SOFTWARE QUALITY ASSURANCE SOFTWARE QUALITY ASSURANCE  DEFINITIONS OF SQA  SOFTWARE STANDARDS  Process Quality Assurance  Product Quality Assurance.
Non-functional requirements
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 17 Software Quality
Capability Maturity Model
Chapter : Software Process
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 17 Software Quality
CS 4310: Software Engineering
Software Project Management Fifth Edition
Managing Software Quality
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
THE ROLE OF PROCESS IN SOFTWARE QUALITY By K.KARTHIKEYAN.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
N By: Md Rezaul Huda Reza n
Sept - Dec w1d11 Beyond Accuracy: What Data Quality Means to Data Consumers CMPT 455/826 - Week 1, Day 1 (based on R.Y. Wang & D.M. Strong)
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
Quality Control Project Management Unit Credit Value : 4 Essential
Software Quality Engineering Chapters 1-3 Overview, Software Quality and Quality Assurance.
Copyright © Jerzy R. Nawrocki ISO 9126 and Non-functional Requirements Requirements.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
This chapter is extracted from Sommerville’s slides. Text book chapter
Software Quality : The Elusive Target
Software Project Management Lecture # 11. Outline Quality Management (chapter 26 - Pressman)  What is quality?  Meaning of Quality in Various Context.
Software Project Management Lecture # 3. Outline Chapter 22- “Metrics for Process & Projects”  Measurement  Measures  Metrics  Software Metrics Process.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
Software Testing and Quality Assurance Software Quality Assurance 1.
Software Methods Mö/ slide 1 Methods and Techniques of Software Quality Management ICEL Quality Management Systems: Methods and Techniques of Software.
21-22 May 2004IMPROQ 2004 / Impact of SW Processes on Quality Workshop 1 Quality for Components: Component and Component- Based Software Quality Issues.
Defect resolution  Defect logging  Defect tracking  Consistent defect interpretation and tracking  Timely defect reporting.
1 EE29B Feisal Mohammed EE29B: Introduction to Software Engineering Feisal Mohammed Ph: x3156.
CSSE Software Engineering Process and Practice Lecture 5 Q UALITY A SSURANCE.
Chapter 13: Software Quality Project Management Afnan Albahli.
Ensure that the right functions are performed Ensure that the these functions are performed right and are reliable.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Winter 2011SEG Chapter 11 Chapter 1 (Part 1) Review from previous courses Subject 1: The Software Development Process.
Quality Engineering.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
Chapter 05 Quality Planning SaigonTech – Engineering Division Software Project Management in Practice By Pankaj Jalote © 2003 by Addison Wesley.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
 System Requirement Specification and System Planning.
ISQB Software Testing Section Meeting 10 Dec 2012.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Quality Control and Quality Assurance: Introduction
Software Quality Engineering
Software Verification and Validation
Software Quality Engineering
The Systems Engineering Context
McCall’s Quality Factors
BASICS OF SOFTWARE TESTING Chapter 1. Topics to be covered 1. Humans and errors, 2. Testing and Debugging, 3. Software Quality- Correctness Reliability.
Software Quality Engineering
Software Quality Assurance Lecture 3
Chapter 13 Quality Management
Baisc Of Software Testing
Welcome to Corporate Training -1
Software Quality Assurance
Capability Maturity Model
Capability Maturity Model
Presentation transcript:

COURSE TITLE: 1 Software Quality Assurance

Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility of a QA tester. Document/executing test case. Introduction to defect reporting and tracking. Writing metrics. Information Technology Project Management, Fourth Edition 2

Learning Outcomes At the end of this course should be able to understands: How to defects,classify,prevent, and remove defects. Conduct formal inspection, record,evaluate results of inspection. Chose effective strategies of testing. Distinguish between the software testing and the quality assurance. Information Technology Project Management, Fourth Edition 3

4 Assessment Methods:  Continuous assessment : 20%  Midterm Exam : 30%  Total 100%  Final Exam : 50 %

Taher Saad Ahmed Introduction to Software Quality engineering

Agenda 6 What is Quality? Aspect of quality ? Quality Issues in life cycle model Quality planning and risk management ? Discuss the importance of quality assurance.

We all have an idea about the meaning of quality. Software Quality: an overview But when it comes to software quality disagreements between people arises. But when it comes to software quality disagreements between people arises. Most software professionals understand software quality as testing, verification and validation of software. Most software professionals understand software quality as testing, verification and validation of software.

8 Software Quality: an overview  Quality is achieved when a project and product meets the client’s needs and expectations.  Several studies shown that the success of any project depends largely on the quality of product or service delivered to the clients.

9 Definitions of Software Quality:  The concept of ‘Software Quality’ can be described from five different perspectives as follow: 1.User View: quality is fitness for purpose or meeting user’s needs.  Fitness for use means take customer requirements and expectations into account.

10 Definitions of Software Quality: 1.Transcendental View: quality is hard to define generally associated with some intangible properties that delight users. 1.Value View: quality is the customers’ willingness to pay for a software

11 Definitions of Software Quality: 1.Product View: the focus is on inherent characteristics in the product itself 1.Manufacturing View: quality means conformance to process standards.

Aspect of Quality(ISO framework) 12 Functionality: A set of attributes that bear on the existence of a set of functions and their specified properties. The functions are those that satisfy stated or implied needs. The sub-characteristics include: - Suitability- Accuracy- Interoperability- Security. Reliability: A set of attributes that bear on the capability of software to maintain its level of performance under stated conditions for a stated period of time. The sub-characteristics include: - Maturity- Fault tolerance - Recoverability

Cont… 13 Usability: A set of attributes that bear on the effort needed for use, and on the individual assessment of such use, by a stated or implied set of users. The sub characteristics include: Understandability- Learnability- Operability Efficiency: A set of attributes that bear on the relationship between the level of performance of the software and the amount of resources used, under stated conditions.The sub-characteristics include: - Time behavior - Resource behavior

Cont… 14 Maintainability: A set of attributes that bear on the effort needed to make specified modifications. The sub- characteristics include: Analyzability- Changeability - Stability - Testability. Portability: A set of attributes that bear on the ability of software to be transferred from one environment to another. The sub-characteristics include: Adaptability- Installability- Conformance- Replaceability.

Definitions: Error, fault, failure, and defect 15 Key to the correctness aspect of software quality is the concept of defect, failure, fault, and error. Failure: The inability of a system or component to perform its required functions within specified performance requirements.

Cont… 16 Fault: An incorrect step, process, or data definition in a computer program. Error: A human action that produces an incorrect result. All this refer to defect

Quality in software engineering 17 divide software engineering into four progressive stages: 1. In the functional stage, the focus was on providing the automated functions to replace what had been done manually before. 2. In the schedule stage, the focus was on introducing important features and new systems on a timely and orderly basis to satisfy urgent user needs. 3. In the cost stage, the focus was on reducing the price to stay competitive accompanied by the widespread use of personal computers. 4. In the reliability stage, the focus was managing users’ quality expectations under the increased dependency on software and high cost or severe damages associated with software failures.

Summary Information Technology Project Management, Fourth Edition 18 Quality has many definition according to ask. Quality framework has six an important character. Quality dealing with defect detection and correction

End lecture 19

Quality Planning 20 Implies the ability to anticipate situations and prepare actions to bring about the desired outcome. Important to prevent defects by:  Selecting proper materials.  Training and indoctrinating people in quality.  Planning a process that ensures the appropriate outcome.

Quality Assurance Information Technology Project Management, Fourth Edition 21 quality assurance (QA) can be viewed as to ensure that few, if any, defects remain in the software system when it is delivered to its customers or released to the market. Furthermore, we want to ensure that these remaining defects will cause minimal disruptions or damages. A quality audit is a structured review of specific quality management activities that help identify lessons learned that could improve performance on current or future projects.

classify QA alternatives Information Technology Project Management, Fourth Edition 22 Defect prevention through error blocking or error source removal: These QA activities prevent certain types of faults from being injected into the software. Since errors are the missing or incorrect human actions that lead to the injection of faults into software systems, we can directly correct or block these actions, or remove the underlying causes for them.

Cont… Information Technology Project Management, Fourth Edition 23 Defect reduction through fault detection and removal: These QA alternatives detect and remove certain faults once they have been injected into the software systems. In fact, most traditional QA activities fall into this category. For example, Inspection directly detects and removes faults from the software code, design, ect. Testing removes faults based on related failure observations during program execution.

Cont…. Information Technology Project Management, Fourth Edition 24 Defect containment through failure prevention and containment: These containment measures focus on the failures by either containing them to local areas so that there are no global failures observable to users, or limiting the damage caused by software system failures.

Quality issue in the life cycle model 25 Various defect prevention activities are typically concentrated in the earlier phases of software development, before actual faults have been injected into the software systems. There are several important reasons for this focus on early development phases:

Reason cont… Information Technology Project Management, Fourth Edition 26 The error sources are typically associated with activities in these early phases, such as conceptual mistakes by designers and programmers, unfamiliarity with the product domain, etc. Therefore,error source removal, a primary method of defect preventions, Although some faults could be injected into the software systems during testing and other late development phases, the experience tells us that the vast majority of faults are injected in the early development phases,. Therefore, effective defect prevention through error blocking needs to be carried out during these phases.

27

QUALITY ENGINEERING: ACTIVITIES AND PROCESS Information Technology Project Management, Fourth Edition 28 there are three major groups of activities in the quality engineering process: pre-QA activities. in-QA activities. post-QA activities:

29

Cont… Information Technology Project Management, Fourth Edition Pre-QA activities: Quality planning. These are the activities that should be carried out before carrying out the regular QA activities. There are two major types of pre-QA activities in quality planning, including: (a) Set specific quality goals. (b) Form an overall QA strategy, which includes two sub activities: i. Select appropriate QA activities to perform. ii. Choose appropriate quality measurements and models to provide feedback, quality assessment and improvement.

Cont …. Information Technology Project Management, Fourth Edition 31 In-QA activities: Executing planned QA activities and handling discovered defects. In addition to performing selected QA activities, an important part of this normal execution is to deal with the discovered problems.

Cont …. Information Technology Project Management, Fourth Edition 32 Post-QA activities: Quality measurement, assessment and improvement These are the activities that are carried out after normal QA activities have started but not as part of these normal activities. The primary purpose of these activities is to provide quality assessment and feedback so that various management decisions can be made and possible quality improvement initiatives can be carried out.

feedback in the quality engineering process Information Technology Project Management, Fourth Edition 33 The short term feedback to QA activities typically provides information for progress tracking, activity scheduling, and identification of areas that need special attentions. The long-term feedback to the overall quality engineering process comes in two forms: 1. Feedback to quality planning so that necessary adjustment can be made to quality goals and QA strategies. For example, if the current quality goals are unachievable, alternative goals need to be negotiated. If the selected QA strategy is inappropriate, a new or modified strategy needs to be selected.

long-term feedback Cont… Information Technology Project Management, Fourth Edition 34 Feedback to the quality assessment and improvement activities. For example, the modeling results may be highly unstable, which may well be an indication of the model inappropriateness. In this case, new or modified models need to be used, probably on screened or pre-processed data.

QUALITY PLANNING: GOAL SETTING AND STRATEGY FORMATION Setting quality goals by matching customer’s quality expectations with what can be economically achieved by the software development organizations in the following sub-steps: (a) Identify quality views and attributes meaningful to target customers and users. (b) Select direct quality measures that can be used to measure the selected quality (c) Quantify these quality measures to set quality goals while considering customer’s perspective. marketting environment and the cost of achieving different quality goals.

Cont… Information Technology Project Management, Fourth Edition In forming a QA strategy, we need to plan for its two basic elements: (a) Map the above quality views, attributes, and quantitative goals to select a specific set of QA alternatives. (b) Map the above external direct quality measures into internal indirect ones via selected quality models. This step selects indirect quality measures as well as usable models for quality assessment and analysis.

Summary Information Technology Project Management, Fourth Edition 37 Project quality management ensures that the project will satisfy the needs for which it was undertaken. Main processes include:  Quality planning  Quality assurance  Quality control