Technical Debt
来源:互联网 发布:明天教室网络课好吗 编辑:程序博客网 时间:2024/06/05 17:41
http://danube.com/system/files/WP_Technical_Debt.pdf
Expectations at the start of a project
Reality has a way of making its presense known
Pressure is placed on the project team to be more efficient
The difference between what was delivered and what should have been delivered is known as technical debt.
Cruft on Cruft
Cruft (n):
1. An unpleasant substance. The dust that gathers
under your bed is cruft; the TMRC Dictionary correctly noted that attacking it with a broom only produces more.
2. The results of shoddy construction.
Legacy System (n):
A computer system or application program which continues to be used because of the cost of replacing or redesigning it and often despite its poor competitiveness and compatibility with modern equivalents. The implication is that the system is large, monolithic, and difficult to modify.
If legacy software only runs on antiquated hardware, the cost of maintaining this may eventually outweigh the cost of replacing both the software and hardware unless some form of emulation or backward compatibility allows the software to run on new hardware.
(Free On-line Dictionary of Computing, www.foldoc.org)
As a developer, nothing was more challenging and frustrating than to be added to a project late in its development. Working with code afflicted by technical debt made me feel like an archaeologist trying to clean up an artifact that will crumble unless I work slowly and cautiously.
Even if a manager has difficulty recognizing the value of repaying debt each Sprint, he or she could hardly argue against the potential cost of rewriting a legacy system from scratch.
Large amounts of technical debt must be made visible as first class Product Backlog Items, to be split many times and prioritized along with the business stories. If stakeholders can’t see why they should be concerned, it is doubtful they will want to allocate a team’s effort toward an activity that does not visibly move a project forward.
How to Survive Technical Debt
The only way to ensure that developers - and organizations
- do not find themselves in a similar situation is to incrementally add automated tests. Not only does this increase velocity, it also reduces risk by preventing
developers from “flying blindly” as they make changes to the code base. While it’s unlikely that an organization can afford - in terms of time or money - to implement all of these tests at once, an organization
should prioritize the test coverage to cover areas where it is most needed and incrementally add more tests as more business functionality is introduced
PS:
If can not see the picture, please see how to access picasa at:
http://blog.fufuok.com/Article/google-picasa-hosts.aspx
- Technical Debt
- Technical Debt Quadrant
- Pay Down Your Technical Debt
- How To Fix Your Software’s Technical Debt, Program Faster, and Spend More of Your Time Writing Usefu
- debt ratio
- Funded Debt
- 暂停偿债 debt standstill
- Debt Collection外部接口
- Second Lien Debt
- Debt Consolidation(Loan)
- sgu-257 Debt
- sgu257:Debt(乱搞)
- debt,debit,credit区别
- coci2011 debt 还债
- 有抵押债务Secured debt
- SGU 257 Debt 贪心 + 模拟
- 364. Promise is debt. 一诺千金
- 364. Promise is debt. 一诺千金
- HTML元素map
- 英语面试
- Windows Mobile 发送短信
- 设计模式笔记(21)---备忘录模式(行为型)
- HTML元素map实例
- Technical Debt
- 80后的我们
- 期待已久的Apple Tablet PC - iPad 发布了
- 外连接的语法
- Windows Mobile SMS发送操作代码
- 修改Google桌面搜索索引位置
- 引用 4款在线图片压缩工具
- NetBeans 时事通讯(刊号 # 89 - Jan 28, 2010)
- CICS Command