0% found this document useful (0 votes)
6 views5 pages

Software Testing Methods Overview

Uploaded by

chdivyatejal
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views5 pages

Software Testing Methods Overview

Uploaded by

chdivyatejal
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Module 2 Assignment – Software Testing Methods

Question 1: Boundary Value Analysis (BVA)


1(a) Concept and Evaluation
Boundary Value Analysis (BVA) is a black-box testing technique focusing on values at the
edges of input domains. Test cases target minima, maxima and values just inside/outside
the boundaries because errors commonly occur there. BVA is efficient for defect detection
but does not replace exhaustive testing or logic-based checks.

Selection of boundaries: include min, min-1, min+1, max-1, max, max+1. Example: For age
(valid 18–60), test values 17, 18, 19, 59, 60, 61 to detect boundary validation faults.

1(b) Application to sample programs


Prime checker (single input): valid domain integers >= 2; boundaries to test: 0, 1, 2, 3,
negative numbers (invalid). For power function a^b (two inputs): consider base and
exponent boundaries (e.g., -1, 0, 1, 2) and invalid combinations (negative exponent if not
supported).

BVA Test Cases (example for a^b):

Test Case a (base) b (exponent) Expected Result

1 -1 2 Invalid input or
error

2 0 0 1 (commonly
defined)

3 0 1 0

4 1 0 1

5 2 -1 Invalid if negative
exponents not
supported

6 2 2 4

Diagram: Boundary Value Analysis (example number line for 1–100):


Question 2: Equivalence Class Partitioning (ECP)
2(a) Concept and Evaluation:
Equivalence Class Partitioning divides the input domain into classes where values are
expected to be processed similarly. It reduces redundant test cases and focuses on
representatives from each class. Weaknesses include possible misses at boundaries or
special values.

2(b) Example: Greatest of three numbers (range 1–50)

Define classes:
- Invalid: <1
- Valid: 1–50
- Invalid: >50
- Also consider non-integer invalids (e.g., 3.5)

Test Case Inputs (x,y,z) Expected Output

1 (10,20,30) 30 (valid class)

2 (0,10,20) Invalid input

3 (51,40,20) Invalid input

4 (25,25,10) 25

5 (5,-1,7) Invalid input

6 (15,50,49) 50

Diagram: Equivalence Class Partitioning (range 1–50):


Case Study: Inspection Process
Flowchart of inspection stages: Planning -> Overview -> Preparation -> Inspection Meeting -
> Rework -> Follow-up.
Each stage contributes as follows:
- Planning: defines scope, roles and schedule; reduces confusion.
- Overview: gives context to reviewers, improving inspection quality.
- Preparation: reviewers study materials to find defects efficiently.
- Inspection Meeting: defects are identified and logged.
- Rework: author corrects defects.
- Follow-up: moderator verifies fixes and closes issues.

Flowchart:
Inspection Techniques: Short Notes
Glib Inspection: Informal quick check; advantage: fast; disadvantage: may miss serious
defects; use for non-critical docs.

ADR (Active Design Review): Structured review with prepared questions; advantage:
deep understanding; disadvantage: time-consuming; use in design phase.

FTArm (Formal Technical Review with ARM): Highly structured technical review;
advantage: catches many defects early; disadvantage: resource-intensive; suitable for
technical systems.
N-Fold Inspection: Multiple independent inspections; advantage: very high defect
detection; disadvantage: expensive; use in safety-critical systems.

Phased Inspection: Stage-wise inspections across lifecycle; advantage: systematic;


disadvantage: longer time; use in large projects.

Technical Reviews: Peer-based expert reviews; advantage: deep insights; disadvantage:


may miss non-technical issues; use for complex algorithms.

Structured Walkthrough: Author-led walkthrough; advantage: knowledge sharing;


disadvantage: may overlook hidden defects; use for training and understanding.

Common questions

Powered by AI

N-Fold inspection involves multiple independent inspections, leading to a very high defect detection rate as different inspectors may catch different defects . This yields a major strength in safety-critical systems where high reliability is crucial. However, the primary weakness is that it is expensive due to the repeated efforts required from multiple inspection teams. The high cost and intensive resource spending make it less feasible for projects with limited budgets or resources .

