• No results found

Week 2

N/A
N/A
Protected

Academic year: 2020

Share "Week 2"

Copied!
65
0
0

Loading.... (view fulltext now)

Full text

(1)

The University of Lahore

A “W4” Category University

CS-4349 Software Testing &

Implementation

(2)

The University of Lahore

A “W4” Category University

07/10/2020 2

(3)

The University of Lahore

A “W4” Category University

What is root-cause analysis?

To find real reason when we detect faults is called root

cause analysis.

When we detect failures, we might try to track them back to

their root cause, the real reason that they happened.

(4)

The University of Lahore

A “W4” Category University

07/10/2020 4

Exercise

Root Cause Analysis

(5)

The University of Lahore

A “W4” Category University

1.1.5 Testing and quality

Q 1- What can be the ways of carrying root cause analysis? Way1:

__________________________________________________________ Way2:

__________________________________________________________

Q 2- An organization has a problem with printing repeatedly failing. Suggest some possible causes of this failure.

(6)

The University of Lahore

A “W4” Category University

07/10/2020 6

1.1.5 Testing and quality

Q 3- These causes may happen because

__________________________________________________________ __________________________________________________________ __________________________________________________________

Q 4- What possible steps the software testers will take to design the software and resolve the printing failure and facilitate the users?

(7)

The University of Lahore

A “W4” Category University

Q-1 What are the ways of carrying root-cause

analysis?

1. Discussion

2. Involving group of people with brainstorming ideas

(8)

The University of Lahore

A “W4” Category University

07/10/2020 8

Q-2

Suppose an organization has a problem with printing repeatedly failing. Some IT maintenance will sit together to examine the problem and they start by brainstorming all the possible causes of the failure.

Some of the cause they discover might be:

1. Printer runs out of supplies (ink or paper) 2. Printer driver software fails.

3. Printer room is too hot for the printer.

(9)

The University of Lahore

A “W4” Category University

Q-3

If we look at one of the causes “ printer runs out of

supplies, it may happen because:

ROOT CAUSE:

1. No one is responsible for checking printer ink/paper before use. 2. Staff not trained in looking after the printer.

3. No process for stock control and ordering.

(10)

The University of Lahore

A “W4” Category University

07/10/2020 10

Summary

Root-cause analysis

is an important aspect of

quality assurance activities and testing

contributes by helping us to identify defect and

improve software quality as early as possible

before the software is in use.

(11)

The University of Lahore

A “W” Category University Ranked Amongst The Top 550 Universities of The WORLD!

Exhaustive Testing

A test approach in which the test suit comprises all combinations of input values and preconditions.

How much testing should we do?

Test everything Test nothing Test some of the software

Testing Principle-Exhaustive testing is impossible

(12)

The University of Lahore

A “W” Category University Ranked Amongst The Top 550 Universities of The WORLD!

07/10/2020 12

EXAMPLE 1

How many tests would you need to do to completely

test a one-digit numeric field?

1. 10 possible valid numeric values (10 tests)

2. We need to ensure that all invalid values are rejected.

e.g. 26 uppercase letters, 26 lowercase letters, special

characters and blank space. Total tests would be 68.

(13)

The University of Lahore

A “W” Category University Ranked Amongst The Top 550 Universities of The WORLD!

EXAMPLE 2

One screen has 15 input fields, each having 1

digit numeric field. How many test are required

to do?

(14)

The University of Lahore

A “W4” Category University

07/10/2020 14

Exhaustive Testing

A test approach in which the test suit comprises all combinations of input values and preconditions.

How much testing should we do?

Test everything Test nothing Test some of the software

Testing Principle-Exhaustive testing is impossible

Testing everything is not feasible/possible.

(15)

The University of Lahore

A “W4” Category University

EXAMPLE 1

How many tests would you need to do to completely

test a one-digit numeric field?

1. 10 possible valid numeric values (10 tests)

2. We need to ensure that all invalid values are rejected.

e.g. 26 uppercase letters, 26 lowercase letters, special

characters and blank space. Total tests would be 68.

(16)

The University of Lahore

A “W4” Category University

07/10/2020 16

EXAMPLE 2

One screen has 15 input fields, each having 1

digit numeric field. How many test are required

