1,923 research outputs found

    An analysis of techniques and methods for technical debt management: a reflection from the architecture perspective

    Full text link
    Technical debt is a metaphor referring to the consequences of weak software development. Managing technical debt is necessary in order to keep it under control, and several techniques have been developed with the goal of accomplishing this. However, available techniques have grown disperse and managers lack guidance. This paper covers this gap by providing a systematic mapping of available techniques and methods for technical debt management, covering architectural debt, and identifying existing gaps that prevent to manage technical debt efficiently

    Technical Debt Decision-Making Framework

    Get PDF
    Software development companies strive to produce high-quality software. In commercial software development environments, due to resource and time constraints, software is often developed hastily which gives rise to technical debt. Technical debt refers to the consequences of taking shortcuts when developing software. These consequences include making the system difficult to maintain and defect prone. Technical debt can have financial consequences and impede feature enhancements. Identifying technical debt and deciding which debt to address is challenging given resource constraints. Project managers must decide which debt has the highest priority and is most critical to the project. This decision-making process is not standardized and sometimes differs from project to project. My research goal is to develop a framework that project managers can use in their decision-making process to prioritize technical debt based on its potential impact. To achieve this goal, we survey software practitioners, conduct literature reviews, and mine software repositories for historical data to build a framework to model the technical debt decision-making process and inform practitioners of the most critical debt items

    Technical Debt Decision-Making Framework

    Get PDF
    Software development companies strive to produce high-quality software. In commercial software development environments, due to resource and time constraints, software is often developed hastily which gives rise to technical debt. Technical debt refers to the consequences of taking shortcuts when developing software. These consequences include making the system difficult to maintain and defect prone. Technical debt can have financial consequences and impede feature enhancements. Identifying technical debt and deciding which debt to address is challenging given resource constraints. Project managers must decide which debt has the highest priority and is most critical to the project. This decision-making process is not standardized and sometimes differs from project to project. My research goal is to develop a framework that project managers can use in their decision-making process to prioritize technical debt based on its potential impact. To achieve this goal, we survey software practitioners, conduct literature reviews, and mine software repositories for historical data to build a framework to model the technical debt decision-making process and inform practitioners of the most critical debt items

    Grand Challenges of Traceability: The Next Ten Years

    Full text link
    In 2007, the software and systems traceability community met at the first Natural Bridge symposium on the Grand Challenges of Traceability to establish and address research goals for achieving effective, trustworthy, and ubiquitous traceability. Ten years later, in 2017, the community came together to evaluate a decade of progress towards achieving these goals. These proceedings document some of that progress. They include a series of short position papers, representing current work in the community organized across four process axes of traceability practice. The sessions covered topics from Trace Strategizing, Trace Link Creation and Evolution, Trace Link Usage, real-world applications of Traceability, and Traceability Datasets and benchmarks. Two breakout groups focused on the importance of creating and sharing traceability datasets within the research community, and discussed challenges related to the adoption of tracing techniques in industrial practice. Members of the research community are engaged in many active, ongoing, and impactful research projects. Our hope is that ten years from now we will be able to look back at a productive decade of research and claim that we have achieved the overarching Grand Challenge of Traceability, which seeks for traceability to be always present, built into the engineering process, and for it to have "effectively disappeared without a trace". We hope that others will see the potential that traceability has for empowering software and systems engineers to develop higher-quality products at increasing levels of complexity and scale, and that they will join the active community of Software and Systems traceability researchers as we move forward into the next decade of research

    Grand Challenges of Traceability: The Next Ten Years

    Full text link
    In 2007, the software and systems traceability community met at the first Natural Bridge symposium on the Grand Challenges of Traceability to establish and address research goals for achieving effective, trustworthy, and ubiquitous traceability. Ten years later, in 2017, the community came together to evaluate a decade of progress towards achieving these goals. These proceedings document some of that progress. They include a series of short position papers, representing current work in the community organized across four process axes of traceability practice. The sessions covered topics from Trace Strategizing, Trace Link Creation and Evolution, Trace Link Usage, real-world applications of Traceability, and Traceability Datasets and benchmarks. Two breakout groups focused on the importance of creating and sharing traceability datasets within the research community, and discussed challenges related to the adoption of tracing techniques in industrial practice. Members of the research community are engaged in many active, ongoing, and impactful research projects. Our hope is that ten years from now we will be able to look back at a productive decade of research and claim that we have achieved the overarching Grand Challenge of Traceability, which seeks for traceability to be always present, built into the engineering process, and for it to have "effectively disappeared without a trace". We hope that others will see the potential that traceability has for empowering software and systems engineers to develop higher-quality products at increasing levels of complexity and scale, and that they will join the active community of Software and Systems traceability researchers as we move forward into the next decade of research

    Hitting the Bullseye: The Influence of Technical Debt on the Accuracy of Effort Estimation in Agile Projects

    Get PDF
    As firms rapidly develop solutions in order to increase revenue and market share, software development decisions considered to be temporary shortcuts and/or compromises may be implemented. These shortcuts represent “technical debt,” a metaphor which succinctly describes a software solution that should be “paid in full” or remediated in the future. Software architects and developers intend to resolve the “debt” in future product releases, but practitioners recognize that the challenge of always innovating may indefinitely postpone this remediation effort. Further, the accumulation of technical debt may have long term impact on the product’s maintainability by the software development teams and, consequently, impact the effort estimate delivered to management for forecasting product delivery timelines and product revenue expectations. While there are multiple publications that have studied effort estimation in traditional and agile software development strategies, there is limited research which considers technical debt during the estimation effort. As a result, the purpose of this dissertation is to design and propose a research model intended to determine whether or not the consideration of technical debt during the effort estimation process will improve the accuracy of the effort estimate in an agile project

    Exploring Organizations\u27 Software Quality Assurance Strategies

    Get PDF
    Poor software quality leads to lost profits and even loss of life. U.S. organizations lose billions of dollars annually because of poor software quality. The purpose of this multiple case study was to explore the strategies that quality assurance (QA) leaders in small software development organizations used for successful software quality assurance (SQA) processes. A case study provided the best research design to allow for the exploration of organizational and managerial processes. The target population group was the QA leaders of 3 small software development organizations who successfully implemented SQA processes, located in Saint John, New Brunswick, Canada. The conceptual framework that grounded this study was total quality management (TQM) established by Deming in 1980. Face-to-face semistructured interviews with 2 QA leaders from each organization and documentation including process and training materials provided all the data for analysis. NVivo software aided a qualitative analysis of all collected data using a process of disassembling the data into common codes, reassembling the data into themes, interpreting the meaning, and concluding the data. The resulting major themes were Agile practices, documentation, testing, and lost profits. The results were in contrast to the main themes discovered in the literature review, although there was some overlap. The implications for positive social change include the potential to provide QA leaders with the strategies to improve SQA processes, thereby allowing for improved profits, contributing to the organizations\u27 longevity in business, and strengthening the local economy

    A Case Study Exploring Organizational Development and Performance Management in the Operational Infrastructure of a Professional Working Organization, Using Academic Constructs

    Get PDF
    Curriculum, as a concept, has been historically associated with traditional schooling, but the reality is that its application extends to many arenas beyond academia. Through the case study lens, this dissertation utilized the ideologies of curricular theorists John Dewey, John Franklin Bobbitt, and Ralph Tyler to explore how intended, enacted, and assessed curricula phases can integrate into a professional working organization’s comprehensive functionality and materialize into the planning and implementation of its operational infrastructure. Following content analysis of a selected institution’s operational system, using closed codes, a descriptive comprehensive curriculum was designed to address the research purpose of understanding employee performance and organizational outcomes. Findings indicated that curricular phases are inherently embedded into the organizational development and performance management of nonacademic spaces; moreover, the framework of an organization’s operational infrastructure consists largely of curriculum elements. The primary research implication invokes being able to manage the efficiency and effectiveness levels of (a) personnel unit performance and (b) the workplace environment, through curriculum analysis and prescription

    Leveraging Evolutionary Changes for Software Process Quality

    Full text link
    Real-world software applications must constantly evolve to remain relevant. This evolution occurs when developing new applications or adapting existing ones to meet new requirements, make corrections, or incorporate future functionality. Traditional methods of software quality control involve software quality models and continuous code inspection tools. These measures focus on directly assessing the quality of the software. However, there is a strong correlation and causation between the quality of the development process and the resulting software product. Therefore, improving the development process indirectly improves the software product, too. To achieve this, effective learning from past processes is necessary, often embraced through post mortem organizational learning. While qualitative evaluation of large artifacts is common, smaller quantitative changes captured by application lifecycle management are often overlooked. In addition to software metrics, these smaller changes can reveal complex phenomena related to project culture and management. Leveraging these changes can help detect and address such complex issues. Software evolution was previously measured by the size of changes, but the lack of consensus on a reliable and versatile quantification method prevents its use as a dependable metric. Different size classifications fail to reliably describe the nature of evolution. While application lifecycle management data is rich, identifying which artifacts can model detrimental managerial practices remains uncertain. Approaches such as simulation modeling, discrete events simulation, or Bayesian networks have only limited ability to exploit continuous-time process models of such phenomena. Even worse, the accessibility and mechanistic insight into such gray- or black-box models are typically very low. To address these challenges, we suggest leveraging objectively [...]Comment: Ph.D. Thesis without appended papers, 102 page
    corecore