Skip to main content

Software Quality Fundamentals

DEFINITION
Software quality is the degree of conformance to explicit or implicit requirements and expectations.
Explanation:
  • Explicit: clearly defined and documented
  • Implicit: not clearly defined and documented but indirectly suggested
  • Requirements: business/product/software requirements
  • Expectations: mainly end-user expectations
Note: Some people tend to accept quality as compliance to only explicit requirements and not implicit requirements. We tend to think of such people as lazy.
Definition by IEEE
  • 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.
Definition by ISTQB
  • quality: The degree to which a component, system or process meets specified requirements and/or user/customer needs and expectations.
  • software quality: The totality of functionality and features of a software product that bear on its ability to satisfy stated or implied needs.
As with any definition, the definition of ‘software quality’ is also varied and debatable. Some even say that ‘quality’ cannot be defined and some say that it can be defined but only in a particular context. Some even state confidently that ‘quality is lack of bugs’. Whatever the definition, it is true that quality is something we all aspire to.
Software quality has many dimensions. See Dimensions of Quality.

Comments

Popular posts from this blog

Introduction to Apache JMeter

Apache JMeter is a great open source application with awesome testing abilities. Web Server is a platform which carries loads of numbers of applications and users, so that it is necessary to know that how does it works or performs means; how effective it is to handle simultaneous users or applications. For example; how the “Gmail” supporting server will perform when numbers of users simultaneous access the Gmail account – basically have to do performance testing using performance testing tools like JMeter, Loadrunner etc. To check the high performance of the application or server, do high performance testing using JMeter for exceptional results. Before understanding Overview of JMeter , let us have a look on three testing approach, Performance Test : This test provides the best possible performance of the system or application under a given configuration of infrastructure. Very fast, it also highlights the change need to be made before application goes into prod...

Why Agentic AI is the Future of Functional Testing

A gentic AI (AI agents with autonomy and reasoning ability) is rapidly transforming software testing, especially functional testing . Let’s break it down clearly: 🧠 What Is Agentic AI? Agentic AI refers to autonomous AI systems that can: Understand goals (e.g., “verify all checkout flows work”) Plan and reason about how to achieve them Take actions like navigating UIs, generating test cases, or running automation scripts Adapt based on feedback or changing application states Unlike traditional AI (which performs fixed predictions or classifications), agentic AI can act , learn , and self-improve over time. ⚙️ Why It’s the Future of Functional Testing 1. Self-Generating and Self-Maintaining Tests Traditional automation struggles with maintenance — UI changes break scripts constantly. Agentic AI solves this by: Observing the app’s UI, flows, and APIs Generating relevant test cases automatically Adapting scripts when elements change (e.g., detecting a new but...

Software Testing Documents

Software Testing Documents- I) Test Policy (Company Level Document) 1) Test Definition              (Verification & Validation) 2) Testing Process (Proper planning before starts testing) 3) Testing Standards 4) Testing Measurements (QAM, TTM, PCM) 5) Risks 6) Approvals 7) Comments 8) Revision History -------------------------------------------------------- II) Test Strategy (Company Level Document) Table of Contents 1.0    Introduction 2.0    Objective 3.0    Scope of the Document 4.0    Test Approach 4.1              Introduction 4.2              Functional and Usability Issues 5.0        Phases of Testing 5.1        ...