Quality management is the act of overseeing all activities and tasks needed to maintain a desired level of excellence. This includes the determination of a quality policy, creating and implementing quality planning and assurance, and quality control and quality improvement. It is also referred to as total quality management (TQM).
At its core, quality management (TQM) is a business philosophy that champions the idea that the long-term success of a company comes from customer satisfaction. TQM requires that all stakeholders in a business work together to improve processes, products, services and the culture of the company itself.
Quality is a measure of excellence or a state of being free from defects, deficiencies and significant variations. It is brought about by strict and consistent commitment to certain standards that achieve uniformity of a product in order to satisfy specific customer or user requirements.
Quality is linked to the business or service processes used by any organization. A process is the transformation of a set of inputs into outputs that satisfy customer needs and expectations, in the form of products, information or services. Each process in each department or area can be analyzed by an examination of the inputs and outputs for improvements. The output is transferred to somewhere or to someone. Hence, at every supplier/customer interface then there resides a transformation process and every single task throughout an organization must be viewed as a process in this way.
After knowing the process to meet a need, focus on doing the job correctly thus, resulting in a requirement to monitor and control the process.
Process Control
Feedback received from process is used for process control thus, focusing on the input and output of the process for data collection. Every sub-process or task act as an input to next task or as output for previous one. Achieving optimum resources usage by a process though keeping quality output by
- Applying feedback loop to collect data from various process stages so as to apply improvisation
- Re-design the process for data collection, analysis and improvisation as part of the process.
A real-time feedback will initiate improvisation quickly. Tools like control chart helps in data collection and analysis as well. The control of quality can only take place at the point of operation or production and the act of inspection is not quality control or quality assurance but both are
Quality Defined
It is defined as characteristic or attribute of a product or service. Refers to measurable characteristics that we can compare to known standards, in software it involves such measures as cyclomatic complexity, cohesion, coupling, function points, and source lines of code. It includes variation control
- A software development organization should strive to minimize the variation between the predicted and the actual values for cost, schedule, and resources
- They should make sure their testing program covers a known percentage of the software from one release to another
- One goal is to ensure that the variance in the number of bugs is also minimized from one release to another
There are two major types of quality
- Quality of Design: Design quality refers to the level of characteristics that the designers specify for a product.
- Quality of Conformance: The degree to which the design specifications are followed during manufacturing, this focuses on how well the implementation follows the design and how well the resulting system meets its requirements
Quality Control
It involves a series of inspections, reviews, and tests used throughout the software process, ensures that each work product meets the requirements placed on it. Also, includes a feedback loop to the process that created the work product which is essential in minimizing the errors produced.
Combines measurement and feedback in order to adjust the process when product specifications are not met; requires all work products to have defined, measurable specifications to which practitioners may compare to the output of each process.
Quality Management
It serves as an umbrella activity that is applied throughout the software process, involves doing the software development correctly versus doing it over again, it reduces the amount of rework which results in lower costs and improved time to market. It encompasses
- A software quality assurance process
- Specific quality assurance and quality control tasks (including formal technical reviews and a multi-tiered testing strategy)
- Effective software engineering practices (methods and tools)
- Control of all software work products and the changes made to them
- A procedure to ensure compliance with software development standards
- Measurement and reporting mechanisms
Quality Assurance Functions
It consists of a set of auditing and reporting functions that assess the effectiveness and completeness of quality control activities; provides management personnel with data that provides insight into the quality of the products; alerts management personnel to quality problems so that they can apply the necessary resources to resolve quality issues.
Product
A product as any tangible output or service that is a result of a process. A product itself may include hardware, software, documentation, or a combination of these; also note that a service is included in the definition.
Process
A process is a set of activities performed for a given purpose, for example, a software acquisition process. The quality of a product or service is dependent on the quality of the process used to create it.
Requirement
A requirement is a needed capability, condition, or a property that must be possessed by an entity to satisfy a contract, standard, specification, or other formally imposed documents. A requirement is a way of characterizing a user’s need in a way that allows a development team to implement that need in the product in a concrete way. The achievement of the requirement is the yardstick by which we measure the quality of a product or a service.
User
A user is either the customer or the end user. The user is either the customer (either internal or external) or represented by a buyer or the user community.
Evaluation
It is defined as the process of determining satisfaction of requirements. As defined by Kenett is defines evaluation as “a process to evaluate the quality of products and to evaluate associated documentation, processes, and activities that impact the quality of the products”. Evaluation includes methods such as analyses, inspections, reviews, and tests.
Measure and Measurement
Measure is to ascertain the characteristics or features (extent, dimension, quantity, capacity, and capability) of something, especially by comparing with a standard. Measurement is a dimension, capacity, quantity, or amount of something (e.g., 300 source lines of code or seven document pages of design). Measurement is the process by which numbers or symbols are assigned to attributes of entities in the real world in such a way as to characterize the attributes by clearly defined rules.
Failure
A failure is said to occur whenever the external behavior of a system does not conform to that prescribed in the system specification.
Error
An error is a state of the system. In the absence of any corrective action by the system, an error state could lead to a failure which would not be attributed to any event subsequent to the error.
Fault
A fault is the adjudged cause of an error.
Customer View of Quality
From the customer’s perspective, satisfaction after the delivering of the product is the ultimate validation of the product quality. It is clear that the concept of quality must involve customers or, simply put, quality is conformance to customers’ expectations and requirements
Customer views the software as a quality product if it satisfies the below mentioned criteria
- The product received is able to perform the task for which is was purchased
- All the requirements and the needs are being met by the product
- During the transaction they received a treatment which maintained their integrity and respect.