Contact Us

Quality By Design Course

Duration: 2 days
Location: Delivered on customer site
Course capacity: 8 students

QBD is a 2 day course with practical hands on workshops. Delegtes learn a combination of design, code, and testing techniques that can be used to enormously improve the reliability of the software released, thus leading to much higher productivity.

The course is in five parts, each part consisting of theory and hands on practical workshops:
Part 1: Design By Contract
Part 2: Code implementation of Design By Contract
Part 3: Contract Driven Testing
Part 4: Automated Unit and Integration Testing
Part 5: Test Driven Development

The course teaches students how to:

  • develop high quality software using the concept of contracts
  • use contracts to drive out unit tests for the software
  • build software that is testable
  • build automated unit and integration test harnesses
  • develop faster and more accurately using Test Driven Development

Recommended For
Software developers / team leaders who are building component based software using object orientation.

If you have a team of developers working together on a component based system then this course will be of significant benefit. By using Quality By Design you will soon find the number of bugs significantly decreases as your team produce quality software to the deadlines you set. Using the concept of contracts you will find integration far less time consuming. Using Automated Unit and Integration testing you will be able to test years worth of effort within minutes, and release the software with the proven confidence of its reliability. With Test Driven Development you will be able to develop reliable systems much faster than ever before.

It is not necessary for participants to have in depth knowledge of object orientation. Knowledge/experience of using classes is fine for this course.

Upon completion of the course participants should be able to:

  • Use Design By Contract to define a set of rules for an interface.
  • Use the contracts to drive out a set of unit tests for a component.
  • Implement run-time checking of conditions to enhance the quality of the software.
  • Know how to recover the state of the object if the conditions fail.
  • Write automated unit and integration test harness to check the code quickly and exhaustively.
  • Understand how to speed development by writing tests before the main body of code is written. 

Topics covered

  • The impact of low quality software
  • The advantages of using contracts
  • The contractual obligations of the client and supplier
  • Defining the class invariants
  • Defining preconditions and postconditions
  • Implementing contract checking
  • What to do when a condition fails
  • Ensuring testability of the code
  • Building a simple automated test harness
  • Writing tests before writing the code. 

Recommended Experience
A basic knowledge of either VB.NET or C#.NET.
Participants should be familiar with using classes to build systems.
It is not necessary to have a background in object orientation to benefit from this course.

Materials Provided
Copy of presentation slides
Diskette containing all example code

Course Pricing
£600 per student (minimum of 4 students, maximum of 8)

To book a course, or find out more, please contact us.

All content © Byte-Vision Limited 1997 - 2004