Special Issue on Technical Debt
Final submissions due: 1 April 2012
Publication date: November/December 2012
Delivering increasingly complex software-reliant systems demands better ways to manage the long-term effects of short-term expedient decisions. The technical debt metaphor is gaining significant traction in the software development community as a way to understand and communicate such issues. The idea is that developers sometimes accept compromises in a system in one dimension (for example, modularity and code quality) to meet an urgent demand in some other dimension (such as a deadline). Such compromises incur a "debt," time spent dealing with the compromised code is considered "interest" that has to be paid, and the cost of building in the originally planned quality is the "principal" that should be repaid at some point for the long-term health of the project.
The concept of technical debt also touches the areas of software evolution, software maintenance, risk management, and cost-value and quality trade-off analysis of software. While technical debt is often equated to poor intrinsic quality of the code base and relates to the notion of "code smells," there is also the idea of technical debt at the structural level, incurred deliberately and managed strategically to help businesses take advantage of time-sensitive opportunities. Some authors include other forms of debt that span the software development life cycle: requirements, architectural, documentation, test, and so on.
IEEE Software seeks submissions for a special issue on technical debt in software development. Possible topics include:
- Definitions, models, or theories behind the concept of technical debt
- Case studies and lessons learned on technical debt in large-scale software development
- Practical guidelines, strategies, and frameworks for evaluating and paying back technical debt
- How to integrate technical debt management with software development practices (e.g., Scrum, architecture analysis, design/code review and documentation, test-driven development, evolution and maintenance)
- Approaches, applications, and tools for visualizing, analyzing, and managing technical debt
- Types of technical debt, taxonomy, symptoms and root causes of technical debt
Manuscripts must not exceed 4,700 words including figures and tables, which count for 200 words each. Submissions in excess of these limits may be rejected without refereeing. The articles we deem within the theme and scope will be peer-reviewed and are subject to editing for magazine style, clarity, organization, and space. We reserve the right to edit the title of all submissions. Be sure to include the name of the theme or special issue you are submitting for.
Articles should have a practical orientation and be written in a style accessible to practitioners. Overly complex, purely research-oriented or theoretical treatments are not appropriate. Articles should be novel. IEEE Software does not republish material published previously in other venues, including other periodicals and formal conference/workshop proceedings, whether previous publication was in print or in electronic form.
Questions?
For more information about the focus, contact the Guest Editors:
- Philippe Kruchten, University of British Columbia, Canada
- Robert L. Nord, Carnegie Mellon University, Software Engineering Institute
- Ipek Ozkaya, Carnegie Mellon University, Software Engineering Institute
For full author guidelines: www.computer.org/software/author.htm
For submission details: software@computer.org