我在国内最大的公司之一的IT部门工作.
基础设施和软件系统在很大程度上是基于Oracle数据库的。大多数核心业务流程和业务逻辑是使用SQL和PL/SQL批处理作业构建的,将数据导入数据库,通过DB链接进行转换、合并、通信等。这是一个非常同质的系统,也有它的优点。
现在,已经有了一种转向不同技术、多样化和减少对Oracle的依赖的努力(成本是一个因素--我们拥有数百个企业版数据库和数千个标准版)。
然而,经常会出现一个问题: Oracle数据库已经相当稳定并且向后兼容--我们如何确保系统在更异构的环境中的长期稳定性(10 years+)?假设我们有组件A,B,C,D,使用某个特定的框架,托管在某个云端。如果云提供商放弃了对框架的支持,该怎么办?如果组件B和C由于中断更改而不再兼容,怎么办?
我还没有听到令人满意的答案--基本上,到目前为止我得到的唯一答案是“我们只需要重写它”。
所以我希望找出应该采取什么策略来防止我们基本上每3年重写一次。
发布于 2020-04-22 13:29:03
你越多地利用别人的工作,你就越容易受到别人的影响。
因此,有四种方法来处理这个问题:
在我的头脑中,找出上述策略的组合对你的情况是有效的。
你必须对业务经理清楚这对银行余额和未来预算意味着什么。
这些新框架属于第3或第4桶。
基于云的服务要么是2,要么是4,可能是4,因为我还没有看到服务合同的保证。
甲骨文数据库,那是2。
你所有的本土应用程序都属于1类。
发布于 2020-04-22 19:11:29
通常,在软件书籍中,你会给出客户所需要的,而不是他们想要的。在现实世界是完全相反的。仅仅因为你有你很稳定的老学校平台,并不意味着它是垃圾。一次新的重写必须非常小心,而不会对你的商业模式造成干扰。
我建议如下:制定侧重于以下方面的计划:
https://softwareengineering.stackexchange.com/questions/409143
复制相似问题