Top Banner
SoftwareTest Organisation TEST TORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test Responsibilities The Developer as a Tester The End User as a Tester The Analyst as a Tester The Tester in the Team The internal Test Team The external Test Factory Test Responsibility in small projects 1 2 5 6 4 3 7 8 9 Test Responsibility in a middle sized project Test Responsibility in a large project One Level Test Organization Two Level Test Organization Three Level Test Organization Four Level Test Organization n im GEOS Test Environment Test Activities Testing semantic levels against each other Test Principles The Test Equation 13 14 17 18 16 15 19 20 21 10 22 11 23 12 24
25

SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Jan 02, 2016

Download

Documents

Kenneth French
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

SoftwareTest Organisation

TEST TORG

The role of testing in the software life cycle

Verification and Validation

Goals of Testing

Test work distribution

Test Responsibilities

The Developer as a Tester

The End User as a Tester

The Analyst as a Tester

The Tester in the Team

The internal Test Team

The external Test Factory

Test Responsibility in small projects

1

2

5

6

4

3

7

8

9

Test Responsibility in a middle sized project

Test Responsibility in a large project

One Level Test Organization

Two Level Test Organization

Three Level Test Organization

Four Level Test Organization n im GEOS

Test Environment

Test Activities

Testing semantic levels against each other

Test Principles

The Test Equation

The Test Project

13

14

17

18

16

15

19

20

21

10 22

11 23

12 24

Page 2: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Role of Testing in the Software Life Cycle

TEST TORG-1

ProjectRequest

CodeDocu.

Systemtest

Integra-tion test

Requanalysis

Systemdesign

Moduletest

Moduledesign

Coding DebuggingCode

SystemTest docu.

IntegrationTest docu

Module Test docu.

Requdocu

Designdocu.

Modulespecs.

Data-based Test cases

Code-based Test cases

Requ-based Test cases

Page 3: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Verification und Validation

TEST TORG-2

Problem

Requirements

Specification

SolutionForm Content

Structural analysis

Funktional analysis

Actual Construction = specified Construction Actual performance = required Performance

Verification Validation

Verification = the System is true, i.e.The System was made right

Validation = the System fits the purposeThe right system was made.

Page 4: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Goals of Testing

TEST TORG-3

Testing is the empirical approach to finding defects in a software system.

Testing has two major goals:

to find defects before the user does

to gain trust in the system

The attainment of the first goal can only be measured in terms of the number of defects found relative to the number of defects in the system.

The attainment of the second goal can be measured in terms of the test coverage, the higher the test coverage, the greater the trust in the system.

These two questions give way to two further questions:

how many defects does a system have?

what should be covered in a system?

1.

2.

3.

4.

5.

Page 5: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Work DistributionTEST TORG-4

IntegrationTest

(Grey Box)

SystemTest

(Black Box)

UnitTest

(White Box)

Components

System

Developer

Tester

Developer/Tester

Team

Procedures,Modules,

Subroutines,Classes

Units

Packages,Interfaces,

Files/TablesSubsystems

User InterfacesSystem Interfaces,

Databases

Page 6: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Responsibilities

TEST TORG-5

Potential Candidates

The Developers themselves

The Users

The Analysts

The Tester in the Team

An internal Test Team

An external Test Lab

Page 7: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Developer as a Tester

TEST TORG-6

Self Control

Developer Controller

Shiciophronia

Alternative: Pair Programming = Mutual control

Page 8: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The End User as Tester

TEST TORG-7

Test dataDevelopment

Team

User Department or User

Representative

Test Results

Live DataData Samples

Page 9: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Analyst as a Tester

TEST TORG-8

UserDepartment

Analyst

DevelopmentTeam

Test DataTest

SpecificationTest

DocumentationRequirement

DocuTest

Objects

Page 10: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Tester in the Team

TEST TORG-9

ProjectLeader

Developer DeveloperDeveloper

SystemArchitectTester

Integrated Tester

Page 11: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Internal Test Team

TEST TORG-10

ProjectOffice

DeveloperTeam