A software team would prefer using phased inspection over glib inspection in scenarios involving large and complex projects where a systematic, stage-wise approach throughout the software lifecycle is beneficial . This approach is suitable for ensuring thorough inspection at various stages, thereby capturing a wide array of defects systematically . In contrast, glib inspection is informal and fast but may miss serious defects, making it less suitable for critical or complex systems .

Technical reviews are peer-based expert reviews focused on providing deep insights into complex algorithms and systems, often catching many defects due to the expertise involved . In contrast, Active Design Reviews (ADR) are highly structured, involve prepared questions, and are conducted during the design phase to ensure a deep understanding of the design . ADRs tend to be more focused on design aspects, whereas technical reviews are more general and can miss non-technical issues. Both methods aim to enhance software quality but do so through different focuses: design understanding in ADR and expert technical insight in technical reviews .

Glib inspection may be preferred over a formal technical review in scenarios where rapid feedback is required, and the documents are not critical, such as early drafts or non-technical documents . The key advantage is its speed, allowing for fast identification of obvious defects without the resource intensity of a formal review. In contrast, a formal technical review is resource-intensive and may be overkill for less critical or preliminary documents where detailed inspection is not necessary .

Equivalence Class Partitioning might miss defects that occur at boundary values or with special-case inputs because it focuses on representative values from each class rather than covering all possible inputs . This can be mitigated by supplementing ECP with Boundary Value Analysis to specifically target the edge cases and by conducting exploratory testing to identify unusual or unexpected defects that do not fit within defined equivalence classes . By integrating these methods, testers can achieve a more comprehensive testing strategy that addresses both typical and boundary behaviors.

Boundary Value Analysis (BVA) is a black-box testing technique that focuses on testing the boundaries between input values as errors often occur at the edges of input domains . The primary advantage of BVA is that it is highly efficient in detecting defects because it targets the most error-prone areas, the boundaries . However, its major disadvantage is that it does not replace exhaustive testing or logic-based checks, meaning that it may not detect all possible issues, particularly those arising from logic errors within the domain .

The inspection process comprises several stages, each contributing uniquely to defect detection and resolution. Planning ensures proper scope and understanding, reducing wasted effort. The overview provides context, enhancing quality of reviews. Preparation allows reviewers to familiarize themselves with materials, maximizing their defect detection capability during the inspection meeting where defects are identified and logged . Rework involves corrections by the author, addressing identified defects, and follow-up by the moderator ensures that corrections have been applied, closing issues and confirming resolution . Each stage builds on the previous, creating a comprehensive framework for effectively managing defects in software projects.

For the power function a^b, Boundary Value Analysis suggests testing the boundaries of both the base and the exponent. Recommended test cases include a base at -1, 0, 1, 2 and an exponent at boundaries such as 0, 1, and -1 . Expected results include errors for invalid input cases such as a=-1, b>=0 when negative bases are not supported, and for 2^(-1) when negative exponents are not supported . Specific results should be: (1, -1, 2): Invalid input, error; (0, 0): 1; (0, 1): 0; (1, 0): 1; (2, 2): 4 .

Equivalence Class Partitioning (ECP) divides the input domain into classes that are expected to be processed similarly, focusing on representative values from each class to reduce redundant test cases . This approach contrasts with Boundary Value Analysis (BVA), which specifically targets the values at the edges to uncover errors that are likely to occur at the boundaries of input domains . While ECP aims to reduce test cases by identifying equivalence among inputs, BVA focuses on detecting defects through boundary-specific cases, often leading to different sets of test scenarios .

Planning in the software inspection process plays a crucial role by defining the scope, roles, and schedule, which reduces confusion and sets clear expectations for all participants . This initial step ensures that all stakeholders are aligned and that the inspection process proceeds smoothly and efficiently. By establishing these parameters, planning contributes to the effectiveness of the inspection process by providing a framework that guides subsequent stages and facilitates high-quality reviews .

You might also like