“If you're relentlessly focused on lowering cost, you'll quickly become oblivious to opportunities to increase value.”
(Michael Bolton)
Waterfall Process In the Quality Assurance Activities
In the most frequently used waterfall process for big software projects, development activities are generally divided into various consecutive steps to form a waterfall, although the overlaps are prevalent among successive pairs of phases.

A typical sequence consists of the following points arranged in chronological order:
- product planning
- technical requirement analysis
- specification
- design
- coding
- software testing
- release
- product support after release
Software testing is the main part of quality assurance activities and an essential part of the waterfall development process. It forms a relationship in the entire development chain.
Other quality assurance activities, which are not explicitly described in the waterfall process, can be used on other stages in the transition from one stage to another. For instance, part of the criteria for transition from one phase to another is the quality that usually takes the form of testing. It aims to make sure that specific quality plans or standards have been accomplished or followed, as different forms, reviews or verifications demonstrate.
Different fault prevention activities are generally carried out during the earlier phases of software development, before actual errors have been penetrated into the software systems.
There are some considerable reasons for using quality assurance activities during the earlier stages of development:
- The defect sources such as conceptual mistakes by programmers or designers
- Lack of knowledge about the domain
- Lack of experience with the certain development technologies are generally related with activities on early stages of engineering
That’s why, the elimination of software bugs source is directly connected with the early development stage.
Several errors can get in software product during testing or at later stages, but according to experience most of the errors from the early stages of development appear during design and implementation.
Thus, successful error prevention through defect blocking needs to be performed during early stages.
Because of the possibility of bugs to spread and increase cost over time, we should reduce the number of errors in the systems with the help of software bug averting measures and the usage of special quality assurance techniques.
Some default detection and removal activities can be assigned to early stages, such as inspecting technical documentation, specifications, and product design. But there is barrier for finding bugs on the early phases.
For instance, dynamic problems can occur directly during the performance and the relations become apparent with the execution of certain modules and components. As a result, other software bugs detection and removal deeds, such as checking, are generally focused in the center of late stages of software development.
Eventually, failure averting and containment measures, such as fault tolerance and safety assurance, are the center of phases. But, their design, planning and implementation should be carried out during the software development.
In other words, these methodologies are similar to adding some tools or references into the product in order to make them fault tolerant.
This picture illustrates quality assurance activities in the waterfall process.

Three key characteristics are illustrated there:
- Testing phase is the focus stage of quality assurance activities
- Such quality assurance activities as inspections and reviews carried out at the transitions from one stage to the next are demonstrated as gates to penetrate. The exception is between testing and release, where the activities are conducted with acceptance testing
- Other quality assurance activities are scattered in all phases: the general place of use is shown by the dotted line. It is focused on error averting in the early stages, on error removal during coding and testing, and on default containment in support.
Food for Thought
Our Clients:
Testimonials:
Knowledge Center
-
QA Testing Materials
- Software Testing Craft
- How to Build Your Testing Reputation in Software Testing Company?
- Features of Performance Testing in the Management of E-Business
- “Watchful Waiting” in Testing Process
- 5-Step Metrics Program While Performing Software Testing
- What Kinds of Testing Tools Are Required for Conducting Software Testing?
- 5 Aspects of Software Testing
- Some Aspects of Using Frameworks in Software Testing
- Necessity of Using Performance Testing
- Why Mobile Application Testing Spins Up So Rapidly?
- Selection of Test Design Technique as a Step to Successful Software Testing
- Beta Testing of Mobile Applications: Myth or Reality?
- 2 Ways of Software Testing Performance Measurement
- Testing Tools: Pros and Cons
- Testing Tools: What to choose?
- What Is Common Between the Work at Software Testing Company and Different Kinds of Sport? Part II
- What Is Common Between the Work at Software Testing Company and Different Kinds of Sport? Part I
- With the Help of Software Testing Problems Can be Evaded
- How to Adapt Your Performance Testing to the Rapidly Changing Modern Software?
- How to Conduct Mobile Testing of Client Applications?
- Mobile Testing Overview: What is a AJAX Application and How to Test It?
- Tips on How to Unite Automated Testing with Mobile Application Testing
- Mobile Application Testing: How to Test Markup Applications?
- What Should We Focus on When Conducting Mobile Testing?
- Which Problems Can You Face When Conducting Mobile Testing?
- Unit Testing: Myth Busting
- 5 Tips on How to Get Educated in User-Centered Design
- 5 Tips on How to Assist User-Participants during Usability Testing
- How Many Types of Software Testing Do You Know? Part II
- Show all
- How Many Types of Software Testing Do You Know? Part I
- Self-Reporting as a Part of Usability Testing
- Types of Software Testing: Integration Testing
- Software Testing Types: Model-Based Testing
- Ways to Automate Performance Testing
- How to Economically Benefit from Usability Issues?
- Stages of Software Development
- Testing Your Product on Usability
- Training Real Professionals in Usability Testing
- Some Glimpses of Automated Testing
- Implementing UCD into Your Software Testing Company
- Portable Software Testing Laboratory. What Are Its Advantages?
- Tips on How to Arrange Software Testing at a User’s Site
- The Existing Standards of Software Testing
- Forced-Error Testing
- Software Testing Reports. Why Do We Need Them?
- The Arrangement of a Software Testing Room
- 5 Main Mistakes in Product Usability
- Questions Related to Software Testing Company Activities
- Some Facts about Software Testing, Quality Assurance and Quality Engineering
- Responsibilities of Software Tester
- How to Analyze a Bug?
- The Principles of Gray-Box Testing
- What are the Main Factors that Influence the Software Testing Project Price?
- How to Measure Quality? Estimating Bugs and Results of Their Fixing
- When are the Software Testing Activities to be Stopped?
- Frequently Asked Questions About Software Testing
- Some Facts about Security Testing
- Who is a Professional in Software Testing?
- Why Do We Need Multi-Platform Testing?
- How to Establish Good Communication between Software Tester and Management Team?
- An Art of Communication in Software Testing Project
- Building the Career as a Professional Software Tester
- Can Automated Testing Replace the Smart Software Tester?
- Applying Best Practices in Software Testing
- Making a Decision What Should be Automated
- Why Do We Need Automated Testing?
- What Is Scenario-Based Testing and When Should We Use It? Part II
- What Is Scenario-Based Testing and When Should We Use It? Part I
- The Basis Of Interaction Testing
- Software Testing Sub-Stages
- Finite-State Machines for Web Testing
- Software Testing With Different Types Of Checklists
- What Is Checklist-Based Testing?
- Main Software Testing Activities
- Users and Third-Party Testers In Software Projects
- Organization and Management of Software Testing Teams
- Software Test Implementation Measurements
- Why Is It Important to Have Testable Requirements?
- Test Suite Management
- Test Suite Preparation
- What Is The Difference Between Coverage-Based Testing And Usage-Based Statistical Testing
- Two Main Forms Of Stopping Software Testing
- The Meaning of Structural Testing In Software Project
- Major Activities And The Generic Testing Process
- Sub-Activities in Test Planning and Preparation
- Software Testing: Concepts, Issues And Techniques
- Human Efforts In Quality Assurance Activities. Part II
- Human Efforts In Quality Assurance Activities. Part I
- Forming a Quality Assurance Strategy
- Setting Software Quality Purposes
- What to Test and What Type of Faults Are Found?
- Verification and Conformance In Software Testing
- Validation and Failures In Software Testing
- Waterfall Process In the Quality Assurance Activities
- Operating with Pre-/Post-Release Software Bugs
- Software Bug Handling And Related Activities
- Software Bugs’ Averting Activities
- What Is Quality In Software Engineering?
- Software Bugs In The Context of Quality Assurance
- At What Defect Level Should We Stop Software Testing?
- When Can a Specific Testing Activity be Conducted?
- When Should We Do Backup and Recovery Testing?
- What Is Documentation Testing?
- Performance Testing And Different Test Types
- Test Documents In The Software Development Lifecycle
- Quality Cost Analysis: Main types of Costs Associated with Software Products
- What Is Defect Removal Efficiency In Software Testing?
- The Severity Ratings In Software Project
- Software Projects Analysis And Design
- Definition and Meaning of Exploratory Testing
- Definition and Meaning of Configuration Management. Part II
- Definition and Meaning of Configuration Management. Part I
- Design of Applications and Regression Testing
- Test Plan Documents Used in a Project
- Main Types Of Strategies For Rolling Out To The End Users
- What Does Testing Company Need From User To Start Proper Testing?
- Start Software Testing On Early Stages. How Does This Affect Cost?
- User Acceptance Testing as One of the Main Service Models in Software Testing Company. Part II
- User Acceptance Testing as One of the Main Service Models in Software Testing Company. Part I
- 5 Types of Software Testing Teams
- Software Test Plan Process
- Incident Management in Software Testing
- The Main Goals of Software Test Plan
- Test Planning and Development Documentation
- The Theory of Software Testing. Testing the Specifications
- Test Execution Documentation
- Definition of Beta Testing
- Performance-Based Decisions: Deciding When and What to Test. Part II
- Performance-Based Decisions: Deciding When and What to Test. Part I
- Error Guessing in Software Testing
- V-MODEL Descriptions. Responsibility of QA Managers and Software Testers
- V-MODEL Descriptions. Responsibility of Developers, Project Managers and Business Analyst
- Fundamental Test Process
- The V-Model Framework
- Risk Management In Software Testing
- Oracle. Definition and Meaning
- Psychology In Software Testing
- How Much Does Quality Cost? Part II
- How Much Does Quality Cost? Part I
- Economics of Testing
- Software Bug's Life Cycle
- When Should You Test?
- Completeness of Software Testing. The Criteria for White Box. Part II
- Completeness of Software Testing. The Criteria for White Box. Part I
- Completeness of Software Testing. The Criteria for Black Box
- Completeness of Software Testing. Introduction
- Practice of Automated Functional Testing in Microsoft Visual Studio
- Estimation of Number of Errors in the Program. Mills Model. Part II
- Estimation of Number of Errors in the Program. Mills Model. Part I
- Ad Hoc and Exploratory. What is the Difference Between Theory and Practice?
- Modern Methods of SQL Injection Attacks: Identification
- Testing of Mobile Applications
- Complete Software Testing Outsourcing. Part II
- Complete Software Testing Outsourcing. Part I
- The Rapid Expansion of the Company's Resources as the Goal of Outsourcing
- Independent Quality Audit. Part III
- Independent Quality Audit. Part II
- Independent Quality Audit. Part I
- Testing of Existing Software Products
- Overview of Automated Testing Tools
- Independent Software Testing
- Necessary Tools to Test Linux
- Basics of Automated Functional Testing
- Product Life Cycle and Testing
- Models of Organization of Independent Testing
- Tools for Testing From HP
- Tools for Testing From the IBM Rational
- What Do We Need to Know to Become an Expert in Performance Testing?
- How to Сontrol Test Data
- The Basic Load Testing Tools
- The Importance of Software Testing Automation
- Selenium: Subsidiary Tools
- Attacks on Unprotected Login Forms
- 10 Usability Heuristics
- The Introduction to JMeter
- Autotests: Myths And Reality
- Evaluation of software reliability
- Developers Don’t Like Testers, Because They Don’t Know How to Use Them
- 15 Important Theses About Usability Testing
- Load Testing of the Projects
- Pylot - Tool For Load Testing of Web Applications
- Key Terms of Load Testing
- An Example of System Requirements
- Life Duration of Software Bug
- 4 Attributes of Qualitative and Well-Written Test-Case
- Superstitions in Software Testing
- Fundamentals of Mobile Application Testing
- 3 Tips to Reduce Mobile Application Testing Efforts
- Project Applications that are Easy to Test
- Software Testing Checklist – 5 Steps to Success
- Top 10 Critical Software Bugs of 2010 Year
- 3 Types of Mobile Wireless Applications
- What Is A Mobile App and Why Do I Want One?
- What is Fuzz Testing?
- Mutation Testing – Way to Verify Your QA Team
- Effective Use Case Example
- Well-Performing Application is Goal of Performance Testing
- The Parable of the Pyramids in a New Way
- Pareto Principle in Software Testing
- Who is a Good Tester?
- Has the Software Tester Right to Make Mistakes?
- 5 Tips to Get Started in Software Testing
- 3 Tools to Test UI Mockups Compliance
- 5 Simple Ways to Reproduce Not Reproducible Bug
- 4 Best Add-ons to Identify Selenium Locators
- Running Selenium Server Using Custom Firefox Profile
- 3 Goals of Usability Testing
- 3 Forms of Acceptance Testing and their Application
- Test Strategies for Smartphones and Mobile Devices
- Embedded Software Testing
- Testing Techniques for Mobile Applications
- Tutorial Database Testing using SQL
- 12 Best Cross Browser Testing Tools to Ease Your Browser Compatibility Testing Efforts
- 6 Tips to Get Started with Automated Testing
- Do I Need to Test the Automated Tests?
- Technical Terms Used in Testing World
- ISTQB Advanced Practioner Level Practice Exam 1
- Mobile Usability Testing: Problems and Solutions
- Does any one know a good open source tool for Test Management and Bug Tracking?
- Software Quality Metrics
- How to Make Adhoc Testing More Effective
- Test Plan for a Mobile Applications
- 10 reasons why you are not getting job in software testing
- Top 20 Practical Software Testing Tips
- Wasting Your Time By Not Writing Tests
- Test Checklist For Mobile Applications
- Sample Deliverables
- Software Testing Glossary