La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Skill Category 1 Software Testing Principles and Concepts

Presentaciones similares


Presentación del tema: "Skill Category 1 Software Testing Principles and Concepts"— Transcripción de la presentación:

1 Skill Category 1 Software Testing Principles and Concepts
(Team 1: Priscila, Octavio y David)

2 Restricciones Nombre del documento:
Clasificación de la Información: INTERNA Restricciones Los 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ón La 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

3 1.1 Vocabulary Vocabulary
Unique characteristic of a profession 1.1.1 Quality Assurance versus Quality Control Quality 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.

4 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

5 1.1.3 Software Quality Factors
Correctness, 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)

6 1.1.5 Definitions of Quality
1.1.4 How Quality is Defined Five 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 Quality Producer & 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

7 1.2 What is Life Cycle Testing?
Testing is NOT: A stage/phase of the project Just finding broken code A final exam “Debugging”

8 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?

9 1.2 What is Life Cycle Testing?
1.2.2 Developers are not Good Testers Misunderstanding 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 Defects The enemy of the Quality is the Variability. A mature Software development process is meant to reduce the variability. Statistical Process Control Measuring and Reducing Variability. What is an “In Control Process” What is an “Out Control Process” How to reduce variability

10 1.2 What is Life Cycle Testing?
SPC Accepted 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.

11 1.2 What is Life Cycle Testing?
Typical Sources of Variation Method Components Procedures Policies Accounting practices People Components Training Experience Attitude Aptitude Environment Components Temperature Humidity Noise Level Lighting Measurement Components Counting Sampling Material Components Forms Suppliers Machine Components Office equipment Computers Software

12 1.2 What is Life Cycle Testing?
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).

13 1.2 What is Life Cycle Testing?
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.

14 1.2 What is Life Cycle Testing?
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.

15 1.2 What is Life Cycle Testing?
1.2.5 Software Product Defects Software 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 Defects Some 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.

16 1.2 What is Life Cycle Testing?
1.2.6 Finding Defects Testers 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

17 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.

18 1.3 Reducing the Frequency of Defects in Software Development
1.3.2 Testers Need to Understand Process Maturity Software 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.

19 1.4 Factors affecting software testing
1.4.1 People Relationships A 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”

20 1.4 Factors affecting software testing
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?”

21 1.4 Factors affecting software testing
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.

22 1.4 Factors affecting software testing
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.

23


Descargar ppt "Skill Category 1 Software Testing Principles and Concepts"

Presentaciones similares


Anuncios Google