Implementing Quality Approaches
Private Training

Course Summary

This is a 3 day, practical hands-on course that covers the critical path of testing and numerous techniques to implement quality into the process. Students will learn the terminology, process, and challenges of testing in the real world. You will also learn how to find software defects early in the development lifecycle before they become more costly and risky to fix. You will gain a good working knowledge of testing and what it takes to design and conduct an effective test of software, regardless of the technology.

Audience
Quality assurance specialists, quality control analysts, system testers, programmers, business analysts, systems analysts, project managers, support analysts, engineers, and acceptance testers.
Course Length
3 Days
Prerequisites
None.

Objectives

Learn how to develop test cases and test plans.

Identify the appropriate metrics to measure progress, performance & quality.

Learn techniques to ensure that an information system protects data and maintains functionality.

Detailed Outline

  1. Introduction to Testing & QA
    • Objectives / observations
    • Impediments, opportunities, and managing
    • Responsibilities during testing
    • Testing definitions
    • Starting testing early vs. late start testing
    • Quality assurance
    • Quality tools / steps / suggestions
    • Opportunities to improve the testing process
    • Defining the development life cycles
    • Measuring performance / reliability metrics
    • Product development and testing phases and objectives
  2. Major Software Development & Testing Issues
    • Functional specifications and design documents
    • Preparing and validating the specifications
    • Quality assurance
    • Specification problems / defect classification
    • Detailing the scripts and cases
    • Unit vs. System or acceptance testing
    • Positive and negative testing
    • Blind testing
    • Use case analysis
    • Regulating the change control process
  3. Test Methodologies & Checklists
    • Setting test objectives and identifying tests
    • Test planning
    • Using test methodologies
    • Computing the test coverage
    • Black box vs white box testing
    • Boundary value testing
    • Path analysis or Cyclomatic complexity
    • Decision tables
    • State machines
    • State transition
    • Factor analysis
    • OATS– orthogonal array testing strategy
    • Pairs and magic squares
    • Using checklists to improve testing quality
  4. Risk Analysis
    • Ascertaining the Value of a Test
    • Assessing the Level of Risk
    • Assigning a Relative Cost to Testing
  5. Test Planning
    • Unit testing (early testing)
    • Creating and auditing the unit test plan
    • Integration testing and system testing
    • System / acceptance testing
    • Creating and auditing the system test plan
    • Regression testing
    • Defining the traceability matrix
    • Operability/Usability testing
    • Determining when testing is complete
    • Estimating the testing effort
    • Estimating techniques
    • Data dictionaries
    • Approaches to testing
    • Using the test notebook
  6. Defect Prevention
    • Identifying functional specifications defects
    • Identifying design defects
    • Identifying coding defects
    • Identifying testing defects
    • Defining the coding/testing standards
  7. Test Management
    • Exploring the test logs
    • Test logging scenarios
    • Exploring the defect tracking report
    • Retesting and follow – up procedures
    • Understanding root cause analysis
  8. Problem Solving Techniques
    • Error isolation
    • Variable tracers
    • Flowcharts
    • Deductive questioning
    • Structured walkthroughs
    • Joint Application Design (JAD)
  9. Object-Oriented Testing
    • Overview
    • Object-Oriented vs. Traditional testing
    • Managing Complexity
    • Abstraction
    • Encapsulation
    • Inheritance
    • Object-Oriented systems testability issues
    • Object-Oriented testing approach
    • Using test clients
    • Other testing issues
  10. Software Tools for Testing
    • Automated Testing Considerations
    • Test Tools
  11. Web-Based Testing
    • Web-based testing: where to begin
    • Determining what to test
    • Where to test: client side or server side
    • Web testing responsibilities/ checklists
    • Agile methodology and testing
    • What changes with agile?
    • Agile principles
    • Extreme programming
    • Productivity measure: velocity
    • XP basic rules and definitions
    • Testing / practices in XP shops
  12. Capability Maturity Model Integration (CMMI)
    • Defining the CMMI
    • Capability level 0: incomplete
    • Capability level 1: performed
    • Capability level 2: managed
    • Capability level 3: defined
    • Capability level 4: quantitatively managed
    • Capability level 5: optimizing
  13. Security Testing
    • Security guidelines, rules, and regulations
    • Requirements
    • Development
    • Installation
    • Security services
    • Cryptographic security mechanisms
    • Security infrastructures