Repository logo
 

Avoiding technical bankruptcy in system development: a process to reduce the risk of accumulating technical debt

dc.contributor.authorKleinwaks, Howard, author
dc.contributor.authorBradley, Thomas, advisor
dc.contributor.authorBatchelor, Ann, advisor
dc.contributor.authorMarzolf, Gregory, committee member
dc.contributor.authorWise, Daniel, committee member
dc.contributor.authorTurner, John F., committee member
dc.date.accessioned2024-01-01T11:25:19Z
dc.date.available2024-01-01T11:25:19Z
dc.date.issued2023
dc.description.abstractThe decisions made early in system development can have profound impacts on later capabilities of the system. In iterative systems development, decisions made in each iteration produce impacts on every future iteration. Decisions that have benefits in the short-term may damage the long-term health of the system. This phenomenon is known as technical debt. If not carefully managed, the buildup of technical debt within a system can lead to technical bankruptcy: the state where the system development can no longer proceed with its lifecycle without first paying back some of the technical debt. Within the schedule constrained development paradigm of iteratively and incrementally developed systems, it is especially important to proactively manage technical debt and to understand the potential long-term implications of decisions made to achieve short-term delivery goals. To enable proactive management of technical debt within systems engineering, it is first necessary to understand the state of the art with respect to the application of technical debt methods and terminology within the field. While the technical debt metaphor is well-known within the software engineering community, it is not as well known within the systems engineering community. Therefore, this research first characterizes the state of technical debt research within systems engineering through a literature review. Next, the prevalence of the technical debt metaphor among practicing systems engineers is established through an empirical survey. Finally, a common ontology for technical debt within systems engineering is proposed to enable clear and concise communication about the common problems faced in different systems engineering development programs. Using the research on technical debt in systems engineering and the ontology, this research develops a proactive approach to managing technical debt in iterative systems development by creating a decision support system called List, Evaluate, Achieve, Procure (LEAP). The LEAP process, when used in conjunction with release planning methods, can identify the potential for technical debt accumulation and eventually technical bankruptcy. The LEAP process is developed in two phases: a qualitative approach to provide initial assessments of the state of the system and a quantitative approach that models the effects of technical debt on system development schedules and the potential for technical bankruptcy based on release planning schedules. Example applications of the LEAP process are provided, consisting of the development of a conceptual problem and real applications of the process at the Space Development Agency. The LEAP process provides a novel and mathematical linkage of the temporal and functional dependencies of system development with the stakeholder needs, enabling proactive assessments of the ability of the system to satisfy those stakeholder needs. These assessments enable early identification of potential technical debt, reducing the risk of negative long-term impacts on the system health.
dc.format.mediumborn digital
dc.format.mediumdoctoral dissertations
dc.identifierKleinwaks_colostate_0053A_18092.pdf
dc.identifier.urihttps://hdl.handle.net/10217/237439
dc.languageEnglish
dc.language.isoeng
dc.publisherColorado State University. Libraries
dc.relation.ispartof2020-
dc.rightsCopyright and other restrictions may apply. User is responsible for compliance with all applicable laws. For information about copyright law, please see https://libguides.colostate.edu/copyright.
dc.subjectlifecycle model
dc.subjectrelease planning
dc.subjecttechnical debt
dc.subjectneed satisfaction
dc.subjectenterprise systems engineering
dc.subjectsystem development
dc.titleAvoiding technical bankruptcy in system development: a process to reduce the risk of accumulating technical debt
dc.typeText
dcterms.rights.dplaThis Item is protected by copyright and/or related rights (https://rightsstatements.org/vocab/InC/1.0/). You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s).
thesis.degree.disciplineSystems Engineering
thesis.degree.grantorColorado State University
thesis.degree.levelDoctoral
thesis.degree.nameDoctor of Engineering (Eng.D.)

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Kleinwaks_colostate_0053A_18092.pdf
Size:
30.36 MB
Format:
Adobe Portable Document Format