That which is Software programs Verification together with Validation

Whilst you will find variations on the definitions of these two terms, within the broad software QA and testing fields, there’s general consensus that verification describes correctness whilst validation describes the value of the last product.

Applying these general definitions to software testing, we note that the practical differences apply to the context and goals of the testing, as opposed to any difference in software testing methods or tools.  안전놀이터 The context and goals of ‘validating’ software is the finish user or customer context whilst the context of software verification is ‘meets the specification’ ;.Indeed many software products are designed correctly, that is they meet standards and specifications, however they fail to generally meet the actual end user (i.e. customer) requirements.

Ultimately validation is the focus of what the customer is spending money on and whoever does validation represents the voice of the customer (or end user in the case of software applications developed for internal use). In practical terms this implies separating the software quality control teams (i.e. test teams) into two broad groups, one that has intimate knowledge of the customer context of the finished product and another group that has strong knowledge of how a software product must be produced.

By way of example consider an accounting application that records general ledger bookings. The business enterprise requirements will be produced which outline the business (accounting) rules to be followed. From the business requirements a technical specification will be produced which may document the behavior (i.e. program specification) of the ‘to be’ delivered software.

In the aforementioned example software validation would include the initial walkthrough of the business requirements, with the business representatives, to ‘validate’ that certain requirements do actually reflect what the application must do for the business. When the last application has been developed any testing against the business requirements is also a validation activity. The walkthrough of the technical specification to make sure it contains all the functionality of the business requirements is just a verification activity. Also the testing of the delivered software from the technical specification is also a verification activity.

Essentially validation can just only be achieved by people who have knowledge of how the delivered software is going to be used whilst verification can be done by anyone who is able to read a specification (or standard) and determine if it’s correct. Although we utilize the phrase ‘only’, this isn’t to demean the value of the verification team but rather to convey the fact strictly speaking the act of verification only requires knowledge of standards and specifications.

In practical terms the amount of complexity of the business requirements will determine if a specialized software validation team needs to exist. If there is considerable complexity and effort in understanding the business requirements then your business analyst would typically accept the role of software validation. In cases of high business complexity the analyst would specialize in given business areas in order to breakdown the situation domain.

Given a company facing team, to execute validation, a supporting team of software testers could be formed to execute verification. The benefits of splitting off the verification team, for large complicated projects, are concerned with efficiency (cost) and effectiveness (on communicating the business requirements to developers).

Leave a Reply

Your email address will not be published.