SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek...

23
SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles and Concepts (Team 1: Priscila, Octavio y David)

Transcript of SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek...

Page 1: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

Skill Category 1Software Testing Principles and Concepts

(Team 1: Priscila, Octavio y David)

Page 2: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

RestriccionesNombre del documento:Clasificación de la Información: INTERNA

RestriccionesLos contenidos de este documento son propiedad de Softtek y son sólo para uso interno. Queda estrictamente prohibido cualquier reproducción total o parcial sin la autorización escrita por parte de Softtek.

Este documento está sujeto a cambios. Los comentarios, correcciones o dudas deberán ser enviados al autor.

Tabla de RevisiónLa siguiente tabla enlista las revisiones realizadas a este documento. Debe utilizarse para describir los cambios y adiciones cada vez que este documento vuelva a ser publicado. La descripción debe ser detalla e incluir el nombre de quien solicita los cambios.

Número de versión

Fecha de versión

Tipo de cambios Dueño / Autor Fecha de Revisión / Expiración

1 12-Ene-10 Versión inicial Priscila, Octavio, David

12-Ene-10

Page 3: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.1 Vocabulary

VocabularyUnique characteristic of a profession

1.1.1 Quality Assurance versus Quality ControlQuality Assurance - A planned and systematic set of activities necessary to providde adequate confidence that products and services will conform to specified requirements and meet user needs

Quality Control – Process by wich product quality is compared with applicable standards, and the action taken when nonconformance is detected.

Page 4: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.1 Vocabulary

1.1.1 Quality Assurance versus Quality Control (…cont)Producers View Point – The Quality of the product meets the requirements

Customer View Point- The Quality of the product is “for for use” or meets the customer needs

Products. Requirements, Design Documents, Data Models, Programs, etc

1.1.2 The Cost of Quality (Failure Costs + Appraisal Costs + Prevention Costs) + Cost of Production = Total Production Costs

Page 5: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.1.3 Software Quality FactorsCorrectness, Reliability, Efficiency, Integrity, Usability, Maintainability, Testability, Flexibility, Portability, Reusability, Interoperability

Cost-to-implement versus life-cycle-cost – Should be consider when selecting the important for a specific system

Life Cycle Phases – Development (Requirement Analysis, Design, Code & Debug), Evaluation (System Test) and Post-Development (Operation, Revision, Transition)

Page 6: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.1.4 How Quality is DefinedFive perspectives of quality important to the customer – Transcendent, Product Based, User-Based, Development and Value Based

Quality in Fact / Quality in Perception

1.1.5 Definitions of QualityProducer & Customer Gap

Excellence - Measure or degree of quality

Internal Customers – Person/Group that receives the results (outputs)

External Customers – Those using the products provide by the organization

Page 7: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.2 What is Life Cycle Testing?

Testing is NOT:A stage/phase of the project

Just finding broken code

A final exam

“Debugging”

Page 8: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.2 What is Life Cycle Testing?

1.2.1 Why Do We Test Software?The simple answer as to why we test software is that developers are unable to build defect free software. If the development processes were perfect, meaning no defects were produced, testing would not be necessary

On the following six concepts is being explained the reason of “Why do we Test”

Developers are not good testers

What is a defect?

Why does a development process produce defects?

Reducing the frequency of defects in software development

An effective development process that minimizes defects

How is quality defined?

Page 9: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.2.2 Developers are not Good TestersMisunderstanding won’t be detected

IT people are too optimistic in the ability of defect free work. This blinds the developer into accepting Erroneous system specifications.

1.2.3 What is a Defect?Is defined as the lack of the desirable state that quality wants to achieve.

1.2.4 Software Process DefectsThe enemy of the Quality is the Variability. A mature Software development process is meant to reduce the variability.

Statistical Process ControlMeasuring and Reducing Variability.

What is an “In Control Process”

What is an “Out Control Process”

How to reduce variability

1.2 What is Life Cycle Testing?

Page 10: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

SPCAccepted practice uses a prediction interval three standard deviation distances in width around the population mean (μ ± 3) in establishing the control limits.

The natural change occurring in organizational life moves systems and processes towards increasing variation. Statistical methods help us collect and present data in ways that facilitate the evaluation of current theories and the formation of new theories.

1.2 What is Life Cycle Testing?

Page 11: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

Measurement ComponentsCounting

Sampling

Material ComponentsForms

Suppliers

Machine ComponentsOffice equipment

Computers

Software

Method ComponentsProceduresPoliciesAccounting practices

People ComponentsTrainingExperienceAttitudeAptitude

Environment ComponentsTemperatureHumidityNoise LevelLighting