to do?

(17)

The University of Lahore

A “W4” Category University

TESTING

“Testing is a process rather than a single

activity-there are series of activities

involved.”

One of the activities is all life cycle activities. Testing

takes place throughout the software development life

cycle.

(18)

The University of Lahore

A “W4” Category University

07/10/2020 18

Software Development Life Cycle

(19)

The University of Lahore

A “W4” Category University

1.2 What is testing?

(20)

The University of Lahore

A “W4” Category University

07/10/2020 20

1.2 What is testing?

SYSTEM LIFE CYCLE

1. System life cycle is an organizational process of developing and maintaining systems.

2. It helps in establishing a system project plan.

3. System development life cycle means combination of various activities put together are referred as system development life cycle.

(21)

The University of Lahore

A “W4” Category University

1.2 What is testing?

Phases of software development cycle

1. Problem Recognition (System Study) 2. Feasibility Study

3. System Analysis 4. System Design

5. Coding /Implementation/Construction 6. Testing

(22)

The University of Lahore

A “W4” Category University

07/10/2020 22

1.2 What is testing?

System Study

1. System study is the first stage of system development life cycle.

2. It gives a clear picture of what actually the physical system is? 3. System study is done in two phases.

In the first phase, the preliminary survey of the system is done which helps in identifying the scope of the system.

(23)

The University of Lahore

A “W4” Category University

1.2 What is testing?

4. After completing the system study, a system

proposal is prepared by the System Analyst (who

studies the system) and placed before the user.

(24)

The University of Lahore

A “W4” Category University

07/10/2020 24

1.2 What is testing?

System Study (SUMMARY)

1. Problem identification and project initiation 2. Background analysis

3. Conclusion findings

(25)

The University of Lahore

A “W4” Category University

1.2 What is testing?

Feasibility Study

On the basis of result of the initial study, feasibility study takes place.

The feasibility study is basically the test of its

Workability

Meeting user’s requirements Effective use of resources

Cost effectiveness

Decide whether or not to continue with the project?

(26)

The University of Lahore

A “W4” Category University

07/10/2020 26

1.2 What is testing?

System Analysis

Study the existing system in detail is called analysis. During analysis, data are collected

Ways to study the existing system

1. Interview users of the current system

2. Read any manual or instructions which are in use 3. Observe the current system in operation

(27)

The University of Lahore

A “W4” Category University

1.2 What is testing?

System Design

Based on the user requirements and the detailed analysis of a new system, the new system must be designed. This is the phase of system designing.

It is a most difficult phase in the development of a system.

Normally, the design proceeds in two stages :

(28)

The University of Lahore

A “W4” Category University

07/10/2020 28

1.2 What is testing?

Preliminary or general design:

1. The features of the new system are specified.

2. The costs of implementing these features and the benefits to be derived are estimated.

Structure or detailed design:

1. At this stage, the design of the system becomes more structured.

2. Input, output and processing specifications are drawn up in detail.

(29)

The University of Lahore

A “W4” Category University

1.2 What is testing?

Designing

1. Data capture forms 2. Type of user interface

3. Validations methods-how is input data going to be test?

4. Programs-if some new programs has to be written then they have to be designed at this stage

(30)

The University of Lahore

A “W4” Category University

07/10/2020 30

Coding/Construction

1. After designing the new system, the whole system is required to be converted into computer understanding language.

2. This is also called the programming phase in which the programmer converts the program specifications into computer instructions, which we refer as programs. The programs coordinate the data movements and control the entire process in a system.

3. User documentation is prepared

(31)

The University of Lahore

A “W4” Category University

Testing

1. Before actually implementing the new system into operations, a test run of the system is done removing all the bugs, if any.

2. It is an important phase of a successful system.

3. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data.

(32)

The University of Lahore

A “W4” Category University

07/10/2020 32

Testing

1. Unit Testing

2. Integration Testing

3. System testing. Test data is designed and the results are forecast

(33)

The University of Lahore

A “W4” Category University

Component Testing

Searches for defects and verifies the functioning of software components (modules, programs, objects, classes etc) that are separately testable.

Integration Testing

Tests interfaces between components, interactions to different parts of a system such as OS, file system and hardware.

System Testing

