实施BI系统中的技术债务示例

BI系统的开发和部署是一个相当快速且便宜的过程,但是随着时间的推移它们的维护成本很高。这可以通过技术债务的隐喻来想象。

技术债务-表示程序代码或体系结构中累积的问题,这些问题与软件开发中的质量忽略有关,并在将来导致额外的人工成本。

承担技术债务通常有合理的战略原因。并非所有债务都是坏账,但所有债务都需要还本付息。可以通过重构代码,改进测试,删除无效代码,减少依赖关系,加强API以及改进文档来支付技术债务。目标不是添加新功能,而是使将来的改进成为可能,减少错误并提高可维护性。推迟支付这些款项会导致复杂的费用。隐性债务很危险,因为它会默默地增加。

BI中的技术债务示例:

  • BI项目中有一个数据仓库,但实际上它是工作数据库的副本。结果,丢失了诸如数据刷新率之类的存储益处,并且可能丢失或破坏数据。
  • 加载和更新数据(ETL)时,不会检查/更正数据。错误被传送到应用程序。
  • 非最佳字段和变量名称使将来难以编辑和使用该应用程序。
  • 最初未正确选择应用程序的模型/数据结构会导致在操作和修改应用程序时出现问题。
  • BI经理承受着压力,承诺在某个日期之前完成项目,该日期更多地是由相关方的期望而不是团队资源或评估(如果有)确定。而且要么没有发生,要么项目质量很差。
  • 每个BI项目都是其自己的用户需求和方法孤岛。没有集中的BI策略。例如,由于缺乏统一性,更改不同的应用程序需要花费更多时间。
  • 没有定义在项目上工作的人的具体角色及其交互(交流)的方法。
  • 管理员没有及时更新BI软件版本,因此可能会发生错误,或者可能重现供应商已修复的某些错误。

图片
不幸的是,仅对此有所了解并不能提供任何管理指标。如何衡量系统中的技术债务或估算该债务的总价值?团队仍在工作的事实并不表明债务水平低,因为债务的全部价值只有随着时间的推移才会显现出来。

需要考虑的一些有用的问题:

  1. 全面测试用于计算指标的全新算法有多容易?
  2. 如何精确测量系统中新变化的影响?
  3. 新团队成员多快能掌握最新信息?

我们希望本文可以激励BI领域的其他发展,包括改进测试方法,设计模式等。但是最重​​要的一点是,技术债务是程序员和管理人员都应意识到的问题。

All Articles