10 Rules of Cleaning Applied to Agile

You keep your house clean - right? If you don't then rest of the article is waste of your time. If you do then you can learn Agile in no time. Have a look!
  1. Repetition makes smoother moves. Implement your product backlog in small iterations.
  2. Work from top to bottom. Dirt follows the laws of gravity just like anything else. When you start at the top and work to the bottom, you won't be constantly re-cleaning surfaces with dirt from above. Some people may debate but if your top doesn't commit to Agile then you will end up doing Agile "But..t". In any case, cleaning bottom may motivate top, hence, keep cleaning.
  3. If what you're doing isn't going to work, then shift to a different cleaner or tool. Inspect and Adapt. You're going to get very good at knowing what tool or product to use without having to throw everything in the book at it. You'll be learning to anticipate what to reach for before you start a task so you won't have to shift.
  4. Keep your tools in impeccable shape. Dull razors scratch-they don't clean. Clogged spray bottles puff up and make funny noises-they don't spray. Unpriortized backlog smells bad. Also, always put your tools back at the right spot. You can't spare the time to fumble around for them. And you can't afford to leave them lying around in alien places for the dog to carry away. You'll quickly get so expert you'll become aggravated if the tool you expected isn't in the right spot when you reach for it.
  5. Pay attention and Self-organize. Almost everything else will fall into place if you do.
  6. Use the right tools. Ah! Here's probably the major timesaver of the bunch. Give your specialized gadgets to your enemies. You need real tools that cut time to shreds. The method depends on you, and soon you'll feel lost without these. What are your right tools - TDD/CI, or lot of documentation?
  7. If it isn't dirty, don't clean it. In other words, if backlog is not the highest priority item then don't work on it. Don't waste your time cleaning what is not required to be cleaned.
  8. Don't rinse or wipe a surface before it's clean. You'll just have to start over. In other words, when you start coding make sure to use TDD and CI other wise you will be manually deploying and testing same thing over and over. Learn to check as you're cleaning by "seeing through" the gunk to the surface below. Then you can tell when it's dislodged and ready to be wiped or rinsed!
  9. Keep track of your time. Remember your sprint length and deliver what you committed. Get a little faster every time.
  10. If there are more than one of you, work as a team. You're what the biologists call a "superorganism." If your partner gets done ten minutes faster, the team gets done ten minutes faster. And that is a wonderful thing. You can't stop being vigilant for one moment about what will speed up or slow down your partner's progress.
  11. Empty the garbage bin regularly! The whole cleaning effort is for naught if all we do is remove dirt from some areas only to pile it up somewhere else in the house. Project teams must recognize when things they do, artifacts they produce no longer contribute value. We don't just have them done by the least expensive resource. We need to factor that practice out completely.  (This is an additional rule suggested by a reader - Julius Sasvari)
Isn't it so true? Feedback is welcomed.

    Related Reading:


    1. I love the cleaning analogy! Great idea.

      My favourite is No.3 If what you're doing isn't going to work, then shift to a different cleaner or tool. Inspect and Adapt. This is an often forgotten principle. Too many times we see that inappropriate tools (processes and methodologies included) are being continually forced onto project that require something else.


    2. Thanks Julius. I can't agree more. Surprisingly, this is one of the most popular article within 2 days. It good to learn reader's interest.