Friday, July 27, 2012

Traditional Test Engineering is DEAD

Here's an outline of Jason Arbon's arguments for Agile methods leaving traditional test engineering in the dust.

In the Better Software (May/June 2012) article "Traditional Test Engineering, Your Days are Numbered; Turing Software Quality on Its Head."

"In this shift to agile, late cycle or manual testing efforts are often dropped or, worse, the program management and development teams embrace agile and continuous practices, but the old world regression test cycle is left hanging around like an archaic ritual that adds a few days or weeks to an engineering process that wants to be continuous."

Test Plans - quick cycles out pace the ability of managers to create the traditional test plan. Modern software development teams do more concurrent testing than was ever done in traditional processes.

Regression Testing - ninety some precent pass all the time, is this a good use of time and energy. Create a risk view of the application under test. Use automated tools and focus time and energy on these risky areas.

Textual Bug Filing and Triage - this manual process is bugger than the software being reported upon. Try logging the number of defects with the defects already recorded in your logging system. Move to automated systems that report bugs with attached screen shots of the systems and the steps to reproduce the incident.

Bug and Work Item Backlogs - the best advice for managers is "Don't". If you have to refer to a list of bugs then you don't know your software. People that know and use your software know what bugs need to be fixed. That information is in there minds daily, ask them. There is no need of a list of bugs that will take 3 years to get to the end of it. Trust me - you will not forget the really important bugs.

Test Case Databases - these are a sign of non-agile work methods.  Databases are very heavyweight, compared to a lightweight list of areas to test that the team is currently work upon, and a suite of always green, passing tests.

Release Management - we are in an era of continuous releases, the question is not if or when the release goes out the door - but only if a feature is turned on or off in that particular release.  If your features can not be expressed in this binary state, your application is really old-school.

Team Structure - many smaller companies reap the benefits of crowdsourced testing teams that and virtualized testing teams.

see also:
The 21st century definition of TEST

Saturday, July 14, 2012

Active Listening: The 5 Second Rule

Learning to listen is a difficult skill to teach. On the surface it appears to be a passive activity. It is the reflection portion of the listening activity that might need enhancement. Here is a group exercise that will strengthen your team's ability to listen. The 5 Second Rule. After a person speaks, everyone must count to 5 (5 seconds) before anyone speaks. If you wish to speak next, you must physically count on your raised hand via fingers 1, 2, 3, 4, 5. Practice this a few time, counting slowly (maybe extend it to 10 seconds if there are lots of fast counters). If two or more people raise their hands to speak next, then they (not the group) decide the speaking order. This pause in the immediate point, counter-point might allow the conversation to become multi-perspective, rather than percussive-discussion, like a ping-pong match. Most teams will expand their views and learn to be inclusive during dialogues with this technique. When multiple people want to speak to a point, a visual indicator of this, the raised hand, reminds the group that a discussion point has multiple perspectives. Expanding the number of speakers in the dialogue will reduce the myopic effect of a two person debate of the topic. Some Exceptions to the 5 Second Rule. If there is a facilitator in the meeting or group discussion, they should have an exception to the rule when they are using their facilitation skills to make process notes, points of order, make know violations of working agreements, etc. Direct questions from one individual to a named individual may be excepted from the rule. However, be careful, people will game this rule to turn the dialogue into a few person debate. See the facilitator exception.

Thursday, July 5, 2012

Missing Affordances

What are the affordances that are missing from the virtual task board?  There are quite a few.

The perceptual psychologist J. J. Gibson coined the term in the late 1970s to mean the relationships that an actor (person) can have with objects in the world.  Then Donald Norman popularized the term in his book "The Design of Everyday Things."

You may think these affordances don't matter much.  But after you have them (via using a physical task board) you will find they are sorely missing.

I can:
  • Hold a task and show it to you. Now you know exactly what I'm talking about. Many virtual task board have no way of denoting a selected task. 
  • Pick a different task and hold it. Now I know you are talking about that one, but I'm still referring to the one I hold. 
  • Move a task. The motion is the affordance. Not the before and after location of a task - don't confuse position with motion. 
  • Pass a sticky note to you, now you have it and this denotes responsibility to perform the task perhaps. You may choose to stick it on your monitor as a reminder to perform the task later that day. 
  • Wad up a task and toss it on the floor. You may infer that I don't think we need this task any more. 
  • Retrieve a task from the floor and straighten it out and place it back on the board. Does your virtual tool have an undo feature? 
  • Slice the task into and hand you part of the task. Now you have a portion to own and I have a portion to own. 
  • Stack multiple task upon each other, this grouping may imply order or just a collection of like task. 
  • Annotate the task with yet another sticky note - this one could be a red sticky with an exclamation mark (meaning impeded). 
  • Revise the task with a simple swipe of the ink pen, to mark out a word. 
  • Augment the task with a new inserted word to provide more meaning with just a simple writing tool. 
  • Draw a diagram on the task - that's worth 1000 words! 
As an exercise try this with your team.  Make a list of all the tacit protocols that have developed to indicate affordances that are missing with your virtual task board.  For example:  selecting the task and highlighting it in some way to make people understand which task you are "holding."