Program evolution: processes of software change
Program evolution: processes of software change
The WyCash portfolio management system
OOPSLA '92 Addendum to the proceedings on Object-oriented programming systems, languages, and applications (Addendum)
ICSE '94 Proceedings of the 16th international conference on Software engineering
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
CCFinder: a multilinguistic token-based code clone detection system for large scale source code
IEEE Transactions on Software Engineering
Agile Estimating and Planning
On the Effectiveness of the Test-First Approach to Programming
IEEE Transactions on Software Engineering
Value-Based Software Engineering
Value-Based Software Engineering
Future of Scrum: Parallel Pipelining of Sprints in Complex Projects
ADC '05 Proceedings of the Agile Development Conference
Scaling Software Agility: Best Practices for Large Enterprises (The Agile Software Development Series)
Clean Code: A Handbook of Agile Software Craftsmanship
Clean Code: A Handbook of Agile Software Craftsmanship
Discovering and representing systematic code changes
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Achieving Agility through Architecture Visibility
QoSA '09 Proceedings of the 5th International Conference on the Quality of Software Architectures: Architectures for Adaptive Software Systems
A design perspective on modularity
Proceedings of the tenth international conference on Aspect-oriented software development
An empirical model of technical debt and interest
Proceedings of the 2nd Workshop on Managing Technical Debt
Investigating the impact of design debt on software quality
Proceedings of the 2nd Workshop on Managing Technical Debt
An enterprise perspective on technical debt
Proceedings of the 2nd Workshop on Managing Technical Debt
Prioritizing design debt investment opportunities
Proceedings of the 2nd Workshop on Managing Technical Debt
Second international workshop on managing technical debt (MTD 2011)
Proceedings of the 33rd International Conference on Software Engineering
ACM SIGSOFT Software Engineering Notes
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Using automatic static analysis to identify technical debt
Proceedings of the 34th International Conference on Software Engineering
ACM SIGSOFT Software Engineering Notes
A lean and mean strategy for migration to services
Proceedings of the WICSA/ECSA 2012 Companion Volume
Managing technical debt in practice: an industrial report
Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement
A multiple case study of design pattern decay, grime, and rot in evolving software systems
Software Quality Control
A case study on effectively identifying technical debt
Proceedings of the 17th International Conference on Evaluation and Assessment in Software Engineering
A formal approach to technical debt decision making
Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures
4th international workshop on managing technical debt (MTD 2013)
Proceedings of the 2013 International Conference on Software Engineering
ACM SIGSOFT Software Engineering Notes
ACM SIGSOFT Software Engineering Notes
Economics-Driven Approach for Managing Technical Debt in Cloud-Based Architectures
UCC '13 Proceedings of the 2013 IEEE/ACM 6th International Conference on Utility and Cloud Computing
Hi-index | 0.00 |
Delivering increasingly complex software-reliant systems demands better ways to manage the long-term effects of short-term expedients. The technical debt metaphor is gaining significant traction in the agile 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 (e.g., modularity) to meet an urgent demand in some other dimension (e.g., a deadline), and that such compromises incur a "debt": on which "interest" has to be paid and which the "principal" should be repaid at some point for the long-term health of the project. We argue that the software engineering research community has an opportunity to study and improve this concept. We can offer software engineers a foundation for managing such trade-offs based on models of their economic impacts. Therefore, we propose managing technical debt as a part of the future research agenda for the software engineering field.