Subject : Computer Science. Paper : Software Quality Management. Module : Quality Management Activities Module No: CS/SQM/15

Similar documents
Quality Management. Managing the quality of the design process and final

Chapter 24 - Quality Management. Chapter 24 Quality management

SOFTWARE QUALITY ASSURANCE (SQA) Chapter 1

Measuring and Assessing Software Quality

Capability Maturity Model for Software (SW-CMM )

Software Quality Management

Course 3. Software Quality Assurance & Software Quality Models. S. Motogna - Software Quality

Lecture 2: Software Quality Factors, Models and Standards. Software Quality Assurance (INSE 6260/4-UU) Winter 2016

ISO 9001:2000 Drives Process Changes at Siemens

Overview of Session. Process Standards and Introduction to SEI Models. Software Quality. Software Quality. Quality Management

QUALITY ASSURANCE PLAN OKLAHOMA DEPARTMENT OF HUMAN SERVICES ENTERPRISE SYSTEM (MOSAIC PROJECT)

BASICS OF SOFTWARE TESTING AND QUALITY ASSURANCE. Yvonne Enselman, CTAL

ISO Your implementation guide

WORK PLAN AND IV&V METHODOLOGY Information Technology - Independent Verification and Validation RFP No IVV-B

ISO/IEC INTERNATIONAL STANDARD. Corporate governance of information technology. Gouvernance des technologies de l'information par l'entreprise

Are You Familiar with QA as Traffic Cop

Software Testing Life Cycle

Software Quality Management

Software Quality Management

Software Quality Management

The Components of the SW Quality Assurance System - Overview. 08/09/2006 SE7161 Software Quality Assurance Slide 1

Participation of Testing to Attain a Degree of Quality of Software

Oh No, DevOps is Tough to Implement!

AS9003A QUALITY MANUAL

á1058ñ ANALYTICAL INSTRUMENT QUALIFICATION

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Estimating the Cost of Enterprise Software System Implementations: It s Often Buyer Beware. White Paper. Ben Harrison, MAVERICK Technologies

Chapter 6. Software Quality Management & Estimation

Software Engineering Part 2

Software Quality Assurance

Introduction to the Testing Maturity Model Enhanced TM (TMMe)

9. Verification, Validation, Testing

For more Current papers visit Quantitative methods for assessing the quality of proposed architectural designs

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management

WE HELP PEOPLE BE THEIR BEST IN THE MOMENTS THAT MATTER BROCHURE INTEGRATED MANAGEMENT SYSTEM

Software Quality Assurance Framework (SQA) Yujuan Dou 窦玉娟 2008/11/28

Contract Change Management

WHAT DO YOU NEED TO KNOW ABOUT SOFTWARE MAINTENANCE

AS/NZS 4801 and OHSAS Your implementation guide

THE CORRELATION BETWEEN DEVELOPER-ORIENTED AND USER-ORIENTED SOFTWARE QUALITY MEASUREMENTS (A CASE STUDY)

This document describes the overall software development process of microcontroller software during all phases of the Company Name product life cycle.

PURCHASE ORDER ATTACHMENT Q-201 SOFTWARE QUALITY SUBCONTRACTOR REQUIREMENTS TASK DESCRIPTIONS - PURCHASE CATEGORY "A"

IBM Sterling Order Management drop ship capabilities

Digital Industries Apprenticeship: Occupational Brief. Software Tester. March 2016

Software Quality. Lecture 4 CISC 323. Winter 2006

Test Management is Risk management. Risk Based Testing

B.H. Far

Project Quality Management

Introduction to software testing and quality process

Calibration solutions for improving efficiency and quality.

Quick Guide: Independent Verification in TCO Certified

ProGAGE ISO. Innovation in Gage Management Software

Building quality into the software from the. Keeping and. the software. software life cycle

Chapter 26. Quality Management

Effective SOA governance.

An EMS is a management tool to improve environmental performance by providing a systematic way of managing an organization s environmental affairs.

NATIONAL E-PROCUREMENT PROJECT GUIDANCE NOTES

SOFTWARE STAKEHOLDER MANAGEMENT- It s not all it s coded up to be

Connecting Systems, People and Processes with Workflow. Three steps to automated success

Interactive presentation. Application methodology

