The F-35 Joint Strike Fighter, first conceived in the mid-1990s, is a multi-purpose fighter jet that evades radar and anti-aircraft missiles, can fly at 1,200 mph, and can land vertically. While over 40 planes have been manufactured, the program is way behind schedule and the program’s costs have grown from an initial estimate of $177 billion to over $1 trillion, according to a Wall Street Journal article authored by defense industry analysts Arthur Herman and John Scott.
Herman and Scott say the Department of Defense (DOD) has identified software development (the plane’s systems run to nearly 10 million lines of source code) as one key issue behind the F-35’s problematic history, noting that the software needed for producing the plane won’t be completed until 2017.
Chances are you’re not making fighter jets with 10 million lines of code, but that doesn’t insulate you from one of the biggest mistakes of every software project: the assumptions everyone makes.
The average person assumes:
- Converting to new software is simply a matter of writing or purchasing the right application, installing it and turning it on;
- Everything will go fine as long as you have the right technical people involved;
- What the new software will do for the enterprise can be defined accurately beforehand, and it’s unlikely the new system will not perform as expected;
- The time it takes to implement a new system is predictable, and delays are unlikely
In short, there is a general presumption that the project will succeed. While it’s OK to have that positive outlook, it is more beneficial to be aware that the odds are your project – like many that have gone before – will likely run into problems, and to be well-prepared to deal with those problems.
So what should your assumptions be?
- You can’t manage every detail, so your outlook is big picture; you focus on the few things that drive success and you stay out of the weeds.
- This is a high-risk endeavor best managed by professionals; it can damage the business if not done right
- You are determined to get the ROI or the project isn’t finished.
- Your engagement with the project team is firm but supportive; you insist on structured work, discipline and facts, while doing what is needed to minimize distractions, supply the team with needed resources and eliminate barriers to their success