Getting started with Shell Method (11/19/2005)

One of the analysts at a major customer of mine keeps commenting on the fact that he really likes the checklists, because he can just focus on the current checklist item and ignore everything else. He knows that when he hits a later step, it will probably utilize something he did previously, but he doesn’t have to remember what that future step will require.

This goes back to that cliff climbing analogy in a previous post. The climber just focuses on their current bubble of reality, and ignores the rest. Shell Method was designed to support this because no one can be expected to keep everything in their head just to work on a specific part of the process. So, the key to getting started is getting to the first checklist. To do that, you have to have your infrastructure set up to manage your projects.

Setting up the infrastructure

The infrastructure folder on the repository has all the details for this, but the process boils down to a set of decisions:

  • Will you be using as the process repository? This gives you a full, auditable process definition, background, overview, and guidance documents, review forms and integrated guidance, and full workflow definitions with zero effort, but you’re stuck with the style and format you see. If you’re going to roll your own; see you next year. That’s how long it will take.
  • Which Configuration Management (CM) system will you use? Notice I didn’t say “if…” Download it or buy it, whatever. Get it in house and set it up. Your entire infrastructure (Web servers, file servers, local directories) will be impacted by this decision. Do it once, and spend the time necessary to learn the concepts and integrate the CM system into your file management infrastructure.
  • Will you be using the BOTS example project site or tuning it to your preferred style and hosting it yourself? This is a pretty common approach, since the example site wasn’t set up to be a real showcase of Web design. If you’re using Dreamweaver, the Planning Stage has a Base Project Site all set up using a CSS template. Edit the template to suit your style and you’re done.
  • Which HTML editor will you use? This drives how your sites will be set up and managed, and integrates with your CM tool. Once you have made a choice, integrate it with your CM tool (usually by cloaking cm directories in your sites).
  • Which graphics generation tool(s) will you use? Face it: UML has won the process diagramming standards battle, so make sure your tools provide the right kind of integration. Auditors will be seeing a lot of UML diagrams from now on, so they’ll be more comfortable with UML than other styles. A comfortable auditor is much less of a bother.
  • What will you use for project scheduling and reporting? Get it. Learn the basics.
  • Do you have the full Acrobat? You’ll need it.
  • Is your copy of MS Office up to date? You’ll need that too.

Executing your first project

OK. Now you’re ready to start up with Shell Method. The place to start is with the main documents. Read the PTTQ, the SDLC, the SCMP, and the SQAP. Read them again. Take notes.

The next step is the project planning templates. After they’re in and installed, start up a new project, in which the customer is a little firm known as Highland Office Supply, and you have been contracted to build the first release of their Basic Order Tracking System (BOTS).

Walk through each step in the planning stage checklist, and using the examples found on the BOTS example site, build all the intermediate products required by the checklist just as if you were doing it for a real client. Put the deliverables out on the project Web site. Do the presentations, the review forms, the project schedule, everything. If you have multiple team members, have different people play different roles. This will exercise nearly every part of your infrastructure (often to the breaking point), and point out the fact that you don’t have an identified Quality Assurance Reviewer. Now is the time to identify one. If you’re a solo practitioner, you’ll need to hook up with another solo practitioner and scratch each other’s backs.

Now do the same thing for the rest of the stages, working out the deliverables for the Core Features component and the Customer Management component of BOTS. Keep updating the site as you go.

This will take a while, but it’s a whole lot better than trying out the process for the first time on a real project. It’s embarrassing when you make a mistake and your friends point and laugh, but it doesn’t cost you money or hurt your reputation.