In 2008, the United States (US) Department of Defense (DoD) had over 295 billion dollars of cost overruns on defense programs (Hedgpath, 2008). The Government Accountability Office (GAO) identified the following four reasons for those overruns: Programs are started with poor foundations and inadequate knowledge for developing realistic cost estimates, programs move forward with low cost estimates, optimistic schedules, and immature technologies, designs and requirements, changing or excessive requirements, and imbalance between wants and needs contributes to budget and program instability (GAO, 2009). One of the techniques employed by the US DoD to reduce the risks associated with cost overruns is the reuse and modernization of legacy systems, a growing trend given the increasing focus on affordability initiatives.
Current research in the reuse of legacy systems tends to focus on frameworks and software tools that may aid in the application of reuse, leaving a knowledge gap regarding the overall effect of such reuse on DoD program efficacy. Research on frameworks such as software lifecycles (Ahrens & Prywes, 1995), models and metrics (Frakes & Terry, 1996), object architecture (Jurre, Bozman, Hericko & Domainko, 2000), and the Constructive Systems Engineering Cost Model (COSYSMO) (Wang, Valerdi & Fortune, 2010) lend well to integrating the technique of reuse into programs. Similarly, research on software tools focus on encapsulating legacy applications (Butkus & Mitchell, 1998), component technologies (Hull, Nicholl & Bi, 2001, migration of test systems (Gutterman, 2005), language based prototyping (Landis, Guddeti, Hulina & Coraor, 1999) and replacing computers and code (Luke, Bittorie, Cannon & Haldeman, 1999), which assist systems and software engineers in efficiently incorporating legacy systems into upgraded solutions. Despite the advances made over the last twenty years and the increased leveraging of reuse in the solution space, cost overruns continue to escalate. Clearly the reuse of legacy systems carries complications that require further research before any associated cost savings can be ascertained as realistic or not.
By broadening our view to consider the implications of the reuse of legacy systems on a DoD program, we may begin to understand other areas for improvement, best practices used in industry and more advanced frameworks and software tools. This research examines multiple large scale US DoD contracts where the reuse of legacy DoD systems and code was mandated. On each contract, a thorough examination of the systems engineering practices, processes, frameworks and tools are explored and the overall effect of legacy system reuse on the cost of the contract is evaluated.
The result of this research is intended to provide the necessary investigation of the overarching effect that legacy system reuse has on a program, as well as whether or not it is efficient to utilize legacy systems as a standard approach to achieving affordability. With this basis, further research in the reuse of legacy systems will be better understood, thus allowing researchers to build tools, processes and frameworks that better represent and solve the problems that US DoD programs increasingly face.
Ahrens, J. D., & Prywes, N. S. (1995). Transistion to a legacy- and reuse-based software life cycle. Computer, 28 (10), 27-36. doi: 10.1109/2.467576
Butkus, A., Mitchell, B. L. (1998). A framework for encapsulating card-oriented, interactive, legacy applications. SIGSOFT Software Engineering Notes, 23 (1), 44-46.
Frakes, W., & Terry, C. (1996). Software reuse: Metrics and models. Computing Surveys (CSUR), 28 (2), 415-435.
Government Accountability Office. (2009). Defense acquisitions assessments of selected weapon programs (GAO-09-326SP). Washington, DC: US Government Printing Office.
Gutterman, L. (2005). Integrating VISA, IVI and ATEasy to migrate legacy test systems. IEEE Aerospace and Electronic Systems Magazine, 20 (6), 36-38. doi: 10.1109/MAES.2005.1453810
Hedgpeth, D. (2008, April 1). GAO blasts weapons budget. The Washington Post. Retrieved from http://www.washingtonpost.com/wp-dyn/content/article/2008/03/31/AR2008033102789.htm
Hull, M. E. C., Nicholl, P. N., & Bi, Y. (2001). Approaches to component technologies for software reuse of legacy systems. Computing and Control Engineering Journal, 12 (6), 281-287. doi: 10.1049/ccej:20010605
Jha, M., & Maheshwari, P. (2005). Proceedings from: 13th IEEE International Workshop of Software Technology and Engineering practice. doi: 10.1109/STEP.2005.21
Juric, M. B., Rozman, I., Hericko, M., & Domajnko, T. (2000). Integrating legacy systems in distributed object architecture. SIGSOFT Software Engineering Notes, 25 (2), 35-39.
Landis, D., Guddeti, P., Hulina, P., & Coraor, L. (1999). Proceedings from: IEEE International Workshop on Rapid System Prototyping. doi: 10.1109/IWRSP.1999.779031
Luke, J., Bittorie, J. W., Cannon, W. J., & Haldeman, D. G. (1999). Replacement strategy for aging avionics computers. IEEE Aerospace and Electronic Systems Magazine, 14 (3), 7-11. doi: 10.1109/62.750422
Wang, G., Valerdi, R., & Fortune, J. (2010). Reuse in systems engineering. IEEE Systems Journal, 4 (3), 376-384. doi: 10.1109/JSYST.2010.2051748