Concerned with the behavior of the whole system/product.

Acceptance Testing

(34)

The University of Lahore

A “W4” Category University

07/10/2020 34

Implementation

1. After having the user acceptance of the new system developed, the implementation phase begins.

2. Implementation is the stage of a project during which theory is turned into practice.

3. During this phase, all the programs of the system are loaded onto the user's computer. After loading the system, training of the users starts.

4. File conversion

(35)

The University of Lahore

A “W4” Category University

Implementation

Main topics of such type of training are:

1. How to execute the package 2. How to enter the data

(36)

The University of Lahore

A “W4” Category University

07/10/2020 36

After the users are trained about the computerized system, manual working has to shift from manual to computerized working. The following two strategies are followed for running the system:

Direct Change Over:

The old/existing system is immediately removed and the new system come into place

Parallel Run:

In such run for a certain defined period, both the systems i.e. computerized and manual are executed in parallel. This strategy is helpful because of the following:

1. Manual results can be compared with the results of the computerized system.

(37)

The University of Lahore

A “W4” Category University

Phased/Pilot Run:

(38)

The University of Lahore

A “W4” Category University

07/10/2020 38

Maintenance

1. Maintenance is necessary to eliminate errors in the

system during its working life and to tune the system

to any variations in its working environment.

(39)

The University of Lahore

A “W4” Category University

System Maintenance and Review

The review of the system is done for:

1. Knowing the full capabilities of the system

2. Knowing/upgrade the required changes or the

additional requirements

3. Studying the performance

4. Keep watching on the new system

(40)

The University of Lahore

A “W4” Category University

07/10/2020 40

What is Testing?

(41)

The University of Lahore

A “W4” Category University

What is Testing?

The process consisting of all life cycle activities, both static and dynamic, concerned with planning, preparation and evaluation of software products and related work products to determine that they satisfy specified requirements, to demonstrate that they are fit for purpose and to detect defects.

The process of detecting defects is called testing.

(42)

The University of Lahore

A “W4” Category University

07/10/2020 42

Software Testing

The process consisting of all life cycle activities, both

static

and

dynamic

, concerned with

planning

,

preparation

and

evaluation of software products and

related work products

to

determine that they satisfy

specified requirements

, to

demonstrate that they are fit

for purpose

and to

detect defects

.

(43)

The University of Lahore

A “W4” Category University

What is Testing?

Dynamic

Executing the software code to demonstrate the

results (Chapter 4)

Static

(44)

The University of Lahore

A “W4” Category University

07/10/2020 44

What is Testing?

Planning

What we want to do? Report on testing progress, status of the software under test, finalize and close testing when a phase completes. (Chapter 5)

Preparation

We need to choose what testing we’ll do? (Chapter 4)

Evaluation

Executing the test, we must check the results, evaluate the software and completion criteria

Software products and related work products

(45)

The University of Lahore

A “W4” Category University

What is Testing?

Determine that software products satisfy requirements

Checking products against the requirements.

Demonstrate software products fit for purpose

Software does enough to help the users to carry out their tasks. Software does what the user might expected.

Detect Defects

(46)

The University of Lahore

A “W4” Category University

07/10/2020 46

(47)

The University of Lahore

A “W4” Category University

Software Test and Driving Test Compared

Activities Driving Test Software Test

Planning and Preparation

Static and Dynamic

(48)

The University of Lahore

A “W4” Category University

07/10/2020 48

Software Test and Driving Test Compared

Activities Driving Test Software Test

Determine that they satisfy specified

(49)

The University of Lahore

A “W4” Category University

Software Test and Driving Test Compared

Activities Driving Test Software Test

Planning and Preparation

1-Which routes to be followed? 2-Time duration

3-Questions to be asked

1-Checking testing progress

2-Status of the software under test

3-Finalize testing when phase completes

4-What testing we will do?

Static and Dynamic

1-Questions to the driver 2-Driving the car

1-Review the software 2-Executing the software

Evaluation

1-Questions 2-Written test

3-Observation during driving

(50)

The University of Lahore

A “W4” Category University

07/10/2020 50

Software Test and Driving Test Compared

Activities Driving Test Software Test

Determine that they satisfy specified requiremen ts 1-Checking patience 2-Checking confidence 3-Checking following the rules