Typical Sources of Variation

1.2 What is Life Cycle Testing?

Page 12: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

Brian Joiner outlined a strategy for reducing common causes of variation:

Talk to lots of people including local employees, other managers, and staff from various functions.

Improve measurement processes if measuring contributes too much to the observed variation.

Identify and rank categories of problems by Pareto analysis (a ranking from high to low of any occurrences by frequency).

Stratify and desegregate your observations to compare performance of sub-processes.

Investigate cause-and-effect relations. Run experiments (one factor and multifactor).

1.2 What is Life Cycle Testing?

Page 13: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

Those working in the process (employees) have the lead responsibility for the reduction of special causes of variation. Those working on the process (management) are responsible for leading the effort to reduce common cause variation.

Bringing a process into a state of statistical control is not really improving the process; it is just bringing it back to its typical operation. Reducing variation due to common causes is process improvement and the real essence of continuous process improvement.

1.2 What is Life Cycle Testing?

Page 14: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

Do Testers Need to Know SPC?Testing is a measurement process. It attempts to measure the implemented software against either or both specifications and user needs. Statistical process control is a measurement tool.

1.2 What is Life Cycle Testing?

Page 15: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.2.5 Software Product DefectsSoftware Design Defects

Actions have been incorrect because the decision-making logic omitted factors that should have been included.

Failing to program the software as intended by the customer (user), or designer, resulting in logic errors often referred to as programming errors.

Omitting needed edit checks for determining completeness of output data.

Data DefectsSome input documents prepared by people omitted entries in data elements that were critical to the application but were processed anyway.

People have often unintentionally introduced incorrect data into the IT system.

Data in the IT files became obsolete due to new circumstances.

1.2 What is Life Cycle Testing?

Page 16: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.2.6 Finding DefectsTesters need to identify these two types of defects:

Variance from Specifications – A defect from the perspective of the builder of the product.

Variance from what is Desired – A defect from a user (or customer) perspective.

Typical software system defects include:IT improperly interprets requirements

Users specify the wrong requirements

Requirements are incorrectly recorded

Design specifications are incorrect

Program specifications are incorrect

Errors in program coding

Data entry errors

Testing errors

Mistakes in error correction

The corrected condition causes another defect

1.2 What is Life Cycle Testing?

Page 17: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.3 Reducing the Frequency of Defects in Software Development

1.3.1 The Five Levels of Maturity

The cost differences to produce a function point of logic between a Level 1 and Level 5 organization may vary by 100 times. In other words, what a Level 1 organization may spend on building software, for example $1,000, may only cost $10 for a Level 5 organization.

Page 18: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.3.2 Testers Need to Understand Process MaturitySoftware testers face a much greater challenge testing software developed by maturity Level 1, than they do by testing software developed by higher maturity levels. Some have categorized Level 1 organizations as “Test and Fix” organizations. At this level, testing and rework will consume more than 50% of the total software development effort.

As software development processes mature, two things happen: more testing occurs during the building of software and the amount of testing required is reduced.

1.3 Reducing the Frequency of Defects in Software Development

Page 19: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.4 Factors affecting software testing

1.4.1 People RelationshipsA negative view of testing

Testers hold up implementation

Testers don’t need training, etc

Top ten people challenges:Training in testing

Relationship building with developers

Using tools

Getting managers to understand testing

Communicating with users about testing

Making the necessary time for testing

Testing “over the wall” software

Trying to hit a moving target

Fighting a lose-lose situation

Having to say “no”

Page 20: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.4.2 Scope of Testing

The scope of testing is the extensiveness of the test process.

A narrow scope may be limited to determining whether or not the software specification swere correctly implemented.

To define the scope, each IT organization must answer the question: “Why are we testing?”

1.4 Factors affecting software testing

Page 21: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.4.3 Misunderstanding Life Cycle Testing

Testing process must not be isolated to a single phase in the development process and confined to the later stages od development. This will develop severe consequences.

Studies have shown that approximately 2/3 of all detected system errors occur in the design phase.

Verification must be incorporated into each phase of development.

1.4 Factors affecting software testing

Page 22: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.

1.4.4 Poorly Developed Test Planning

Variability in test planning is a major factor affecting software testing.

A plan should be developed that defines how testing should be performed.

With a plan, testing can be considered complete when the plan has been accomplished.

Consider into a test plan:Test objectives ranked.

Development phases identified.

Business risks identified.

1.4 Factors affecting software testing

Page 23: SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V. Skill Category 1 Software Testing Principles.

SOFTTEK INTERNAL © Copyright 2000-2008. Todos los derechos reservados. Valores Corporativos Softtek S.A. de C.V.