QAustral Testing

33
1 Software and Business Quality Assurance www.qaustral.com

description

QAustral delivers world class services, some of our clients are based in European Countries.

Transcript of QAustral Testing

Page 1: QAustral   Testing

1

Software and Business Quality Assurance

www.qaustral.com

Page 2: QAustral   Testing

2

• Company Profile• Success Case• Introduction• Business QA• Software QA• Methodologies• Commercial Terms

Index

www.qaustral.com

Page 3: QAustral   Testing

3

About Us

– QAustral delivers world class services, some of our clients are based in European Countries.

– We are able to implement our solutions following international standards. (ie. IEEE, ISO, BS, etc.)

– We are experienced coordinating on-site / offshore work. Our professionals are fluent in English, Spanish and Italian.

– We are constantly investigating new tendencies and better ways to deliver the best service and the best solution.

– We promote education working closely with Universities. We are teaching a Diploma in Software Testing, the only one in the country approved by the Government.

– QAustral is the only one specialized in Quality Assurance Services in Cordoba, Argentina.

Company Profile: Qaustral S.A.

www.qaustral.com

Page 5: QAustral   Testing

5

Business Quality Assurance – GIRE S.A. (based in Argentina)

Situation: The company needs to review customers satisfaction and their procedures.

Results: We were able to measure the customer and services satisfaction. We that information we have

improved their procedures, practices and increased their customers satisfaction.

Software Quality Assurance – Nimbuzz (based in Holand)

Nimbuzz BV was created in Rotterdam, it develops VOIP client integrating social communities.

QAustral has provided Testing Services and Training during the first stage. After a successful relation

with Nimbuzz we manage to open an operation exclusively for them. Our Test service was very

effective after applying ISTQ and making the test process absolutely transparent for Nimbuzz

Management.

Training – Diploma in Software Testing - UE Siglo XXI University (based in Argentina)

Situation: The absence of Qualified Professionals in Software Testing is generating problems in the

global market.

Results: Trained Professionals in BS and IEEE standards and able to work with Agile (ie. XP) and

Structured (ie. CMMI) Methodologies.

Some of our Success Cases

Page 6: QAustral   Testing

6

We know what you are looking for…

Confidence Quality

Reliability

Solution

Responsibility

Availability

ExcellenceBugs-free

Effort

Satisfaction

Professionalism

Trust

Knowledge

Adaptability

Page 7: QAustral   Testing

7

• Business Quality Assurance.

We have an specialist in Human Resources with and strong knowledge of Services and Product Quality, Customer Support and continue improvement. He has been attending several Human Resources trainings in Argentina and US. “Subject Matter Expert” certified in Customer Satisfaction measurement (Detroit, EEUU).

• Software Quality Assurance

We have an specialist in Software QA with wide experience in mediation with the parts involved in the Software development process and strong knowledge of development. He has been recruiting his own teams and training them, also training Human Resources in java for Motorola. He has been trained in international standards of Testing.

Introduction

www.qaustral.com

Page 8: QAustral   Testing

8

• Business Quality Assurance.

In order to improve the company procedures and identify potential risk we implement a particular process where:

– All human resources involved will participate by a clear channel of communication.

– We will validate if the product or service meet the customer needs.

– We will identify the most critical business area to improve their work and focus the effort in getting better results.

– By an exhaustive investigation, which includes interviews, data collection, etc. we will identify precisely what's the customer expectation.

– As a result of this study we will provide a full plan to improve the business areas and a re-engineering process.

Business Quality Assurance

www.qaustral.com

Page 9: QAustral   Testing

9

• Software Quality Assurance.

Our knowledge allow us to perform almost any kind of test. We define our Test Plan following IEEE standards and execute system tests by BS standards.

1. As a first step we collect all relevant information about the development.

2. Our Test Plan includes 4 major sections: Politics, strategy, High Level Test Plan (IEEE 829) and Detailed Test plan (IEEE 829).

3. We perform testing in the following order:

• Component Testing – which includes Unit Testing

• Integration Testing

• System Testing: Functional and Non-Functional testing (White/ Black Box)

• UAT

4. We analyze which Test Tool is the best solution.

5. By reports we keep the customer involved in the testing.

Software Qaulity Assurance

www.qaustral.com

Page 10: QAustral   Testing

10

How we add quality to your software?

Our procedure includes the following stages:

Specification includes Identification of test conditions, Test Case Design and Test Case

Building.

This procedure can be implemented in compliance with Agile Techniques like XP or structured

Methodologies like CMM-I.

Plan Specification Execution Record Checking

Methodologies

www.qaustral.com

Page 11: QAustral   Testing

11

Software Testing

• What Testing is?

1 – Shows that everything works fine.

2 – Shows that all requirements has been achieved.

