Chapter 13: Software Quality Project Management Afnan Albahli.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management.
Advertisements

System Integration Verification and Validation
Quality Management. What is a software product? Software product = computer programs (sources and executable) + associated documentation Software products.
CS540 Software Design Lecture 1 1 Lecture 1: Introduction to Software Design Anita S. Malik Adapted from Budgen (2003) Chapters 1.
SWE Introduction to Software Engineering
Soft. Eng. II, Spr. 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Quality Reading: I. Sommerville, Chap: 24.
Software project management (intro) Quality assurance.
CS 325: Software Engineering March 26, 2015 Software Quality Assurance Software Metrics Defect Injection Software Quality Lifecycle Measuring Progress.
Software Process and Product Metrics
Software Testing Introduction. Agenda Software Testing Definition Software Testing Objectives Software Testing Strategies Software Test Classifications.
Non-functional requirements
Chapter 24 - Quality Management
Chapter 3 Software Processes.
Lecture 3.
CS 4310: Software Engineering
Software Project Management Fifth Edition
Chapter 9 Database Planning, Design, and Administration Sungchul Hong.
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.
1 Chapter 2 Socio-technical Systems (Computer-based System Engineering)
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
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)
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
Software Metrics - Data Collection What is good data? Are they correct? Are they accurate? Are they appropriately precise? Are they consist? Are they associated.
SOFTWARE ENGINEERING1 Introduction. Software Software (IEEE): collection of programs, procedures, rules, and associated documentation and data SOFTWARE.
Chapter 6 : Software Metrics
Chapter 4 Requirements engineering Chapter 4 – Requirements Engineering Lecture 1 1.
A GENERIC PROCESS FOR REQUIREMENTS ENGINEERING Chapter 2 1 These slides are prepared by Enas Naffar to be used in Software requirements course - Philadelphia.
This chapter is extracted from Sommerville’s slides. Text book chapter
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 3 Slide 1 Critical Systems 1.
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
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.
12.1 Introduction Checklists are used as a technique to give status information in a formalized manner about all aspects of the test process. This chapter.
QUALITY ASSURANCE MANAGEMENT CONTROLS Chapter 9. Quality Assurance (QA) Management is concerned with ensuring: 1) The information system produced by the.
University of Sunderland COM369 Unit 6 COM369 Project Quality Unit 6.
Quality Management Managing the quality of the software process and products.
1 EE29B Feisal Mohammed EE29B: Introduction to Software Engineering Feisal Mohammed Ph: x3156.
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
Introduction to Measurement. According to Lord Kelvin “When you can measure what you are speaking about and express it in numbers, you know something.
Introduction to Software Engineering Syed Salman Ali B.E, MBA ( MIS, Mktg), PMP.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Software Quality Prepared By: Rooshabh Kothari Assistant Professor T & P Co-ordinator CSE/IT Department 1.
Chapter 05 Quality Planning SaigonTech – Engineering Division Software Project Management in Practice By Pankaj Jalote © 2003 by Addison Wesley.
Chapter 5: Software effort estimation
 System Requirement Specification and System Planning.
ISQB Software Testing Section Meeting 10 Dec 2012.
TOTAL QUALITY MANAGEMENT
What Do We Mean by Usability?
Software Quality Control and Quality Assurance: Introduction
Rekayasa Perangkat Lunak Part-10
Rekayasa Perangkat Lunak
Software Verification and Validation
Software Quality Assurance Software Quality Factor
CIF301 Project Quality Unit 6
Software engineering.
Constructive Cost Model
Rekayasa Perangkat Lunak
Charakteristiky kvality
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software Quality Assurance Lecture 3
Chapter 13 Quality Management
ISO/IEC Systems and software Quality Requirements and Evaluation
Presentation transcript:

Chapter 13: Software Quality Project Management Afnan Albahli