4-Checking staring, clutch, gears are properly used by the driver

1-Review the code to check design

2-Review the design to check specifications

Demonstrat e that they are fit for purpose

1-Driver is able to drive 1-Software is fit for purpose

Detect defects

1-Finding faults of driver 2-Suggest improvements

(51)

The University of Lahore

A “W4” Category University

When we can meet our test objectives?

Testing Principle-Early Testing

(52)

The University of Lahore

A “W4” Category University

07/10/2020 52

When we can meet our test objectives?

Testing Activities

1. Acceptance testing 2. Alpha testing

3. Beta testing or field testing 4. Component or unit or module 5. Integration testing

(53)

The University of Lahore

A “W4” Category University

Focusing on defects can help us plan our tests

Testing Principle- Defect Clustering

A small number of modules contain most of the defects discovered during testing.

Reasons of defect clustering

1-Code is complex 2-Code is tricky

(54)

The University of Lahore

A “W4” Category University

07/10/2020 54

Solution to minimize clustering

1. Reviewing every module to find defects and failures

2. Early testing should be implemented on time

(55)

The University of Lahore

A “W4” Category University

The defect clusters change over time

Find more defects as the testing

improves and then as the defect prevention kicks in, defects

(56)

The University of Lahore

A “W4” Category University

07/10/2020 56

Debugging removes defects

Debugging

(57)

The University of Lahore

A “W4” Category University

Debugging Removes Defects

Testing Principle-Pesticide Paradox

(58)

The University of Lahore

A “W4” Category University

07/10/2020 58

Is the software defects free?

Testing Principle- Testing shows presence of

defects

(59)

The University of Lahore

A “W4” Category University

If we don’t find defects does that mean the user

will accept the software?

Testing Principle- Absence of errors fallacy

(60)

The University of Lahore

A “W4” Category University

07/10/2020 60

Testing Principles-SUMMARY

1-

Testing shows presence of defects

2- Exhaustive testing is impossible

3- Early testing

4- Defect clustering

5- Pesticide Paradox

(61)

The University of Lahore

A “W4” Category University

The Psychology of Testing

Independent testing- Who is a tester?

Independence

Separation of responsibilities, which encourages the accomplishment of objective testing.

Level of Independence

Tests by the person who wrote the item under test Tests by another person within the same team such as

another programmer

(62)

The University of Lahore

A “W4” Category University

07/10/2020 62

The Psychology of Testing

Reviewing and testing Principles

1. Communicate findings on the product in a neutral, fact-focused way without criticizing the person who created it.

2. Don’t blame 3. Be constructive

4. Say what you liked and what worked, as well as what didn’t work

(63)

The University of Lahore

A “W4” Category University

The Psychology of Testing

Reviewing and testing Principles

6. Show what risks have been uncovered and the benefits

of review and test

7. Be polite and helpful, collaborate with your colleagues

8. Try to understand how the other person feels

9. Confirm that the other person has understood what

you have said and vice versa

(64)

The University of Lahore

A “W4” Category University

07/10/2020 64

QUIZ 1 Chapter 1

(65)

The University of Lahore

A “W4” Category University

References

Related documents

However, if the EGA analysis detected only a small peak for a compound that was not well known in the conservation literature, but deemed to be potentially corrosive based

The projected gains over the years 2000 to 2040 in life and active life expectancies, and expected years of dependency at age 65for males and females, for alternatives I, II, and

Findings show that manufacturing firms are more likely to achieve product innovations when they exchange engineers mutually with their main customer for development of a new

On this graph a minimum- weight perfect matching is calculated which yields a maximum even-degree edge set of the dual graph, and therefore a max-cut of the original graph.. Thus,

Prior to attending graduate school at the University of Nebraska-Lincoln, neither one of us had taught mathematics in a formal setting, taken a pedagogy course, or experienced

Binary classification ( benign vs ransomware) is efficient in this case. However, to take one step further than the de- coy folder detection, an analysis of ransomware families

the operator as to the condition of subsea wells, and even control them.. Siemens SOL SUB May 2013 Are Dahl.

In this paper, we therefore specifically focus on the role of principles in the field of enterprise architecture, where we position enterprise architecture as a means to