3 – Demonstrate the stability of a given application.

None of the given options is the correct.

Testing is a destructive procedure related closely with:

• Money

• Time

• Quality

Eventually related with a 4th factor: Features

www.qaustral.com

Page 12: QAustral   Testing

12

Software Testing

• Characteristics:

1. Is an activity to reduce Risks and improve Quality by finding defects.

2. Can be either Static or Dynamic.

3. It has to begin as early as possible.

4. A test process has to be defined.

5. An Strategy has to be defined in order to achieve an effective testing.

6. When enough testing is enough?

How to define a good strategy?

www.qaustral.com

Page 13: QAustral   Testing

13

Software Testing

• Fundamental Test Process• According to International

software testing standards.

Planning and Control

Test Analysis and Design

Implement. And execution

Exit Criteria and Reporting

Test Closure Activities

www.qaustral.com

Page 14: QAustral   Testing

14

Assessing software quality

FewFaultsMany

Faults

FewFaults

FewFaults

FewFaults

You may be here

TestQuality

Low

High

Software Quality

Low High

You thinkyou are here

www.qaustral.com

Page 15: QAustral   Testing

15

V-Model: test levels

Integration Testingin the Small

Integration Testingin the Small

Integration Testingin the Large

Integration Testingin the Large

SystemTesting

SystemTesting

ComponentTesting

ComponentTesting

AcceptanceTesting

AcceptanceTesting

CodeCode

DesignSpecification

DesignSpecification

SystemSpecification

SystemSpecification

ProjectSpecification

ProjectSpecification

BusinessRequirements

BusinessRequirements

www.qaustral.com

Page 16: QAustral   Testing

16

V-Model: test levels

Integration Testingin the Small

Integration Testingin the Small

Integration Testingin the Large

Integration Testingin the Large

SystemTesting

SystemTesting

ComponentTesting

ComponentTesting

AcceptanceTesting

AcceptanceTesting

CodeCode

DesignSpecification

DesignSpecification

SystemSpecification

SystemSpecification

ProjectSpecification

ProjectSpecification

BusinessRequirements

BusinessRequirements Tests

Tests

Tests

Tests

Tests

DesignTests?

“There is no time

To create test

cases”

www.qaustral.com

Page 17: QAustral   Testing

V-Model: test levels

Tests

Tests

Tests

Tests

Tests17

Integration Testingin the Small

Integration Testingin the Small

Integration Testingin the Large

Integration Testingin the Large

SystemTesting

SystemTesting

ComponentTesting

ComponentTesting

AcceptanceTesting

AcceptanceTesting

CodeCode

DesignSpecification

DesignSpecification

SystemSpecification

SystemSpecification

ProjectSpecification

ProjectSpecification

BusinessRequirements

BusinessRequirements

RunTests

DesignTests www.qaustral.com

Page 18: QAustral   Testing

18

Stress Testing – Designing test cases in early stages

• To design Early test cases will identify Errors in documentation.

• To find errors in earlier stages its cheaper.

• Most important bugs are found first.

• In this way testing will do preventive test.

• There is no extra effort.

• If Requirements needs a change will be done in this stage.

Early test improves quality,

Helps to stop bugs multiplicity.

Early test improves quality,

Helps to stop bugs multiplicity.

www.qaustral.com

Page 19: QAustral   Testing

19

Testing involves VV&T activities

Verification:

• the process of evaluating a system or component to determine whether the products of the given development phase satisfy the conditions imposed at the start of that phase . [BS7925-1]

Validation:

• determination of the correctness of the products of software development with respect to the user needs and requirements [BS7925-1]

Testing:

• the process of exercising software to verify that it satisfies specified requirements and to detect faults; the measurement of software quality. . [BS7925-1]

www.qaustral.com

Page 20: QAustral   Testing

20

Models that can be used

The test models can be classified in two big categories. Platform dependant test models and Platform independent test models. (PITs and PDTS)

Requirement Models: • It has Use case Models and Requirement information. Also contains sometimes the

interface models.

Platform Independent Models:• Contains the behaviour Models, Test data, Abstract Interface and interaction.•

Platform Dependant Models:• Interface model, Action models.

www.qaustral.com

Page 21: QAustral   Testing

21

Level of Testing

• Component Testing

• Integration Testing

• System Testing

• Acceptance Testing

• Static Test

• Dynamic Test

• Test Case Design Techniques

www.qaustral.com

Page 22: QAustral   Testing

22

StaticTesting

Informal

Walkthrough

Technical Review

Inspection

Low

High

Page 23: QAustral   Testing

23

DinamicTesting

• Based on Specifications Test (Black Box):

– Equivalence Partitioning

– Boundary Value Analysis

– State Transition Testing

– Use case Testing

