Earlier this year, the Defense Innovation Board- a national group of leading technologists including Eric Schmidt and California Institute of Technology professor Richard Murray - put out a list of recommendations to improve how the Department of Defense creates software.
For example, consider their recommendation that “all software procurement programs should start small, be iterative, and build on success ‒ or be terminated quickly.” Spot on. Success comes from quicky testing your hypothesis (e.g. will this tool solve this real problem?) and then being honest and brave enough to reject or modify your pet ideas. This is a tough change, but once you get used to hearing real, actionable feedback, it’s thrilling and liberating too.
There is broad agreement regarding the urgency of this problem. The GAO found that four of the oldest IT systems in the federal government are housed within national security agencies. Our nuclear arsenals are run with 8-inch floppy disks. An entire generation of experts who maintain our COBOL systems will be retiring in the next decade.
These are some of the more dramatic data points, but get a little closer to day-to-day operations, and it becomes clear that the urgency is even more widespread. The efficiency and reliability of software can make all the difference in getting supplies and material to our troops and allies when and where they need them; in helping find and stop the bad actors; in ensuring veterans to get the health care they have more than earned.
Every dollar spent “just making old software work the way it’s supposed to” is another dollar NOT spent on building the future, rising to the next opportunity, to guarding against the next threat. Simply put, more software maintenance means less mission.
The need is long-standing. That makes this moment different is that the opportunity to do something about it has changed.
The rise of big data - storing, accessing and analyzing large datasets combined with state of the art machine learning science, means that we are on the cusp of modernizing how software maintenance happens. Technology leadership will finally have access to the kinds of insight into problems, solutions, and process that their peers in other professions have enjoyed for years.
Today’s technologies like Sema’s can help agencies:
- Understand the state of their code over time - both big picture and the details.
- Build a “maintenance roadmap” to improve an existing code base quickly
- Set quality goals and other metrics, then track progress over time.
- Avoid big surprises at the end thanks to ongoing “situational awareness.”
- Know what development teams are working on, and how well it’s going, and whether code “hot spots” are trending up or down.
Thank you, DIB for leading the way on what needs to be done. Here’s to an extraordinary decade ahead to reshape how we fix and maintain code.