SOFTWARE QUALITY ASSURANCE SOFTWARE QUALITY ASSURANCE  DEFINITIONS OF SQA  SOFTWARE STANDARDS  Process Quality Assurance  Product Quality Assurance.

Slides:



Advertisements
Similar presentations
1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
Advertisements

Overview Lesson 10,11 - Software Quality Assurance
Soft. Eng. II, Spr. 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Quality Reading: I. Sommerville, Chap: 24.
School of Computing, Dublin Institute of Technology.
Software Engineering For Beginners. General Information Lecturer, Patricia O’Byrne, office K115A. –
Software Engineering For Beginners. General Information Lecturer, Patricia O’Byrne. – Times: –See noticeboard outside.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
SOFTWARE PROJECT MANAGEMENT Project Quality Management Dr. Ahmet TÜMAY, PMP.
Software Quality Assurance For Software Engineering && Architecture and Design.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Introduction to Software Testing
CS 4310: Software Engineering
Software Quality SEII-Lecture 15
CHAPTER 5 Infrastructure Components PART I. 2 ESGD5125 SEM II 2009/2010 Dr. Samy Abu Naser 2 Learning Objectives: To discuss: The need for SQA procedures.
Assistance - Savita Kini November 15, Software Quality Assurance - Outline ä What is Software Quality assurance(SQA)? ä Quality Concepts. ä Software.
Managing Software Quality
COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility.
 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.
Chapter 2 The process Process, Methods, and Tools
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Based on D. Galin, and R. Patton.  According to D. Galin  Software quality assurance is:  A systematic, planned set of actions necessary to provide.
Software System Engineering: A tutorial
1 Software Quality CIS 375 Bruce R. Maxim UM-Dearborn.
Software Quality Applied throughout SW Engineering Process Encompasses ▫ Analysis, design, coding, testing, tools ▫ Formal tech reviews ▫ Multi-tiered.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Software Quality Assurance SE Software Quality Assurance What is “quality”?
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Software Engineering 2003 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
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 Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Software Project Management Lecture # 11. Outline Quality Management (chapter 26 - Pressman)  What is quality?  Meaning of Quality in Various Context.
Creator: ACSession No: 15 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 Software Quality Assurance & Software Quality Control.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Software Testing and Quality Assurance Software Quality Assurance 1.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Software quality factors
SQA. 2 Software Quality Assurance What is Software Quality assurance(SQA)? Quality Concepts. Software Quality Assurance Activities. Software Reviews and.
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software.
Software Engineering 2004 Jyrki Nummenmaa 1 SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - ”Good” software properties.
SEN 460 Software Quality Assurance
Software Engineering – University of Tampere, CS DepartmentJyrki Nummenmaa SOFTWARE PRODUCT QUALITY Today: - Software quality -
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
 System Requirement Specification and System Planning.
TOTAL QUALITY MANAGEMENT
Software Quality Control and Quality Assurance: Introduction
Software Quality Management
Software Verification and Validation
Source & Courtesy: Doc. S. Dapkūnas
Software Quality Assurance Software Quality Factor
McCall’s Quality Factors
Software Quality Assurance
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
Software engineering.
مقدمه اي بر مهندسي نيازمنديها
Introduction to Software Testing
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Chapter 13 Quality Management
Presentation transcript:

SOFTWARE QUALITY ASSURANCE SOFTWARE QUALITY ASSURANCE  DEFINITIONS OF SQA  SOFTWARE STANDARDS  Process Quality Assurance  Product Quality Assurance  SQA ATTRIBUTES  SOFTWARE METRICS:  CONTROL METRICS  PREDICTOR METRICS  DOCUMENTATAION

DEFINITION OF SQA Bersoff (1984) provides a good working definition of SQA; Bersoff (1984) provides a good working definition of SQA; “SQA consists of those procedures, techniques and tools applied by professionals to ensure that a product meets or exceeds pre-specified standards during a product's development cycle; and without specific prescribed standards, quality assurance entails ensuring that a product meets or exceeds a minimal industrial and /or commercially acceptable level of excellence.” “SQA consists of those procedures, techniques and tools applied by professionals to ensure that a product meets or exceeds pre-specified standards during a product's development cycle; and without specific prescribed standards, quality assurance entails ensuring that a product meets or exceeds a minimal industrial and /or commercially acceptable level of excellence.”

SOFTWARE QUALITY ASSURANCE  SQA is defined as;  “Conformance to explicitly stated functional and performance requirements, explicitly documented development standards and implicit characteristics that are expected of all professionally developed software.”

SQA DEFINITION   According to Dunn and Ullman;   “SQA is the mapping of managerial precepts and design disciplines of quality assurance onto the applicable managerial and technological space of software engineering.”

SOFTWARE QUALITY ASSURANCE SQA encompasses; SQA encompasses;  A Quality Management Approach;  Effective Software Engineering Technology;  Formal Technical Reviews that are applied throughout the process;  A Multi-tiered Testing Strategy;

SOFTWARE QUALITY ASSURANCE  Control of Software Documentation and changes made to it;  A procedure to ensure compliance to software development standards;  Measurement and reporting mechanism;

