Systems, observation, and motorcycles

Our family spent a bunch of time this weekend cleaning out the garage and taking care of a variety of long neglected household tasks. One thing I’d been meaning to do for over a year now is to get my Ducati up and running again. Between picking kids up (need a car for that), and riding my bike to work most of last summer, it’s probably been 18 months since I started the thing. Keep in mind, that Ducati’s are fickle machines to start with, but I figured I’d work on it for a while before calling someone to load it on a truck and haul it to the shop.

The first thing I did was drain the gas tank. I couldn’t recall if I added fuel stabilizer, but after that long, I can pretty much guarantee that the fuel was bad. I took the bad gas to the hazardous waste site (open on Sunday from 9-5!), picked up some new fuel, headed home, and gassed the Duc up.

I had the battery on a battery tender, but was still slightly surprised that it still had some starting power in it. Unfortunately, the engine just wouldn’t turn over. I double checked the fuel line (clear) and then pulled the spark plugs. The plugs were a little dirty, so I swapped them with a spare set from the toolbox.

Still nothing.

Sitting on the bike, I took a moment to think through how the engine worked. The starter was working, gas was flowing, but the engine wasn’t starting. Fortunately, I have a carbureted engine, and know what all (or most) of the engine workflow. There could still be bad gas still in the system, or there could be a problem with the carburetor. But neither of those seemed likely. I tried starting it one more time, and the engine just wouldn’t kick in.

While thinking through it some more, I noticed that I forgot to reattach one of the spark plug caps. I reattached it and…still nothing.

But – the behavior (i.e. engine sound) was identical with and without the spark plug cap attached – which pretty much guarantees that the spark plugs weren’t firing. I took them out one more time, cleaned them, and this time, checked the gap. For some reason, my spares were gapped really narrow (hint – always check the gap – even on brand new spark plugs selected for your vehicle). I widened the gap a few millimeters to spec, put them in and…

Vroom!

I immediately grabbed my helmet and gloves and went for a spin, and the bike ran great. No stalls, backfires or stutters. It probably still needs some more air in the tires and an oil change, but it sounds and runs just like a Ducati should.

In the end, this was just another debugging and diagnostic problem – much like the problems I face almost every day. The key points to remember are:

  • Know the system, and think about the system. When software (or Ducatis) fail, think through the entire system to note where failures may be occurring
  • Observe what’s going on – Products (and engines) fail for a reason. Chances are that there are unnoticed clues to the behavior you are seeing, so remember that anything you see may be helpful.

Similar Posts

  • Dichotomy for Dummies

    There are many clear examples of dichotomy (mutually exclusive or contradictory categories) in the world. A light switch is on or off. A gun may have fired, or not fired. A software program is running, or it is not running. But many things we deal with are not dichotomous, but continuous. A person can be…

  • Riffing on the Quadrants

    In 2003, Brian Marick introduced the concept of “Agile Quadrants” to describe the scope of testing[1] (later expanded on by Lisa Crispin and Janet Gregory[2]). Several people (including me) have expanded and elaborated on the quadrants to describe the scope and activities of testing. Here’s a version of the testing quadrants. One challenge I’ve seen…

  • Upcoming stuff

    If you’re interested in stalking me, here are some places I’ll be in the coming months. On October 18th, I’ll be talking about code reviews at the Pacific Northwest Software Quality Conference. If you want to catch me there, you better catch me on the 18th, because I’m flying to Toronto on October 19th to…

  • stack exchange, software testing, and learning

    It’s PSA time! It’s no secret that I’m a big fan of what Joel Spolsky and co have done with with the stackoverflow family and stackexchange. The flat (yet easily structured via tags) structure is perfect for discoverability, and the psychological goodness of points, badges and reputation, can’t be beat. Now, if you look at…

  • Being Forward

    I’m happy that my last post generated some discussion. I’m not sure about the rest of the blogosphere, but for some reason I seem to get half or more of the comments privately instead of through the blog comment system. Something I heard from a few people was this comment (anonymity retained). Why don’t you…

4 Comments

  1. You still might be able to use the gas by adding additional fuel stabilizer. I’ve been able to utilize one year old gas for my generator by adding additional fuel stabilizer, even though the stored gas already had some old stabilizer in it.

    But some great points, unless all components of a system work and are operating as they are intended, diagnosis is tough. It takes that special skill of problem diagnosis which few of us have to quickly ascertain problems!

  2. Zen and the Art of Motorcycle Maintenance by Robert M. Pirsig was a great read and inspiration about 20 years ago in the university learning to be an engineer, and lately as a test lead.
    Motorcycles (or cars, or fixing old Radios and electrical appliances) are a great way to learn about system thinking 🙂

  3. Good structural experimentation exploratory problem diagnosis…

    I am investigating an app authentication approach, and to an extent applied the similar method of “process of elimination” of variables to narrow down to figure the configuration issue to most extent and in progress. I hope that concludes my search for this user provisioning scenario 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.