Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.

Similar presentations


Presentation on theme: "1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation."— Presentation transcript:

1 1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation

2 2 Outline Introduction to software verification and validation concepts. Software verification and validation process. Introduction to static & dynamic verification analysis techniques.

3 3 Verification & Validation (V &V) Process V & V takes place at each phase of software development life cycle. Requirements reviews. Design reviews. Code inspections to software testing. Has two principal objectives The discovery of defects in a system. The assessment of whether or not the system is useful and useable in an operational situation.

4 4 Validation Are we building the right product? The process of evaluating a system during and at the end of the development process to determine if it satisfies the requirements of the system. The software should do what the user really requires.

5 5 Verification Are we building the product right? The process of evaluating a system at the end of a phase to determine if it satisfies the conditions imposed at the start of that phase. The software should conform to its specification.

6 6 V & V goals Ultimate goal Software is ‘fit for the purpose’. Software is not necessarily 100 % free of defects. Rather, it must be good enough for its intended use; and the type of use will determine the degree of confidence that is needed.

7 7 V & V confidence Depends on system’s purpose, user expectations and marketing environment Software function The level of confidence depends on how critical the software is to an organization. User expectations Users may have low expectations of certain kinds of software. Marketing environment Getting a product to market early may be more important than finding defects in the program.

8 8 Static Verification Software inspections Concerned with analysis of the static system representation to discover problems. Review the documents and software system during different phases of development life-cycle. Supplement by tool-based document and code analysis.

9 9 Dynamic Verification Software Testing Concerned with excising and observing product behavior The system is executed with test data and its operational behavior is observed.

10 10 Static and dynamic V & V Software Inspections Requirements Specification High-level Design Formal Specification Detailed Design Program Prototype Program Testing

11 11 Software Inspections Involves people examining the software documentation With the aim of discovering anomalies and defects. Inspections not require execution of a system Can be used before implementation.

12 12 Software Inspections Time No. of Employees Planning Requirements DesignCoding Testing Without Inspection With Inspection

13 13 Inspection Success Different defects may be discovered in a single inspection. In testing, one defect may mask another so several executions are required. Reuse of domain and programming knowledge Common mistakes and errors types.

14 14 Program Testing Component Testing System Testing

15 15 Types of Testing Defect Testing Test cases are designed to expose system defects; For example, System crashes, incorrect computations Validation Testing Intended to show that the software meets its requirements; For example, Software reliability, performance

16 16 Testing and debugging Defect testing and debugging are distinct processes. V & V process is concerned with establishing the existence of defects in a program. Debugging is concerned with locating and repairing these errors.

17 17 Debugging Process Test Results Specification Test Cases Locate Error Design Error Repair Repair Error Retest Program

18 18 Inspections and Testing Inspections and testing are complementary and not opposing verification techniques. Both should be used during the V & V process. Inspections can check conformance with a specification but not conformance with the customer’s real requirements. Inspections cannot check non-functional characteristics such as performance, usability etc.

19 19 V & V Planning Careful planning is required to get the most out of testing and inspection processes. Planning should start early in the development process. The plan should have the balance between static verification and testing.

20 20 V-Model of Development Requirements specification System Specification System Design Detailed Design Acceptance Test System Integration Test Sub-System Integration Test Module, Unit Code & Test Acceptance Test Plan System Integration Test Plan Sub-System Integration Test Plan Service

21 21 Key Points Verification shows conformance with specification. Validation shows that the program meets the customer’s needs. V & V is a continuous process which should takes place at each phase of software development life cycle.


Download ppt "1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation."

Similar presentations


Ads by Google