SQA ACTIVITIES The SQA activities are divided between two groups; The SQA activities are divided between two groups;  Software Engineer who incorporate the quality into the design by using solid technical methods and procedures;  SQA Team, who is responsible for quality assurance planning, oversight, record keeping, analysis and reporting.

SOFTWARE STANDARDS One of the most important roles of the QA team is the development of product and process standards: One of the most important roles of the QA team is the development of product and process standards: b Product Standards: These define characteristics which all product components should exhibit. An example is- Review Form- which defines the information to be collected during review.

SOFTWARE STANDARDS b Process Standards: These define how the software process should be conducted.e.g. procedural definition of how design review should be conducted. These define how the software process should be conducted.e.g. procedural definition of how design review should be conducted.

Why Standards are important ? b They provide an encapsulation of best or at least most appropriate practice.This knowledge is often only acquired after a great deal of trial and error.Building it into standard avoids the repetition of past mistakes. b They provide a framework around which QA process may be implemented. b They assist in continuity where work carried out by one person is taken up and continued by another. They ensure that all SE follow the practice.

ISO9000 STANDARDS b The ISO 9000 standards have been adapted by many countries like Canada, Mexico,The United States and India and so on. b ISO 9001 STANDARD: This is the standard applicable to Software Engineering.The standard contains 20 requirements that must be present for an effective Quality assurance system. b The actual standard for Software Process is ISO

ISO 9001 REQUIREMENTS The requirements delineated by ISO 9001 address topics such as ; The requirements delineated by ISO 9001 address topics such as ;  Management Responsibilities;  Quality System;  Contact Review;  Process Control;

ISO 9001 REQUIREMENTS  Design Control;  Document and Data Control;  Corrective and preventive Actions;  Internal Quality Audits;

SQA ATTRIBUTES b ECONOMY b INTEGRITY b DOCUMENTATION b UNDERSTABILITY b FLEXIBILITY b INTEROPERABILITY b MODULARITY b CORRECTNESS  RELIABILITY b EVOLEVEBILITY b VALIDITY b GENERALITY b TESTABILITY b REUSABILITY b USABILITY b CLARITY b PORTABILITY b EFFICIENCY b RESILIENCE b MAINTAINABILITY Boehm et.al. (1978) suggest that quality criteria include, but not limited to, the attributes as shown;

CORRECTNESS :  The extent to which a software satisfies its specifications. A program is functionally correct, if it behaves according to the specifications of the functions it is suppose to provide, which are called functional requirements specifications.

RELIABILITY b Informally, software is reliable if the user can depend on it. The specialized literature on software reliability defines reliability in terms of statistical behavior, the probability that the software will operate as expected over a specified period of time.

ROBUSTNESS b A program is robust if it behaves “reasonably”, even in circumstances that were not anticipated in the requirements specifications, for example, it encounters incorrect input data or some hardware malfunction (disk crash). b A program that assumes perfect input and generates an unrecoverable run-time error, if user type some commands, will not be robust.

USER-FRIENDLYNESS b A software is user-friendly if its human interface is easy to use. An application that is designed using GUI concept will be more user friendly in comparison to that which uses text Commands to be typed from the key-board.  MSDOS Based:Not user friendly. Windows-Based:User-friendly.

VERIFIABILITY b A software is “verifiable” if its properties can be verified easily.For example it correctness can be verified. b A common technique for improving the verifiability is the use of “Software Monitors” that is, code inserted in the software to monitor various qualities such as performance or correctness. b Verifiability is an Internal Quality.

MAINTAINABILITY b Software Maintenance is commonly used to refer to the modifications that are to be made to software system after initial release and some user trial. b Maintenance used to be viewed as;  BUG-FIXING  ENHANCING THE PRODUCT CAPABILITY.

REUSABILITY b Reusability means to use the functions or objects or components written by other programmers in our program to achieve our goals and objectives in minimum possible time with optimum coding at our end.

EFFICIENCY b The amount of computing resources and code required by a software system to perform its intended functionality is called the efficiency of the system. b The efficiency comparison is done on standard hardware to make a fair decision.

ACCURACY AND ERROR TOLERANCE b The correctness in intended precision is called accuracy of the software system. b When program encounters an error, what is the limit / extent to which the program can tolerate this error (i.e. program is not damaged due to this error) is called error tolerance,

b The Software Quality Factor is defined as; Where C1, C2 … are Regression Coeff. Where C1, C2 … are Regression Coeff. M1,M2.. Are Software Metrics. M1,M2.. Are Software Metrics. SOFTWARE QUALITY FACTOR Fq = C1*M1+C2*M2+…….Cn* Mn.

SOFTWARE METRICS b A software metric is any measurement which relates to a software system, process or related documents. Examples are measures of the size of the product as; b Line of Code, b Fog Index of a product Manual, b The number of faults reported in the product, b The number of Man-Months required for development.

METRIC CATEGORIES  CONTROL METRICS: These are used by management to control the software process. Ex. are Efforts expended, elapsed time and disk usage. b PREDICTOR METRICS: These are measurements of a product attributes which can be used to predict associated product quality.Ex. are readability of manual,ease of operation and maintenance and so on.

SUMMARY b We have defined the SQA. b The attributes of SQA are explained. b Software ISO 9001 Standard was discussed. b Software Metrics were presented.  Control Metrics  Predictor Metrics