Friday, November 4, 2011

Design-Based Test Case Design an Effective Software Testing Technique

Software design errors and faults can be discovered and software designs validated by two techniques like:

1) Requirements-based test case design being the primary technique

2) Another important technique being the early design-based test case design.

In design-based test case design the information for deriving them is taken from the software design documentation.

Design-based test cases focus on the data and process paths within the software structures. Internal interfaces, complex paths or processes, worst-case scenarios, design risks and weak areas, etc. are all explored by constructing specialized test cases and analyzing how the design should handle them and whether it deals with them properly. In software testing effort, requirements-based and design-based test cases provide specific examples that can be used in design reviews or walkthroughs. Together they provide a comprehensive and rich resource for design based software testing.

Taxonomy of Testing Techniques

Software testing is a very broad area, which involves many other technical and non-technical areas, such as specification, design and implementation, maintenance, process and management issues in software engineering. Our study focuses on the state of the art in testing techniques, as well as the latest techniques which representing the future direction of this area.

Why software testing is important ?

Most of us have had an experience with software that did not work as expected. Software that does not work can have a large impact on an organisation. It can lead to many problems including:

1)Loss of money – this can include losing customers right through to financial penalties for non-compliance to legal requirements
2)Loss of time – this can be caused by transactions taking a long time to process but can include staff not being able to work due to a fault or failure
3)Damage to business reputation – if an organisation is unable to provide service to their customers due to software problems then the customers will lose confidence or faith in this organisation (and probably take their business elsewhere)
6)Injury or death – It might sound dramatic but some safety-critical systems could result in injuries or deaths if they don’t work properly (e.g. flight traffic control software)