Technical Debt

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

资源下载链接为: https://pan.quark.cn/s/5c50e6120579 在Android移动应用开发中,定位功能扮演着极为关键的角色,尤其是在提供导航、本地搜索等服务时,它能够帮助应用获取用户的位置信息。以“baiduGPS.rar”为例,这是一个基于百度地图API实现定位功能的示例项目,旨在展示如何在Android应用中集成百度地图的GPS定位服务。以下是对该技术的详细阐述。 百度地图API简介 百度地图API是由百度提供的一系列开放接口,开发者可以利用这些接口将百度地图的功能集成到自己的应用中,涵盖地图展示、定位、路径规划等多个方面。借助它,开发者能够开发出满足不同业务需求的定制化地图应用。 Android定位方式 Android系统支持多种定位方式,包括GPS(全球定位系统)和网络定位(通过Wi-Fi及移动网络)。开发者可以根据应用的具体需求选择合适的定位方法。在本示例中,主要采用GPS实现高精度定位。 权限声明 在Android应用中使用定位功能前,必须在Manifest.xml文件中声明相关权限。例如,添加<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />,以获取用户的精确位置信息。 百度地图SDK初始化 集成百度地图API时,需要在应用启动时初始化地图SDK。通常在Application类或Activity的onCreate()方法中调用BMapManager.init(),并设置回调监听器以处理初始化结果。 MapView的创建 在布局文件中添加MapView组件,它是地图显示的基础。通过设置其属性(如mapType、zoomLevel等),可以控制地图的显示效果。 定位服务的管理 使用百度地图API的LocationClient类来管理定位服务
技术债务管理的未来将变得更加重要和挑战性。随着技术的迅速发展和应用的广泛,技术债务已成为许多组织面临的现实问题。未来,管理技术债务将需要针对不同组织和行业的需求,采用更加灵活和定制化的方法。 一方面,技术债务管理将需要更加全面和系统化的方法。这将包括更多的自动化和工具支持,以加快识别和解决潜在的技术债务问题。自动化测试、持续集成和部署等工具和方法将发挥更重要的作用,帮助追踪和管理技术债务的积累。 另一方面,技术债务管理也需要与业务目标和战略紧密结合。更进一步,技术债务管理需要成为组织文化的一部分,得到高层管理层的积极支持和推动。这将需要跨部门的合作和协同,以确保技术债务管理的有效实施和持续改进。 未来,技术债务管理还将越来越强调长期规划和预见性。随着技术的不断演进,现有技术的更新和替代周期可能会进一步缩短。因此,组织需要提前规划技术转型和升级,以减少技术债务的积累和影响。 最后,技术债务管理还将受到数据驱动决策的影响。随着大数据和人工智能的快速发展,组织将能够更好地收集、分析和理解技术债务的数据。这将有助于更准确地评估和衡量技术债务的成本和风险,从而制定更有效的管理策略。 总而言之,未来的技术债务管理将面临更大的挑战和机遇。通过采用全面系统化的方法、与业务目标紧密结合、长期规划和预见性以及数据驱动决策,组织将能够更好地管理和减少技术债务,保持技术的持续创新和竞争力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值