Thoughts about modelbased test management. Matti Vuori

Annex II - Category B evidence. User Manual. for providing and evaluating Category B evidence

UNCOVER SAGE 50 CIS. Leave the hard work on site

GENERIC QUALITY ASSURANCE REQUIREMENTS FOR: BUILT TO PRINT ITEMS, ITEMS TO STANDARD AND OFF THE SHELF ITEMS

<P <Programme_name> <Project_name> <Account_name> <Phase_name> Test Strategy (Template)

Managing, Measuring, and Improving the Testing Process

Seminar 06 Chapter 5 - Part 1

R.POONKODI, ASSISTANT PROFESSOR, COMPUTER SCIENCE AND ENGINEERING, SRI ESHWAR COLLEGE OF ENGINEERING, COIMBATORE.

Software Lifecycle Integration Buyer s Guide. Betty Zakheim, VP of Industry Strategy

Compilation of Software Quality Factors and Criteria along with their Description for a Quality Product

RESEARCH NOTE NETSUITE S IMPACT ON WHOLESALE AND DISTRIBUTION COMPANIES

General Requirements for the Competence of Testing and Calibration Laboratories

V&V and QA throughout the M&S Life Cycle

By: MSMZ. Standardization

DEVELOP QUALITY CHARACTERISTICS BASED QUALITY EVALUATION PROCESS FOR READY TO USE SOFTWARE PRODUCTS

Introduction to Software Engineering

ISO 9001:2015 Your implementation guide


Building smart products: best practices for multicore software development

WHITE PAPER. Standardization in HP ALM Environments. Tuomas Leppilampi & Shir Goldberg.

Space Product Assurance

KNOWLEDGE AREA: SOFTWARE QUALITY

TABLE OF CONTENTS SELECTING AN ENCLOSURE COOLING SYSTEM MANUFACTURER. 3 7 QUALITIES TO LOOK FOR IN A MANUFACTURER Manufacturer Location..

1.0 PART THREE: Work Plan and IV&V Methodology

Taking Control of Your Incident Management

IBM Data Security Services for activity compliance monitoring and reporting log analysis management

EX0-114_Wins_Exam. Number: Passing Score: 800 Time Limit: 120 min File Version: 1.0

ISO/IEC Service Management. Your implementation guide

ISO 9001:2015 Your implementation guide

How Business Analysis Can Improve Sales and Marketing Outcomes

IT Service Management Foundation based on ISO/IEC20000

Greentree. Workflow and Business Process Management

THE FUTURE CONTENTS. Software Testing

IBM Software Rational. Five tips for improving the ROI of your software investments

CTIS 359 Principles of Software Engineering SOFTWARE QUALITY MANAGEMENT

ISO Internal Audit: A Plain English Guide

Choices IEC rd Edition and Component Selection

HOW TO EVALUATE A CRIME ANALYTICS SOLUTION

PROJECT MANAGEMENT. Quality Management (QM) Course 7 Project Management Knowledge Areas (5) Risk Management (RM)

REQUIREMENTS FOR SAFETY RELATED SOFTWARE IN DEFENCE EQUIPMENT PART 1: REQUIREMENTS

Transcription:

e-pg Pathshala Subject : Computer Science Paper : Software Quality Management Module : Quality Management Activities Module No: CS/SQM/15 Quadrant 1 : e-text QUALITY MANAGEMENT ACTIVITIES Software quality management is split into three main activities as given below 1. Quality assurance The development of a framework of organizational procedures and standards that lead to high quality software. 2. Quality planning The selection of appropriate procedures and standards from this framework and adapt for a specific software project. 3. Quality control Definition of processes ensuring that software development follows the quality procedures and standards. QUALITY ASSURANCE Quality assurance (QA) is a way of preventing mistakes or defects in manufactured products and avoiding problems when delivering solutions or services to customers; which ISO 9000 defines as "part of quality management focused on providing confidence that quality requirements will be fulfilled". This defect prevention in quality assurance differs subtly from defect detection and rejection in quality control, and has been referred to as a shift left as it focuses on quality earlier in the process. It deals with establishing organizational quality standards and procedures. Software quality assurance Software quality assurance (SQA) is a process that ensures that developed software meets and complies with defined or standardized quality specifications. SQA is an ongoing process within the software development life cycle (SDLC) that routinely checks the developed software to ensure it meets desired quality measures.

