Wilkes Elementary School, Or What Not to do in Software Development
Bainbridge Island, Washington, the local community where both Elisabeth and I live, decided to replace one of its historic elementary schools with a new multi-million dollar facility. In what would be called “an aggressive schedule” in the software biz, the school would be largely built over the summer, with the crew literally knocking down the old school while building the new one. Some parents, obviously skeptical of such a schedule, were told by the developer “we’ve never missed a date.” Hmmm, another phrase I’ve heard in the software industry a fair number of times.
So yesterday, 48 hours from the school opening, the developer still claimed things would open on time. What do you think, looking at the picture below?
And as expected, today, an admission that things are not where they should be:
Wilkes Opening Delayed
The opening of the new Wilkes Elementary
School will now be delayed until Tuesday,
September 4. While many may have wondered
whether the school would open on time,
the district had received numerous assurances
from the project contractors, as recently as
yesterday morning, that all would be
So, what happened to change the timeline?
While the building itself was prepared for
occupancy, the district learned yesterday
evening that their safety requirements for
the site (e.g. perimeter fencing, playground
preparation, etc.) were probably not going
to be met in time to open school tomorrow
morning. After intensive discussion with
consultants and the contractor, the decision
to delay the start of school at Wilkes was made.
Student safety was the top priority.
What are the ramifications of a three-day delay?
Washington State requires 180 days of school,
so these days will be reclaimed by changing three of
the Wilkes full-day parent conferences to half-days.
On October 4th, October 5th and March 21st, Wilkes
will hold school for half the day and conduct parent
conferences for the remainder of the day.
But, for anyone who has experience with software development, the warning signs were all there:
(1) Reduced Feature Set: Over the weekend, instead of a nice new parking lot, gravel was rolled in and parking spaces were literally painted on the gravel. We’d call that a lack of a feature the school was supposed to ship with. Not a good sign. In addition, obviously there is going to be no landscaping ready, and the playground mentioned above does not appear to even exist (at least, it’s not visible from any nearby streets).
(2) Just Add More Engineers: Software developers usually understand the mythical man month is in play when taking desperate measures to finish a product on time. The mythical man month means that just by throwing more engineers at the problem you don’t reduce the time of the development. In fact, you can often make things worse because of the increased complexity. Perhaps in construction this isn’t as much of an issue as it is in software, but, when you see it happen (by large numbers of construction workers appearing on the scene in the last weeks of the project) you know things aren’t where they should be.
(3) Just Phase the Rollout: Until a few days ago a sign on the site stated “Completion on Aug 29th”. Today that has been replaced by not one, but two signs:
So, by phasing the project we can still ship a product (the school) and yet still have time to get things done. Unfortunately the Phase I date is already going to be missed, what can that mean for Phase II? The other issue is, when we replace a piece of software, we can often leave the original software in place until the new version is ready for rollout. Here, the school district choose to shutdown the old product, hoping the new version would be ready on time. Now what?
(4) Unrealistic Schedules: Finally, consider the project estimation going on here: 48 hours from opening the developers thought they could complete the project. However, 24 hours before completion they’ve added an entire week of development time. What is the real confidence in these future estimates?
So, does this project just need a little bit more time to complete? Or, do estimates remain overly optimistic? Or are we on a death march? It’s hard to say. For the sake of the parents and students, hopefully the former. Note that, while we’ve focused on a brick&mortar project here, this same lack of delivery is happening everyday in software development. In fact, it’s more the rule than the exception. In addition, always own up to your delays as a developer. As a developer, saying, as this update above does, that this is a “three day delay” when in fact school will start a whole week later just hurts your credibility for future deliveries, and as developers we need that credibility for future projects.
With all due respect to the Wilkes development project, we’ve made some assumptions about the project for illustration purposes in this article. But at the end of the day, they missed their date, and that’s too bad after they said they’d hit it (only 48 hours ago).
P.S. We’ll keep you updated in the comments of this article. Stay tuned.