Documente Academic
Documente Profesional
Documente Cultură
Contents
Software quality and software quality management
Software quality
(IEEE definition) Software quality is: the degree to which a system, component, or process meets specified requirements the degree to which a system, component, or process meets customer or user needs or expectations
Product Revision
Product Transition
Product Operation
Correctness Reliability Efficiency Integrity Usability
Contents
Software quality and management of software quality
Contents
Software quality and management of software quality
1. A planned and systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms to established technical requirements 2. A set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with: quality control
Assuring an acceptable level of confidence that the software will conform to managerial scheduling and budgetary requirements Initiation and management of activities for the improvement and greater efficiency of software development and SQA activities
Design verification
Static code checking Dynamic testing
SQA Group
Who involves quality assurance activities?
software engineers, project managers, customers, sale
quality
Contents
Software quality and management of software quality
There are two approaches to quality control quality reviews automated software assessment and software measurement
Contents
Software quality and management of software quality
23
24
Name
Code Error Density Development Error Density
Calculation formula
NCE CED = ----------KLOC NDE DED = ----------KLOC WCE WCDE = --------KLOC WDE WDED = --------KLOC WCE WCEF = ---------NFP WDE WDEF = ---------NFP
WCED
WDED WCEF WDEF
NCE = The number of code errors detected by code inspections and testing. NDE = total number of development (design and code) errors) detected in the development process. WCE = weighted total code errors detected by code inspections and testing. WDE = total weighted development (design and code) errors detected in development process.
26
NCE = The number of code errors detected by code inspections and testing. NDE = total number of development (design and code) errors detected in the development process. WCE = weighted total code errors detected by code inspections and testing. WDE = total weighted development (design and code) errors detected in development process.
TTO
MSOT = Milestones completed on time. MS = Total number of milestones. TCDAM = Total Completion Delays (days, weeks, etc.) for all milestones.
DevP
Development Productivity
CRe
Code Reuse
DevH = Total working hours invested in the development of the software system. ReKLOC = Number of thousands of reused lines of code. ReDoc = Number of reused pages of documentation. NDoc = Number of pages of documentation.
30
NHYC = the number of HD calls during a year of service. KLMC = Thousands of lines of maintained software code. WHYC = weighted HD calls received during one year of service. NMFP = number of function points to be maintained.
ASHC
HD success metrics
Code HDS Name HD service success Calculation Formula
NHYOT HDS = -------------NHYC
NHYNOT = Number of yearly HD calls completed on time during one year of service. NHYC = the number of HD calls during a year of service.
Calculation Formula
HDYH HDP= -------------KLNC HDYH FHDP = ---------NMFP HDYH HDE = -------------NHYC
HDP
HDYH = Total yearly working hours invested in HD servicing of the software system. KLMC = Thousands of lines of maintained software code. NMFP = number of function points to be maintained. NHYC = the number of HD calls during a year of service.
Calculation Formula
NYF SSFD = -------------KLMC WYF WFFFD = --------KLMC
WYF WSSFF = ---------NMFP
SSFD WSSFD
WSSFF
NYF = number of software failures detected during a year of maintenance service. WYF = weighted number of yearly software failures detected during one year of maintenance service. NMFP = number of function points designated for the maintained software. KLMC = Thousands of lines of maintained software code.
Code
Calculation Formula
WYF ASSSF = -------------NYF
NYF = number of software failures detected during a year of maintenance service. WYF = weighted number of yearly software failures detected during one year.
Code
Calculation Formula
RepYF MRepF = -------------NYF
NYF = number of software failures detected during a year of maintenance service. RepYF = Number of repeated software failure calls (service failures).
FA VitA
TUA
Total Unavailability
NYSerH = Number of hours software system is in service during one year. NYFH = Number of hours where at least one function is unavailable (failed) during one year, including total failure of the software system. NYVitFH = Number of hours when at least one vital function is unavailable (failed) during one year, including total failure of the software system. NYTFH = Number of hours of total failure (all system functions failed) during one year. NYFH NYVitFH NYTFH. 1 TUA VitA FA
CMaiP FCMP
CMaiE
CMaiYH = Total yearly working hours invested in the corrective maintenance of the software system. NYF = number of software failures detected during a year of maintenance service. NMFP = number of function points designated for the maintained software. KLMC = Thousands of lines of maintained software code.
Contents
Software quality and management of software quality
ISO
ISO: International Organization for Standardization
ISO 9000: an international set of standards for quality management, applicable to a range of organisations from manufacturing to service industries ISO 9000 : Fundamentals and vocabulary ISO 9001 : Requirements ISO 9004 : Guidelines for performance improvements ISO 9000-3: represents implementation of the general methodology of quality management ISO 9000 Standards to the software development and maintenance
CMM components maturity levels key process areas (KPA) goals and common features key practices process capabilities
Level 1 - Initial
Process is ad hoc, occasionally chaotic
Unpredictable
Success due to heroic effort
Level 2 - Repeatable
Basic management processes, quality assurance and configuration control procedures in place Can repeat earlier successes Realistic project commitments based on results of previous project Still has frequent quality problems Stable planning and tracking
Level 3 - Defined
The software process for both management and engineering activities is documented, standardized, and integrated into a standard software process for the organization All projects use an approved, tailored version of the organization's standard software process for developing and maintaining software
Level 4 - Managed
Quality and performance is measured using metrics and can be predicted Quality and productivity quantitative goals are established Exceptional cases are identified and addressed
Both the software process and products are quantitatively understood and controlled
Level 5 - Optimizing
Organization focuses on continuous process improvement Goal is to address and prevent problems by analyzing their cause in the process Process improvement is budgeted, planned, and part of the organizations process Identify and quickly transfer best practices
CMMI
CMMI models provide guidance for developing or improving processes that meet the business goals of an organization
CMMI is the successor of the CMM In 2002, CMMI Version 1.1 was released, Version 1.2 followed in August 2006, and CMMI Version 1.3 in November 2010
CMMI models
CMMI-SE/SW: integrates the system engineering and software engineering CMMI-SE/SW/IPPD: integrates system engineering, software, integrated product/process and supplier sourcing aspects CMMI-SE/SW/IPPD/SS: integrates system engineering, software engineering and integrated product/process and supplier sourcing engineering aspects
Contents
Software quality and management of software quality
Prevention costs
Investments in development of new or improved SQA infrastructure Regular implementation of SQA preventive activities: instruction of new employees in SQA subjects certification of employees Control of the SQA system through performance of: internal quality reviews external quality audits by customers and SQA system certification organizations management quality reviews
Appraisal costs
Costs of reviews: formal design reviews (DRs) peer reviews (inspections and walkthroughs) expert reviews Costs of software testing: unit, integration and software system tests acceptance tests (carried out by customers) Costs of assuring quality of external participants