Quality Concerns We need to define what qualities we require of a system. We also need to judge whether a system meets our quality requirements (this needs measurements). We may want to assess the likely quality of the final system while it is still under development. We also will need to make sure that the development methods would produce the quality needed. – A potential customer might check that the suppliers were using the best development methods.

The Importance of Software Quality Quality should be the concern of all the producers of goods and services, however the special characteristics of SW create special demands. – Increasing criticality of SW. – The intangibility of SW make it difficult to know that a project task was completed satisfactory. – Accumulating errors during SW development. For these reasons quality management is an essential part of effective overall project management.

The Place of Software Quality in Project Planning “step wise framework” Quality will be of concern in all stages of the project but it will be of particular interest at the following steps in bold in the step wise framework. Step1 Step2 Step3 Step4 Step8

The Place of Software Quality in Project Step 1: Identify project scope and objectives: some objectives could relate to the qualities of the application to be delivered. Step 2: Identify project infrastructure, within this step, activity 2.2 identifies installation standards and procedures. Some of those will be about quality. Step 3: Analyze project characteristics, within this step activity 3.2 Analyze other project characteristics including quality based ones. Step 4: identify the products and activities of the project. Step 8: Review and publicize plan, at this stage the overall quality aspects of the project plan are reviewed.

Defining Software Quality Every system has: Functional requirements: what is the system is to do. Resource requirements: allowable cost. Quality requirements: how well the system is to operate. Example of quality requirements required by the users are: Usability. Reliability. Defining quality is not enough, in order to judge whether a system meets our requirements, we need to be able to measure its qualities.

Quality Measures In order to judge whether a system meets our requirements,we need to be able to measure its qualities. A good measure must relate the number of units measured to the maximum possible. Example: For the reliability, it could be argued that the less the errors in a program the more reliable it is. A measure of faults per thousand of lines of code is more useful than the total faults in a program.

Quality Measures (cont’d) Quality measures are important because they are a way to know when we have been successful to meet a quality. Measures can be: – Direct measures: where we can measure the quality directly. – Indirect measures: where the thing being measured is not the quality itself, but an indicator that the quality is present. – e.g. the number of enquirers by users received by a help desk about how one operates a particular SW application might be an indirect measurement of its usability.

Quality Specifications When there is concern about the need for a specific quality characteristic in a SW product then a quality specification with the following minimum details should be drafted: – Definition “description” of the quality characteristic. – Scale: the unit of measurement. – Test: the practical test of the extent to which the attribute quality exists. – Minimally acceptable: the worst value which might be acceptable if other characteristics compensated for it, where the product would be rejected if had a lower value. – Target range: the range of values within which it is planned the quality measurement should lie. – Now: the value that applies currently.

Reliability Software reliability is defined as: The ability of a system or component to perform its required functions under stated conditions for a specified period of time. The following are some measurements used to measure the reliability of a product: Availability: the percentage of a particular time interval that a system is usable. Mean time between failures: the total service time divided by the number of failures.

Reliability Associated with reliability is maintainability, which is: how quickly a fault, once detected, can be corrected. ”this is from the users point of view” “the SW development managers” will be concerned about the effort involved. A key component of this is changeability, which is: the ease with which the software can be modified. However before an amendment can be made, the fault has to be diagnosed. Maintainability can therefore be seen as changeability plus anew quality, analysability, which is the ease with which causes of failure can be identified.

ISO 9126 Stands for “International Organization for Standardization.” There was a lack of agreed on definitions for the qualities of a good software. This standard was introduced in 1991 to tackle the question of the definition of software quality.

ISO 9126 (cont’d) ISO 9126 defines six major software quality characteristics: Functionality: covers the functions that a software product provides to satisfy user needs. Reliability: refers to the capability of the software to maintain its level of performance. Usability: which relates to the effort needed to use the software. Efficiency: which relates to the physical resources used when the software is executed. Maintainability: relates to the effort needed to make changes to the software. Portability: relates to the ability of the software to be transferred to a different environment.