Design Verification
1️⃣ Introduction to Design
Verification
Design Verification is the process of evaluating software
design to ensure that it correctly implements the requirements specified in the
Software Requirement Specification (SRS).
It answers the question:
“Are we designing the system correctly according to the
requirements?”
Design verification is performed before implementation
to detect errors early, reduce cost, and improve quality.
Errors found during design stage are much cheaper to fix
compared to coding or maintenance stage.
2️⃣ Objectives of Design
Verification
The main objectives are:
🔹 Ensure Requirement
Compliance
The design must completely and correctly reflect all
requirements mentioned in SRS.
🔹 Detect Design Errors
Early
Logical mistakes, incomplete modules, missing interfaces,
and inconsistencies are identified early.
🔹 Improve Quality
Verification improves reliability, maintainability, and
performance.
🔹 Reduce Development Cost
Fixing errors in design stage is far cheaper than fixing
after deployment.
3️⃣ Need for Design Verification
Design verification is necessary because:
- Complex
systems may have hidden logical flaws.
- Missing
modules may not be noticed during coding.
- Interface
mismatches can cause integration failures.
- Poor
design decisions affect long-term maintenance.
Without verification, a system may satisfy coding standards
but fail to meet business requirements.
4️⃣ Design Verification vs Design
Validation
These two terms are often confused.
|
Design Verification |
Design Validation |
|
Checks correctness of design |
Checks usefulness of system |
|
“Are we building the product right?” |
“Are we building the right product?” |
|
Done during development |
Done after development |
Verification ensures design correctness.
Validation ensures customer satisfaction.
5️⃣ Techniques of Design
Verification
There are several systematic methods used to verify software
design:
5.1 Design Reviews
Design review is a formal evaluation process where experts
examine design documents.
Types of reviews:
- Informal
Review
- Peer
Review
- Technical
Review
- Formal
Inspection
During review, team members check:
- Completeness
- Consistency
- Logical
correctness
- Interface
design
- Standard
compliance
Reviews are one of the most effective verification methods.
5.2 Walkthroughs
In walkthrough, the designer explains the design
step-by-step to the team.
Team members ask questions and identify:
- Logical
gaps
- Missing
cases
- Performance
concerns
Walkthroughs encourage collaboration and knowledge sharing.
5.3 Prototyping
A small working model is created to verify design
assumptions.
It helps in:
- Validating
user interface
- Checking
workflow
- Confirming
functionality
Prototyping reduces ambiguity in requirements.
5.4 Simulation
Simulation tests the system design using models without full
implementation.
It helps evaluate:
- Performance
- Scalability
- Resource
utilization
Simulation is useful for real-time and embedded systems.
5.5 Formal Verification
Formal verification uses mathematical methods to prove
correctness.
It ensures:
- Logical
consistency
- Error-free
algorithms
- Compliance
with specifications
It is mostly used in safety-critical systems such as
aviation and medical software.
6️⃣ Design Verification Process
The general steps involved are:
- Review
SRS document
- Compare
design with requirements
- Check
module interfaces
- Verify
data structures
- Evaluate
performance considerations
- Document
defects
- Correct
and re-evaluate
This systematic approach ensures structured verification.
7️⃣ Attributes Checked During
Design Verification
The following characteristics are evaluated:
🔹 Completeness
All requirements must be covered.
🔹 Consistency
No contradictory logic.
🔹 Traceability
Every design element must map to a requirement.
🔹 Modularity
Proper separation of modules.
🔹 Maintainability
Design should allow future changes.
🔹 Efficiency
Design should optimize time and memory usage.
8️⃣ Benefits of Design
Verification
- Improves
reliability
- Reduces
project risk
- Enhances
documentation quality
- Prevents
system failure
- Saves
development time
- Increases
customer satisfaction
9️⃣ Challenges in Design
Verification
- Requires
experienced reviewers
- Time-consuming
process
- May
delay development schedule
- Overlooking
minor issues
Despite challenges, verification is essential for quality
assurance.
🔟 Role of Design
Verification in SDLC
In SDLC, design verification acts as a quality gate between:
Requirement Phase → Design Phase → Implementation Phase
Only after verification approval should the system move to
coding phase.
This ensures strong foundation for software construction.
📌 Conclusion
Design Verification is a critical activity in software
development that ensures the software design correctly represents the specified
requirements. It helps identify errors early, reduces cost, improves
reliability, and enhances system quality.
By applying techniques such as reviews, walkthroughs,
prototyping, and formal verification, software engineers ensure that the system
design is complete, consistent, and correct before implementation begins.
No comments:
Post a Comment