Dry Run Backup

(A PreventativeAction project management pattern.)

Pattern Name: Dry Run the Backup Procedure

Problem: Lost or corrupted files can temporarily destabilize a project.

Context: You are leading a software development project. Project members may be distributed across a local-area or wide-area network. There may (good) or may not (not good) be centralized source-code control. You are concerned about the risk to project stability of lost or corrupted files.

Forces:

Partial Solution: Before a real disaster strikes, simulate one. Obtain a copy of the organizational back-up plan. (If there isn't one, you may find yourself assigned the task of creating one, so phrase the request carefully.) Compare the plan against your project's requirements, and look for holes.

Next, arrange for someone else on the project to "lose" several critical files that have been backed up; one from the day before, and one from a previous week. Either the files can be retrieved in a timely manner (leading to greater comfort on the part of team members), or they can't, and you've provided the organization with an opportunity for process improvement.

Resulting Context:

See also: CarsBreakSittingInTheGarage

-- DaveSmith 11/1/95

Half the projects I've worked on over the past 10 years have had to rediscover this the hard way.


This reminds me of the story AlwaysUseScratchMonkeys. (I think that is the name.)

The lesson is similar to DryRunBackup but it involves the death of a monkey! 8^(

-Patrick Logan


I've filled in the reference above but I'd say it's really a separate pattern altogether. Perhaps DontTestInProduction??

-BlakeCoverett


I'm embarrassed to now say that this pattern applies to home computers, as well. It's easy to get lulled into a false sense of security by a shiny new home Pentium, only to have that go out the window when the hard drive starts making "running out of oil" sounds. Moving parts do fail. And tape backup is fairly inexpensive these days. At the low end, 200 USD can buy an 800Mb Travan tape drive and a tape.

For me, this was a case of "if I don't think about it, it won't happen, and I won't have to think through the mess of recovering onto a new drive." Sigh.

-- DaveSmith (8/27/96)

...and nowadays, you should be able to get hold of a dvd burner and some media for 200 USD... and what new computer doesn't come with at least a cd burner nowadays?


Dare I suggest that there's no excuse for not using a centralized CM system these days? CVS (http://www.cyclic.com) is free, runs on everything, works wide-area, encourages concurrent work, scales (largest project I've heard of using CVS involves 22,000 source files - 2 Gig of source) and is a nice SimpleTool as well. Combine that with a cron job to backup your repository and fear not.

Of course DryRunBackup might be useful as a stress test anyway. But perhaps there's a more realistic test to do?

--PeterMerel

Who setup the cron job, and where is the backup going? Can you get it back? If it's going onto tape, is there a schedule by which the tapes goes offsite? The point is to avoid taking the vague assurance that things are O.K. at face value, and confirm that the net is in place before take your team across the highwire.

UnstableBackups is another reason to do a dry run. --DaveSmith


EditText of this page (last edited June 29, 2004) or FindPage with title or text search