5S on test cases

Improving

Support for technical debt on test scenarios

Improving

Description

The “5S” approach was invented at Toyota, between the 50’s and 70’s and popularized in the 80’s [Miller 2017-2] and some 5S experts define its origin in the XVIth c. with Venetian Arsenal  [Miller 2017] [Cruz 2018] which would have supposedly demonstrated to King Henry III of France their ability to build a ship in 2hrs [see https://www.quality-assurance-solutions.com/History-of-5S.html].

“5S” is a Lean Management technique which takes care of an asset. It comes from 5 japanese words:

  • Seiri (整理): Sorting things to remove useless items (Organization)
    * 整: organize, arranging, tune, tone
    * 理: logic, arrangement, reason
  • Seiton (整頓): Set things in order to gain quick access to items (Orderliness)
    * 整: organize, arranging, tune, tone
    * 頓: suddenly, immediately, in a hurry, arrange, stay in place
  • Seisō (清掃): Shine - cleaning things (Cleanliness)
    * 清: pure, purify, cleanse, exorcize
    * 掃: sweep, brush
  • Seiketsu (清潔): Standardizing things ( Standardize cleanup)
    * 清: pure, purify, cleanse, exorcize
    * 潔: undefiled, pure, clean, righteous, gallant
  • and Shitsuke (躾): Sustain/self-discipline to ensure the 5S is followed (Discipline)

 5S practices are mutually reinforcing and lead to [Hirano 1995]:

  • zero changeovers with easy to understand workshops and elimination of errors
  • zero defects with workshops on obvious defects, proper storage (everything it is in the right place), clarification of the configuration management system.
  • zero waste (“Mudas”) 
  • zero delays with unnecessary items elimination, technical debt, and defects
  • zero injuries (or would cause some stress) with  proper storage and 
  • zero breakdown with better understanding of equipments and more reliable tools

5S also reinforces other Lean practices because it is part the base of Lean Management:

Lean manufactory house [Lieshout 2006]

A 5S can be easily start with sorting things into 3 categories [Hirano 1995]:

  • items that can be used with a possible subcategorization (eg. “often”, “occasionally”, “rarely”)
  • items that cannot be used
  • items that are unlikely to be used

To enable effective sorting among a group of people, standardization is essential. In plants, sorting is materialized by color tapes (red or tiger) to define zones and painted lines to help workers to join the place they are after. Something similar can be done with digital assets notably thanks to tags, links or software that modelize processes.

5S is something to be done on a regular basis, the shorter the period, the less work is to be done. Therefore, it is a good idea to introduce some cleaning activities while working. In plants, you may see a mop attached at the end of carts to clean while going somewhere, which is a kind of Poka-Yoke dedicated to cleaning. 

Forklift equipped with a mop [Hirano 1995]

The coding culture has brought such a mindset with the “boy scout rule” [Martin 2011] from Robert Baden Powell’s: “A boy scout leaves a camp in a cleaner state”. This means that if there is something fast and easy to make the assets cleaner, should it be a place, a document, a piece of code or whatever, 5S actions (eg. removing, updating, fixing, refactoring) should be done while visiting it.

Unfortunately, there are some 5S fixing tasks that may take some time and infer post treatment that need to be planned for instance

  • some corrective actions in backlog that would be added to a scrumban
  • a monthly calendar (or iteration based) that would provide some time frames dedicated to 5S actions

When being visited, items to be updated may be tagged to retrieve them faster at processing time; at the same time, this technique facilitates measuring the technical debt.

Fixing recurrent issues leads to organization change and standardization notably through preventive actions to put in place. Those actions provide 5S actions at higher levels even at strategic or vision level of the company by involving the CEO [Hirano 1995]. Just like testing at different levels, the combination of cleaning levels helps the company to achieve agility, thus introducing the concept of Panarchy

Regarding the discipline side of the 5S approach, especially if Teams are not composed of intrinsically motivated people, discipline is in the hands of the management; but for Japanese people, 5S should be taught as a lifestyle for everyone [Hirano 1995].

Impact on the testing maturity

The big topic with 5S when it comes to testing assets is known as the “closing tests” phase which comes at the end of a test campaign [ISTQB 2018]. While most of the time, closing is reduced in producing the test report, understanding this phase as an opportunity to perform a 5S will help you to provide efficient test campaigns. In many test repositories, there are tons of error prone test cases which are uncertain since 

  • they haven’t run for a while or due to tacit knowledge 
  • they trigger false positives
  • they hold a lot of tacit knowledge which makes the test “gray” since the result may be white while it is actually black or vice versa, and only directly involved people are aware of this issue

Those tests are usually perceived as valuable but they actually cost money, especially when there is a big functional change in the System Under Test. Updating an error prone test which is seldomly run or has little added value may not be worthy to prioritize and get rid of it; moreover, garbaging useless tests with a 5S, is useful regarding the pesticide paradox [ISTQB 2018] since test cases do not trigger bugs anymore. 

This assertion usually raises some doubt because these tests can still be used as regression tests. Actually, if those tests are simply tagged to highlight the use frequency and the amount of bugs raised, their retirement will become inevitable and obvious. Tagging testing items is a powerful practice, especially when 5S fixes take too much time to be done on the fly. Tags can be used to sort things and notably predefine smoke tests and critical scenarios. Tags can also be involved to define test cases statuses (eg. “draft”, “in qualification”, “ok”, “false positive”, …).

Naturally, to fully address the closing phase, the 5S should not be limited to test cases; but bugs and backlog, scripts, documents, or anything else is most relevant. If you start understanding the 5S approach, you should be able to find 5S opportunities with the imagination and context as limits. Those “obvious” rules find applications in many fields where productivity can be at stake. Though, even if it seems simple, it appears to be hard to sustain because we can experience some context issues. It is then likely that you may face the “Twelve Types of Resistance” to the 5S's  [Hirano 1995]:

  • Resistance #1: “What's the big deal about Organization and Orderliness?" 
  • Resistance #2: “You want me, the president, to be 5S chairman?
  • Resistance #3: "Why clean up when it will soon get dirty again?” 
  • Resistance #4: “Implementing Organization and Orderliness will not boost output”
  • Resistance #5: “Why concern ourselves with such trivial matters?" 
  • Resistance #6: "We already implemented them”
  • Resistance #7: "I know my system's a mess. but I know my way around it " 
  • Resistance #8: "We did the 5S's 20 years ago." 
  • Resistance #9: “5S and improvement stuff is lust for the factory." 
  • Resistance #10: "We're too busy to spend time on Organization and Orderliness." 
  • Resistance #11: “Why should anyone tell me what to do?”
  • Resistance #12: "We don't need the 5S's. We're making money. So let us do our work the way we want to." 

Agilitest’s standpoint on this practice

As a script editor capable of managing test scripts, Agilitest proposes a tagging feature. This is a great support to implement a 5S on the test cases. Moreover, the tool proposes tags to be gathered in groups to enable a bird view on this testing asset.

To go further

© Christophe Moustier - 2021