Systems Testing and Quality Assurance
It should be a goal of every system development project to deliver a system free of defects, on time and in a cost-effective manner. This course is designed to give students the practical skills and the specific techniques to build the zero defect concept into their methods of building and maintaining systems. The primary emphasis of the workshop is to avoid errors rather than do re-work to correct them.
Our approach is straightforward. We believe there is a direct and demonstrable relationship between the quality of the requirements analysis, the quality of the test plans that result, and the quality of the operational system. Here are some of the benefits your organization will receive: slashed time and cost of re-work and systems maintenance, systems built more quickly, increased user confidence in system quality, and reduced or eliminated errors in operational systems.
Upon completion of this workshop, students will be able:
- Incorporate the Zero Defect concept into their methods of building and maintaining systems
- Develop an integrated design, construction and test plan
- Develop practices that prevent errors from occurring prior to system testing
- Verify & validate the quality of the system during each phase of a system’s life cycle
- Conduct inspections and structured walkthroughs
- Explain the role of smoke testing
- Document and use test results (metrics) to pinpoint functions of the systems development process that need improvement
- Design effective test cases using white-box and black-box techniques
- Use various systems tests: stress, volume, regression, etc.
- Create test objectives and acceptance criteria
Introduction
- What is quality?
- What causes quality problems?
- Definition of errors (per IEEE)
- Sources by phase of systems life-cycle
- What are the costs associated with a lack of quality?
- What are the costs associated with having quality?
- DIRFT: Doing It Right The First Time
Systems Life-Cycle Concepts
- Phases
- Costs by phase
- Establishing quality before design and coding
- Defining testable requirements
- Testing the concept-of-operations
- Planning for systems acceptance
- Using CASE technology
- The role of testing and debugging
- Configuration management
- Baseline concept
- Techniques for controlling changes
- Adjusting to changing requirements
- Documentation requirements
Testing Concepts
- Definition
- Economics of testing
- Relating priorities to risks
- Who does what testing
- Monitoring test effectiveness
- Paradox: purpose vs. commonly used measure of success (“no errors”)
- Use of test matrices
Test-Case Design
- Defining specific test objectives
- Black box vs. white box techniques
- Black box techniques
- Equivalence partitioning
- Boundary-value analysis
- Cause-effect graphing
- Error guessing
- White box techniques
- Statement coverage
- Decision coverage
- Condition coverage
- Decision/condition coverage
- Multiple-condition coverage
- Using the techniques together for maximum effectiveness
- Generating test data
- Assembling the test cases into test specifications
Testing Strategies (Discussion of Advantages and Disadvantages)
- Big bang vs. incremental
- Top‑down vs. bottom-up
- Modified top-down
- How strategy affects test-case design
- Error seeding
- Regression Testing
- Definition
- Why it is critical
- When to do it
- Testing prepackaged software
Types of Testing
- Module testing and integration
- Smoke testing
- Procedure testing
- Function testing
- System testing
- Volume
- Stress
- Usability
- Recovery
- Sewiceabiiity
- Etc.
- Acceptance testing
- Installation testing
Creating the Test Plan
- Using a phased approach (affected by strategy employed)
- Contents
- Test specifications
- Objectives
- Completion criteria
- Schedules/cycles
- Responsibilities
- Methods/tools to be used
- Test-case libraries to be used
- Standards to be followed
- Computer resources
- Tracking procedures and error disposition
- Debugging procedures
- Reporting requirements
- Determining test-completion criteria (i.e. knowing when to stop)
- Who is to create the plan?
- When is the plan to be created?
Inspections, Walkthroughs, Types
- The concept of Peer Reviews
- Inspections
- Structured Walkthroughs
- When to use: determination of review milestones and objectives
Debugging
- Problem recognition and identification
- Specifying the problem or defining the deviation
- Searching for distinctions
- Generating possible causes: what’s changed?
- Deducing the most probable cause(s)
- Testing for true “cause(s)”
Fixing Errors
- Traps and pitfalls
- How to test fixes
- The role of regression and smoke testing
- Designing changes into existing programs
- Error analysis: a tool for improvement
Getting Better
- Using the test plan
- Developing system metrics
- Monitoring system performance versus system objectives
Is there a discount available for current students?
UMBC students and alumni, as well as students who have previously taken a public training course with UMBC Training Centers are eligible for a 10% discount, capped at $250. Please provide a copy of your UMBC student ID or an unofficial transcript or the name of the UMBC Training Centers course you have completed. Asynchronous courses are excluded from this offer.
What is the cancellation and refund policy?
Student will receive a refund of paid registration fees only if UMBC Training Centers receives a notice of cancellation at least 10 business days prior to the class start date for classes or the exam date for exams.