DeveloperTeam

DeveloperTeam

TestTeam

DesignTeam

Anforderungen

Test Results

Page 12: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The external Test Lab

TEST TORG-11

Code Components Code

Components Code Components

ErrorReports

Developers develop and test their Components

Testers integrate componentsand test the System

Page 13: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Responsibility in a small Project

TEST TORG-12

Developer DeveloperDeveloper

Developeras Tester

ModuleModule ModuleModuleModuleModule

System

Page 14: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Responsibility in a middle sized Project

TEST TORG-13

Developer

ModulesModules

Developer

ModulesModules

Developer

ModulesModules

Developer

ModulesModules

TesterIn the Team

System

Page 15: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Responsibility in a large Project

TEST TORG-14

DevelopmentTeam

ComponentsComponents

DevelopmentTeam

ComponentsComponents

DevelopmentTeam

ComponentsComponents

DevelopmentTeam

ComponentsComponents

System

TestTeam

Page 16: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

One Level Test Organization

TEST TORG-15

Developers and Testers are together in one Team The developers code and the testers test.

Page 17: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Two Level Test Organization

TEST TORG-16

ComponentsRequirement

SpecsError

ReportsTechnical

Test Cases

Analyst s and Users System Test

Developers Unit Test & Integration Test

Page 18: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Three Level Test Organization

TEST TORG-17

Analysts

TechnicalTest Cases

ErrorReports

RequirementSpecs

ErrorReports

TestDocus

LogicalTest Cases

Components

Developers Unit Test & Integration Test

Testers Integration Test & System Test

Page 19: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

System Design

4-Layer GEOS Project Organization

Code Components

System Test Cases

Requirements

implementedby

implements

1

n

n

1

1

n

n

1

1

n

n

1

n

1

1

n

Tests tested_by

Tests testedby

stated

implied

derived

Analysts

Designers

Developers

Testers

Four Level Test Organization

TEST TORG-18

Page 20: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Environment

TEST TORG-19

Test strategy

Acceptance Test

Test methods

System test

Test Procedures

Test Tools

Integration test

Unit test

Batch Online Distributed Internet

Test Process

Test Environments

TestLevels

Page 21: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Activities

TEST TORG-20

TestEvaluation

TestExecution

Test Documentation

Test Planning

Interconnection between test activities

Test planning Test execution Test evaluation Test documentation

Page 22: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Testing semantic Software Levels against each other

TEST TORG-21

D: Design C: CodeR: Requirements

Ist Ist

Ist

Soll Soll

R/D D/C

C/CD/DR/R

R/C

In the Unit Test the Code (C) is compared with the Design (D). In the Integration Test the Design (D) is compared with the Requirements . In the System Test the Code (C) is checked against the Requirements (R).

System Test

Unit TestIntegration Test

Page 23: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

Test Principles

TEST TORG-22

Principle of Decomposition: The whole is tested by testing all the parts and all relationships between the parts.

Principle of Repetition: Every test must be repeatable.

Principle of Measurability: Software behavior must be measurable on a numeric scale

Principle of Infinity: An infinite test is not a valid test.

Principle of Functional completeness: Every Function in a System has a purpose and must be tested against that purpose.

Principle of Redundancy: A redundant test case adds no value to the test

Principle of Test Environment: The environment of a system ist part of the system test.

Page 24: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Test Equation

TEST TORG-23

= Test Strategy

+ Test Method

+ Test Tools

+ Test Organisation

+ Test Audit

Without a Strategy a test is not oriented.

Without a Method the test is not effective.

Without a Tool the test is not efficient.

Without an organization the test is not controllable.

Without an audit the test is not reliable.

Page 25: SoftwareTest Organisation TESTTORG The role of testing in the software life cycle Verification and Validation Goals of Testing Test work distribution Test.

The Testprojekt

TEST TORG-24

Requirementsanalysis

BusinessModelling

RequirementSpecification

TestProject

DevelopmentProject

Software

ParallelProjects

Test Design

Test Specification

Test Preparation

Test Execution

Test Evaluation