• Based on Structure Test (White Box):

– Statement Coverage

– Decision/Branch Coverage

– LCSAJ

– Loop Coverage

• Based on experience Test:

– Error guessing

– Exploratory Testing (Rapid Testing)

– Ad-hocwww.qaustral.com

Page 24: QAustral   Testing

24

Choosing Test Techniques

• Key Selection Factors:

– Type of system

– Regulatory Standards

– Customer or Contractual Requirements

– Level of Risk

– Type of Risk

– Test Objectives

– Documentation Available

– Knowledge of testers

– Time and Budget

– Development Life Cycle

– Use Case Models

– Experience of type of defects found.

www.qaustral.com

Page 25: QAustral   Testing

25

Resume about Test Levels

Component

Integration

System

UAT

Functions

Clases

Big Ban

Functionalities

Priorities

Statics

DynamicsFunctional

Non-Funct.

Black Box

White Box

Formal or informal

Contractual

Page 26: QAustral   Testing

26

Stress Test

• After a component test has been executed we can use that information to analyze the application.

• We can use the scripts to create our Stress Test Scripts.

• Component tests are the basis of Stress Test.

• Major advantages:

– The component has a minimum of quality after component tests

– We can save time re-using documentation

– Component Test are the starting point.

www.qaustral.com

Page 27: QAustral   Testing

27

Stress Test

• Frequently Related to Performance Test:

Performance test is an average about how the application answer to certain factors.

Stress Testing refers to the ability of a system or hardware to maintain a certain level of effectiveness under unfair conditions. The process involves tests execution to measure frequency of errors or system crashes, etc.

Stress tests are executed right after integration test has been performed to clear all bugs that might be critical in the production field and before system tests are executed.

www.qaustral.com

Page 28: QAustral   Testing

28

Stress Test

• What's the difference between Performance, Load and Stress Testing?

– Performance: Identifies bottle neck into the system. For instance in a web application has different levels:

• Application Level Low response of the code.

• Database Level Optimize queries

• Operating System Level Monitors and identify weakness and hardware resources.

• Network Level Implement sniffers and all kind of controls to validate that the network performs as expected.

All those levels mentioned take a based on structure approach when performed by technical teams. If testers has to perform the load testing then it takes a based on specifications approach.

Load testing is a part of Performance Testing and it helps to achieve the performance objective. www.qaustral.com

Page 29: QAustral   Testing

29

Stress Test

• Load Testing:

– We have already seen that Load testing is a part of Performance testing and these are the goals of Load testing:

– Ensure that the application meets the performance baseline established during performance testing.

– Expose Bugs such as Memory Management, Memory Leaks, Buffer Overflow, etc….

– Load Testing needs a good planning and strategy.

www.qaustral.com

Page 30: QAustral   Testing

30

Stress Test

• Stress testing takes the application to the extreme level. It tries to break it by overloading its resources. Sometimes called Negative test.

• Behind that evil idea the main objective is to confirm that the application crashes and recover itself gracefully, This is called Recoverability.

• Load Testing is part of the Stress Tests.

• For a Web Application by checking statistics:

– Simulate a big impact of users

– While that’s happening try to take one or more servers down and up.

– Restart the database

– Run processes that consumes resources (CPU, Memory, Disk, Network)

– Lost of electricity

• While this is happening is the security system compromised? It recovers all data?

Page 31: QAustral   Testing

31

Stress Test

• It deserves:

1. A deep general analysis

2. A deep Component analysis at a general level.

3. A deep Component analysis at an application Level.

4. Identify weakness

5. Identify external factors having impact in our system

6. Identify how the application communicates with Databases and which Databases (each of them has different characteristics)

7. Identify Protocols to accomplish.

8. Which tool to use to simulate different scenarios.

This is how to define a good stress test strategy.

www.qaustral.com

Page 32: QAustral   Testing

32

Stress Test

• Tips:

1. Check that all transactions recovers properly

2. All communications between components recovers properly

3. Hardware recovers properly (Network, Servers)

4. Concurrency

5. Overload Transactions with the DBA in Isolation and in relation with other components.

6. Overload the security process.

7. After checking our world stress it again with the outside world.

www.qaustral.com

Page 33: QAustral   Testing

33

Based on QAustral S.A. experience we will have an strong interaction with the client to provide the

best service according with its expectations. All tasks and documentation generation will be well

known by the parties involved and agreed by them.

Availability:

We will begin with the plan execution after 1 week from signing the service contract and confidential agreement.

Special Conditions:

– Prices does not includes any applicable tax.

– All services will be performed from our headquarters in Cordoba, Argentina.

– In case of relocation, Travel and living expenses going outside Cordoba are not included in the price.

For further information visit www.qaustral.com or send an email to [email protected]

Commercial Terms