What is Software Testing?

What is Software Testing?
March 29 10:00 2011 Print This Article

In accordance with IEEE Std 829-1983 Software Testing is a process of analysis of software aimed at identifying differences between the real and the desired properties (defect) and to evaluate the properties of software.

What is Software Testing

According with GOST R ISO / IEC 12207-99 among other there are defined ancillary processes of verification, validation, joint review and audit in the life cycle of software.

The process of verification is the process of determining what software products operate in full compliance with the requirements or conditions, which are implemented in previous works. This process may include analysis, inspection and testing.

Certification process is a process of determining the completeness of compliance, established by the system or software product of their functional purpose.

Joint review process is a process of assessment and, where it is appropriate, results of operations (products) for the project.

The audit process is a process for determining compliance with the requirements, plans and contract terms.

In sum, these processes constitute what is commonly referred to testing.
Testing based on test procedures with specific input data, initial conditions and the expected result, developed for a specific purpose, such as checking individual programs or verification of compliance for specific requirements. Test procedures can test different aspects of the program – from the proper operation of a separate function to adequately fulfill the business requirements.

In carrying out the project it must be considered in accordance with any standards and requirements will be testing the product. What tools will be (if it will) be used for search and for documenting the found defects. If you remember the test at the outset of the project, testing of the developed product does not deliver unpleasant surprises. And this means the product quality is likely to be quite high.

Product Life Cycle and Software Testing

Increasingly nowadays an iterative software development processes uses, in particular, the technology RUP – Rational Unified Process. When using this approach, testing ceases to be a process of “the suburbs”, which starts after the programmers write all the code. Work on the test starts at the initial stage of identifying requirements for future products and is closely integrated with current tasks. And it imposes new requirements for testers.

Their role is not simply to identify mistakes as fully as possible and as soon as possible. They should participate in the overall process of identifying and removing the most significant project risks.

For this purpose, each iteration is determined by the purpose of testing and methods of achieving it. And at the end of each iteration it is determined by the extent to which this goal is achieved, we need any additional tests, and whether to change the principles and tools of the tests. In turn, every detected defect has to go through its own life cycle.

Testing is usually performed in cycles, each of which has a specific list of goals and objectives. Testing cycle may coincide with the iteration or comply with certain of its parts. Typically, the cycle test is conducted for a particular build system.

The life cycle of a software product consists of a series of relatively short iterations. Iteration is a complete development cycle, leading to the release of the final product or some of its abbreviated version, which extends from iteration to iteration, so that, eventually, to become a complete system.

As a rule each iteration includes the tasks of planning, analysis, design, implementation, testing and evaluation of progress.

However, the ratio of these tasks can vary considerably. In accordance with the ratio of different tasks in the iteration, they are grouped in phases.

In the first phase, called Home, the main attention focuses on the problems of analysis.

In the iterations of the second phase, called Development, the main attention focuses on the design and testing of key design decisions.

In the third phase, which is known as Construction, the main attention is paid to the highest percentage of tasks of development and testing.

And in the last phase, which is called Transfer, it is resolved to the greatest extent of the problem of testing and transmission systems for customer.

Each phase has its own specific purpose in the life cycle of the product and is considered completed when these goals were achieved. All iterations, except, perhaps, the iteration phase Home, end with the creation of a functioning version of the system being developed.

Related Posts:

  • No Related Posts

About Article Author

view more articles
Nataliia Vasylyna
Nataliia Vasylyna

View More Articles