Author: Haroon Khalil

  • Review Process Activities

    The following sections go into detail on the individual activities mentioned above. Planning Define your objectives and choose a type of review At the planning stage, management—or, more accurately, project management—has to decide which documents (or parts of documents) are to be subject to which type of review. This decision affects the roles that have…

  • The Review Process

    Review activities The process of reviewing work products comprises planning, commencement, preparation by the participants (specialists, reviewers, inspectors), communicating and analyzing the results, fault correction, and reporting (see figure 4-1). Fig. 4-1Review process activities

  • Static Test Techniques

    Human mental and analytical skills Human mental and analytical skills can be used to analyze and evaluate complex situations through close investigation of the documents in question. It is essential to the success of such analysis that the people involved understand the documents they are reading and comprehend the statements and definitions they contain. Static…

  • What Can We Analyze and Test?

    A versatile technique As well as the code itself, software development produces a lot of other work products too. Most documents play some kind of role in the further development of a product, making the quality of each individual document an important factor in the overall quality of the results. Work products that can be…

  • Introduction

    Static testing and analysis of work products (documentation and code) contributes measurably to increased product quality. The describes static testing in general as well as the specific process involved, with its activities and the roles that have to be filled. We describe four proven techniques and their specific advantages, as well as the factors that…

  • Regression Testing

    The process of repeating tests following changes to a program is referred to as “regression testing”. Regression testing utilizes existing test cases to check that the changes made have produced no new faults and have had no unintentional side effects. In other words, the objective is to ensure that the parts of a revised system…

  • Testing Following Release Development

    Alongside the maintenance required by fault correction, project management will also plan extensions and other changes to the system in order to keep it competitive and expand the customer base. Most systems are subject to continuous development—for example, to build improved releases of the product. Such releases are usually coordinated with scheduled maintenance work. For…

  • Testing Following Software Maintenance

    Every software system needs to be modified and tweaked during its lifetime. This process is usually referred to as “software maintenance”. Software does not wear out. In contrast to the maintenance of hardware and unlike physical industrial products, the purpose of software maintenance is not to maintain the ability to operate or to repair damages…

  • Testing New Product Versions

    So far, we have simply assumed that a software development project ends when its acceptance tests have been passed and the product has been delivered. However, things look very different in reality. Initial delivery marks only the beginning of a software product’s lifecycle. Many software products are used for years, or even decades, and are…

  • Requirements-Based and Structure-Based Testing

    Requirements-based testing is a black-box technique in which test cases are designed based on requirements. It is also called specifications-based testing, because it uses the specifications of the externally observable behavior of the software as its test basis. This kind of specification can take various forms—for example, use cases or user stories. The corresponding testing…