QUALITY PLANNING Quality Planning is the process for "identifying which quality standards are relevant to the project and determining how to satisfy them": Quality planning means planning how to fulfill process and product (deliverable) quality requirements: "Quality is the degree to which a set of inherent characteristics fulfill the requirements". It focuses on selecting and modifying applicable quality standards and procedures for a particular project. Software Quality Planning Software quality planning is the process of developing a quality plan for a project. The quality plan defines the quality requirements of software and describes how these are to be assessed. The quality plan selects those organizational standards that are appropriate to a particular product and development process. Quality plan has the following parts: 1. Introduction of product. 2. Product plans. 3. Process descriptions. 4. Quality goals. 5. Risks and risk management. QUALITY CONTROL Quality control provides monitoring the software development process to ensure that quality assurance procedures and standards are being followed. The deliverables from the software development process are checked against the defined project standards in the quality control process. The quality of software project deliverables can be checked by regular quality reviews and/or automated software assessment. Moreover, ensuring quality standards and procedures are followed by development team. Therefore, quality management should be separated from project management to ensure independence. QUALITY STANDARDS The main activity of the quality assurance process is the selection and definition of standards that are applied to the software development process or software product. There are two main types of standards. The product standards are applied to the software product, i.e. output of the software process. The process standards define the processes that should be followed during software development. The software standards are based on best practices and they provide a framework for implementing the quality assurance process.

The development of software engineering project standards is a difficult and time consuming process. National and international bodies such as ISO, Software engineering institute, ANSI and the IEEE developed standards that can be applied to software development projects. Organizational standards have developed by quality assurance teams and they are based on these national and international standards. ISO ISO 9000 is an international set of standards that can be used in the development of a quality management system in all industries. ISO 9000 standards can be applied to a range of organizations from manufacturing to service industries. ISO 9001 is the most general of these standards. It can be applied to organizations that design, develop and maintain products and develop their own quality processes. A supporting document (ISO 9000-3) interprets ISO 9001 for software development. ISO 9000-3 The need for a special interpretation of ISO 9001 for software was noted quite early, and in 1998 ISO published a guide for this purpose. The guide is numbered ISO 9000-3, and its title is "Quality management and quality assurance standards - Part 3: Guidelines for the application of ISO 9001:1994 to the development, supply, installation and maintenance of computer software (ISO 9000-3:1997". Even though ISO 9000-3 is a guideline and uses "should", it has a special status. It is not any guideline; it is ISO's own authorized guideline to the use of ISO 9001 with software. Thus, ISO 9000-3 is occasionally used as a requirement standard in the same manner as ISO 9001. In those cases, "should" is taken to mean "shall". ISO 9000-3 is only one of many possible interpretations of ISO 9001 for software. It is possible to fulfill ISO 9001 without fulfilling every "should" in ISO 9000-3. However, if there is a "should" in ISO 9000-3, which the software developers do not fulfill, they should be prepared to explain to an auditor how you handle that issue instead, and why they still believe that they fulfill ISO 9001. ISO 9000-3 is organized in the same quality elements as ISO 9001. Sometimes software engineers are frustrated with ISO 9001 and 9000-3. According to such software engineers, "ISO 9003 does not tell how to develop quality software", they complain, quite rightly. It is important to notice, though, that ISO 9001 (and thus ISO 9000-3) was never intended as a help for the developers. The standard is solely aimed at being a tool for the

