October 1, 2009

The Winchester Mystery House and Legacy Software

Software Maintenance Blog
William A Clements

The Winchester Mystery House[1] and Legacy Software



“The Winchester Mystery House is a well-known California mansion that was under construction continuously for 38 years, and is reported to be haunted. It once was the personal residence of Sarah Winchester, the widow of gun magnate William Wirt Winchester, but is now a tourist attraction. Under Winchester's day-to-day guidance, its "from-the-ground-up" construction proceeded around-the-clock, without interruption, from 1884 until her death on September 5, 1922, at which time work immediately ceased.[2] The cost for such constant building has been estimated at about US $5.5 million[3] (if paid in 1922, this would be equivalent to almost $70 million in 2008 dollars).[4]
Figure 2: Aerial View


The mansion is renowned for its size and utter lack of any master building plan. According to popular belief, Winchester thought the house was haunted by the ghosts of individuals killed by Winchester rifles, and that only continuous construction would appease them. It is located at 525 South Winchester Blvd. in San Jose, California. […]
Figure 3: Stairs to Ceiling


There are about 160 rooms, including 40 bedrooms and two ballrooms, one completed and one under construction. The house also has 47 fireplaces, 10,000 window panes, 17 chimneys (with evidence of two others), two basements and three elevators. ”[5]
Some of the most interesting part of the house, is there are staircases that lead to the ceiling, doors that open to walls, or worse, to the outside three stories up.

“What the $#!^? This code doesn’t go anywhere!”
Legacy Code with out a master plan in software maintenance will eventually end up in much like the Winchester House. Without careful management of the four categories of maintenance (Corrective, Adaptive, Perfective, Preventive), the code could easily have areas that doesn’t lead to anywhere. For example, adding new functionality, without removing or replacing old functionality from the code. If not all the t’s are crossed, and i's dotted, and all the piece removed, legacy code can be come blotted, and unworkable.


[1] http://www.winchestermysteryhouse.com/
[2] A Mystery House, Frommer's San Jose, retrieved Oct. 30, 2006.
[3] Amazing Facts, Winchester Mystery House, retrieved Nov. 7, 2007
[4] CPI Inflation Calculator, Bureau of Labor Statistics, retrieved Nov. 19, 2007
[5] http://en.wikipedia.org/wiki/Winchester_Mystery_House

No comments: