Skip to main content

Rob Sabourin

AmiBug.com

Rob Sabourin, P. Eng., has more than thirty years of management experience leading teams of software development professionals. A well-respected member of the software engineering community, Rob has managed, trained, mentored, and coached hundreds of top professionals in the field. He frequently speaks at conferences and writes on software engineering, SQA, testing, management, and internationalization. Rob wrote I am a Bug!, the popular software testing children's book; works as an adjunct professor of software engineering at McGill University; and serves as the principle consultant (and president/janitor) of AmiBug.Com, Inc. Contact Rob at Contact Rob at [email protected].

Speaker Presentations
Sunday, May 4, 2014 - 8:30am
Agile Tester Certification—ICAgile (2-day)
  • Discover how testing is implemented in different agile environments
  • Learn about user stories and how to test them
  • Explore key agile testing practices—ATDD, BDD, TDD, and ET
  • Examine technical and team skills you need for success
  • Recognize the main agile testing challenges and how to address them

Agile software practices are being employed within many development organizations worldwide. More and more test teams and testers are participating in agile projects or are embedded within agile teams. Many testers struggle to understand the agile development process and their place in it. Learn the fundamentals of agile development, the role of the tester in the agile team, and the agile testing processes. From user story elicitation and grooming through development and testing, this course prepares you to be a valuable member of an agile development team. Explore the business and technology-facing tests agile projects demand and how agile testers help the project succeed. Learn about the techniques of Test-Driven Development (TDD) and Acceptance Test-Driven Development (ATDD). Learn technical and team skills testers need for success in the world of agile development.

Practice of Agile Testing Techniques
Explore agile testing processes in an informal and interactive workshop setting. Examples are studied through a series of small group exercises and discussions.

Who Should Attend?
This course is appropriate for both novice and experienced software testers. Developers expected to test within agile teams will find this course extremely useful. Test and development managers also will benefit from this course. A background of basic development and testing processes is helpful.

ICAgile Certification
In order to receive your certification in Agile Testing from the ICAgile you must first complete Fundamentals of Agile Certification. At the completion of both courses you will be awarded your Agile Testing certification by the ICAgile. Students not looking for certification and only taking the Agile Testing course should already have a good knowledge of agile principles and how agile teams function. The ICAgile certification fee is an additional $45 and will be added at registration for your convenience.

2-Day Course Outline

Introduction
Validation
Verification
Exploration
Testing as a skill set
Testing to support customers
Testing to support developers
Testing to support stakeholders
Test matrix
Agility, grace, and flexibility

Agile Testing Origins
Agile testing history
Agile testing philosophy
Traditional vs. agile testing
Evolving lifecycle models
Evolving test approaches
Evolving test tools
Testing and the agile manifesto
Testing and agile principles
What is quality
What is done
Testing as a team approach
Teams and process
Requirements
Unit Testing
System and integration testing

Agile Planning and the User Story
Testing during iteration planning
Agile release train
Testing’s role in planning
Release Planning
Product backlog
Story tests
Constraints
Sizing stories
Backlog grooming
Testing activities in the sprint

Testing in the Heat of the Sprint
Continuous Integration
Test-Driven Development
Automating Unit Tests
Acceptance Test-Driven Development
Behaviour Driven Development
Scripting
Exploratory Testing
Non-Functional Testing
Release Testing
User Acceptance Testing
Live Testing

At Sprint's End
Customer demo
Retrospective
Avoiding technical debt

Organizing Agile Testing
Measuring progress
Test documentation
Test environments
Bug management
Agile test automation
Organizational frameworks
Distributed agile teams
Risky agile transitions

Wrap up


Class Daily Schedule
Sign-In/Registration 7:30am—8:30am
Morning Session 8:30am—12:00pm
Lunch 12:00pm—1:00pm
Afternoon Session 1:00pm—5:00pm
Times represent the typical daily schedule. Please confirm your schedule at registration.

Training Course Fee Includes
• Tuition
• Course notebook
• Continental breakfasts and Continental breakfasts and refreshment breaks
• Lunches
• Letter of completion

Tuesday, May 6, 2014 - 8:30am
Half-day Tutorials
Exploring Usability Testing
NEW

It is not enough to verify that software conforms to requirements by passing established acceptance tests. Successful software products engage, entertain, and support the users' experience. Goals vary from project to project, but no matter how robust and reliable your software is, if your users do not embrace it, business can slip from your hands. Rob Sabourin shares how to elicit effective usability requirements with techniques such as story boarding and task analysis. Together, testers, programmers, and users collaborate to blend the requirement, design, and test cycles into a tight feedback loop. Learn how to select a subset of system functions to test with a small group of users to get high value information at low cost. Learn how usability testers can take advantage of naïve questions from novice users as well as the tunnel vision and bias of domain experts. Rob shares examples of usability testing for a variety of technologies including mobile and web-based products.

Tuesday, May 6, 2014 - 1:00pm
Half-day Tutorials
Test Estimation in Practice
NEW

Anyone who has ever attempted to estimate software testing effort realizes just how difficult the task can be. The number of factors that can affect the estimate is virtually unlimited. The key to good estimates is to understand the primary variables, compare them to known standards, and normalize the estimates based on their differences. This is easy to say but difficult to accomplish because estimates are frequently required even when very little is known about the project and what is known is constantly changing. Throw in a healthy dose of politics and a bit of wishful thinking and estimation can become a nightmare. Rob Sabourin provides a foundation for anyone who must estimate software testing work effort. Learn about the test team’s and tester’s roles in estimation and measurement, and how to estimate in the face of uncertainty. Analysts, developers, leads, test managers, testers, and QA personnel can all benefit from this tutorial.

Wednesday, May 7, 2014 - 11:30am
Test Techniques
Testing Lessons Learned from Monty Python

And now for something completely different. Monty Python's Flying Circus revolutionized comedy and brought zany British humor to a worldwide audience. However, buried deep in the hilarity and camouflaged in its twisted wit lie many important testing lessons—tips and techniques you can apply to real world problems to deal with turbulent projects, changing requirements, and stubborn project stakeholders. Rob Sabourin examines some of the most famous Python bits—“The Spanish Inquisition” telling us to expect the unexpected, “The Dead Parrot” asking if we should really deliver this product to the customer, “The Argument” teaching us about bug advocacy, “Self Defense against Fresh Fruit” demonstrating the need to pick the right testing tool, and a host of other goofy gags, each one with a lesson for testers. Learn how to test effectively with persistence, how to make your point with effective communication, and how to clarify project goals and requirements.