customer. Basically, ISO 9001 makes the supplier implement basic management of software development, and the standard then enforces visibility, so that the customer can see what the developers are doing and judge it. In practice, ISO 9001 and 9000-3 can also be used as guides for the supplier's management, helping them control development and gain insight into what is really going on. The ISO 9001 standard isn t specific to software development but includes general principles that can be applied to software development projects. The ISO 9001 standard describes various aspects of the quality process and defines the organizational standards and procedures that a company should define and follow during product development. These standards and procedures are documented in an organizational quality manual. The ISO 9001 standard does not define the quality processes that should be used in the development process. Organizations can develop own quality processes and they can still be ISO 9000 compliant companies. The ISO 9000 standard only requires the definition of processes to be used in a company and it is not concerned with ensuring that these processes provide best practices and high quality of products. Therefore, the ISO 9000 certification doesn t means exactly that the quality of the software produced by an ISO 9000 certified companies will be better than that software from an uncertified company. Documentation standards Documentation standards in a software project are important because documents can represent the software and the software process. Standardized documents have a consistent appearance, structure and quality, and should therefore be easier to read and understand. There are three types of documentation standards: 1. Documentation process standards. These standards define the process that should be followed for document production. 2. Document standards. These standards describe the structure and presentation of documents. 3. Documents interchange standards. These standards ensure that all electronic copies of documents are compatible. 4. They are the key to effective software quality management 5. Product standards define the characteristics exhibited by all components (e.g. programming style issues) 6. Process standards describe how a software process is to be implemented

7. Should encapsulate best practices - this helps avoid repeating past mistakes 8. They provide continuity by giving new team members a means to understand the organizational priorities Issues in documentation standards It consists of issues on document identification standards, document structure standards, document presentation standards, document update standards and document Interchange Standards. Document identification standards How documents are labeled is the main concern. Document structure standards Organization of project documents are focused. Document presentation standards Fonts, styles, logos, etc. are considered. Document update standards Change control and version definitions are taken care of. Document Interchange Standards Allow documents produced on different computers, using different tools to be exchanged among team members. The lifetime of many word processing systems is often less than the lifetime of the software being documented, document archival can be tricky. Document interchange standards like XML are beginning to emerge as partial solutions to these problems. PRODUCT STANDARDS The product standards include the following: Design review form Document naming standards Function prototype format Programming style standards Project plan format Change request form

PROCESS STANDARDS Process standards include the following items: Design review guidelines Document submission procedures Version release process Project plan approval procedure Change control process Test data recording procedures PROBLEMS WITH STANDARDS The standards are sometimes viewed by software engineers as neither up-to-date or relevant to the current project. They can involve lots of bureaucratic form completion and submission. Often they are not supported directly by software tools and this can mean lots of manual work to maintain standards. Quality Standards Development Quality Standards Development should involve practitioners in their development. Moreover, the engineers must understand the rationale behind each standard. Standards must be reviewed and revised regularly to avoid obsolescence and credibility problems with practitioners. Detailed standards need tool support to eliminate the too much clerical work excuse for not following the standards. Process-Based Quality Product quality is influenced by the quality of its production process. This relationship is easy to see in the manufacture of goods, it is more complex for software production because: The application of individual skills and experience is particularly important in software development external factors (e.g. application novelty or need to accelerate schedule) are more likely to impair quality. Process Quality Overview Determines the process standards to be used (e.g. review procedures, configuration management, etc.). Monitor the development process to ensure standards are being followed. Report process findings to project manager and customer.

Quality Plan It identifies the most significant quality attributes appropriate for the product. Defines the assessment process in detail for each quality attribute. Indicates which organization standards should be applied and defines new standards as necessary. Quality Plan Components The following are the quality plan components: Product introduction Product plans Process descriptions Quality goals Risks and risk management Software Quality Attributes The software quality attributes are safety, security, reliability, resilience, robustness, understandability, testability, adaptability, modularity, complexity, portability, usability, accessibility, reusability, efficiency and learn ability. Data Collection A good metrics program is based on a set of identifiable product and process data. Data should be collected immediately (not retrospectively). The analyst must use automatic data collection if possible. The analysis methods include: static product analysis, dynamic product analysis and process data collection. Automated Data Collection The Automated Data Collection system consists of Instrumented software system, Usage data and Fault data. Instrumented software system - Monitors added to software to record necessary data unobtrusively. Usage data - Capture user inputs and transactions. Fault data - Make use of electronic media to record faults as they are uncovered. 1. Data Accuracy The data collection should follow the following points:

2. Don t collect unnecessary data Decide the questions to be answered in advance and only collect relevant data 3. Tell people why data is being collected Make sure people understand that the product and process are being evaluated (not the employees) 4. Don t rely on people s memory Collect data as it is being generated, not after a project is completed SUMMARY In order to maintain quality, reduce product defect injection rates during development. Moreover, improve support, usability, documentation, communication, or training. Finally, increase the sales of installed licenses (spreads same number of problems over more user months).