Teaching to the Test

Posted on: December 14th, 2015

by Bill Rinko-Gay

This blog is a follow-on to the post entitled “Open Book Testing.” If you haven’t already, you may want to read that first.

Once you have reviewed all your test stories it’s time to prepare to execute them. A well planned test execution, in conjunction with a well planned code implementation, helps to actually build quality in as well as verify the quality of the completed software.

Open Book Testing

Posted on: November 11th, 2015

by Bill Rinko-Gay

There are two components of quality software: building the right thing and building the thing right. One of the most difficult things to get right is knowing what the right thing is. In non-Agile methods this puts the focus on defining complete and detailed requirements. Experience shows that it is very difficult, if not impossible, to specify exactly what you want when you haven’t seen or worked with it yet.

Agile Quality Assurance

Posted on: September 30th, 2015

by Bill Rinko-Gay

Software Development is not Manufacturing

Posted on: August 5th, 2015

Software Development is Not Manufacturing

… Your company likens software development to a production (manufacturing) environment and expects people and processes to reflect the same.


A number of organizations use Waterfall based processes for software development that call for all requirements to be gathered at the start of a project.

Team Metrics

Posted on: June 30th, 2015

Team Metrics

  • How fast are we going?
  • What’s our biggest obstacle to velocity?
  • Does we have enough requirements defined?
  • Are we building the most valuable things we can?
  • Is there something we’re deferring that should be worked on now?
  • Are we getting things all the way done?
  • What would we have if we had to ship tomorrow?

Management Metrics

Posted on: May 4th, 2015

  • Are we tracking to the business case?
  • How much time & cost remain to complete the project?
  • Are we over or under budget?
  • How can I give my customer even more value?
  • What will I have ready to ship & when?

Book Content and Layout

Posted on: March 2nd, 2015

As mentioned previously, this blog series will cover the basic patterns only; advanced topics may be addressed in the future.

I will cover the basics on the principles and process before discussing the team and technical practices. Lean Software Development will be covered subsequently. The following topics will be covered in the order (more or less) listed below:

Efficient Dev-Test

Posted on: February 21st, 2015

by Bill Rinko-Gay

One of the advantages of Agile is the ability to deliver continuous improvements to your customer. If you have experience in traditional development paradigms you a release is usually a mixed bag filled with new functionality and new (and sometimes old) defects. This is frustrating for users and the development team. You seem to always be under a backlog of bugs that keeps the software from delivering all the business value you intended.

Alexandrian Pattern Format

Posted on: February 19th, 2015

Pattern Name*** (with confidence level)

Aliases: if any …

Context in which we find the problem

The context is often described via a “situation” rather than stated explicitly. Sometimes, the context is described in terms of the patterns that have already been applied.


Forces or trade-offs behind the pattern

The often contradictory considerations that must be taken into account when choosing a solution to a problem. The relative importance of the forces (those that need to be optimized at the expense of others) is implied by the context.

Functional Grouping

Posted on: January 28th, 2015

by Bill Rinko-Gay

Now that your stories are chosen and the iteration has been kicked off, is there any reason not to have developers simply start in as quickly as they can on writing the code for the stories? I believe there are 3 reasons to set up a plan for delivering groups of stories to test. First, functional grouping allows for higher quality code delivered faster. Second, functional grouping makes the testing job far easier. Third, functional grouping allows the team to re-plan an incomplete iteration. Let’s look at each of these claims in detail.