应用程序现代化战略:转型的 7 个 R 原则

什么是应用程序现代化?

应用程序现代化是转换、重写或移植旧软件包的过程,以便在现代基础架构下更高效地运行。这可能涉及迁移到云、使用无服务器架构创建应用程序、容器化服务或使用现代 DevOps 模型彻底改造数据管道。

在下一篇文章中,我们将讨论应用程序现代化中使用的不同策略,以帮助您了解从简单程序(例如“提升和转变”)到更复杂的方法(例如重新设计微服务部署策略)的所有内容。

AWS_应用程序_现代化-信息图


应用程序现代化的好处


遗留应用程序现代化为旧应用程序注入了新的活力。它通常发生在更广泛的企业数字化转型计划中,但最终旨在减少运营效率低下并简化业务流程。以下是现代化遗留应用程序的一些好处:

  • 通过更高效的基础设施和现收现付模式,从长远来看可以节省大量成本。
  • 正常运行时间和性能的改进使得应用程序可以利用相同的资源分配完成更多工作。
  • 将数据库从旧技术重构为现代技术可以减少性能开销并启用新功能。
  • Docker 和 Kubernetes 等编排和容器技术允许企业根据需要调度和停用资源。
  • 将遗留应用程序转换到新的基础设施可以实现数据驱动的分析、自动化工作流程或剧本,从而减少低级管理负担。

规划应用程序现代化策略时要问的问题


在规划阶段,需要决定哪些技术将带来重大的商业价值、哪些技术将允许应用程序退役,以及哪些程序将最大程度降低风险,同时从投资中获得最大的回报。

提出以下问题将帮助您从应用程序现代化计划中获得最大价值:

  • 我们当前的遗留软件有哪些优点?
  • 我们需要从原有软件中得到什么?
  • 7R 原则中的哪一个最适合我们的计划?
  • 完成应用程序现代化之后的预期结果是什么?
  • 有多少应用程序需要现代化?
  • 哪些应用程序最需要现代化?

应用程序现代化的 7R 是什么?


在对旧式应用程序进行现代化改造时,组织应该注意 7 个 R。选择哪个 R 取决于您的用例,但一个好的经验法则是始终先迁移较简单的应用程序。

1. 替换

采用这种方法,就需要完全替换应用程序。无论应用程序现代化工作有多努力,都无法克服过时的代码语言或 API 等技术限制。该应用程序可能不受最新的 Windows 或 Linux 操作系统的支持,甚至不受 AWS、Azure 或 GCP 等云提供商的支持。

2. 重新托管

当企业重新托管应用程序时,这意味着将应用程序移动到不同的主机平台,而无需对应用程序本身进行任何更改。由于数字化转型战略需要快速的云迁移,因此这是一个以最小的中断保持服务正常运行时间的好选择。

这仅当应用程序的当前实例与新的基础设施平台兼容时才有可能。如果不兼容,则此列表中的下一项适用。

3. 重新平台化

应用程序重新平台化类似于重新托管。此方法通常与 DBaaS、SaaS 和 IaaS 解决方案一起使用。

一个例子是将电子商务网站从 Microsoft Azure 迁移到 AWS 以节省开支。网站本身保持不变,但核心依赖项经过修改以兼容新平台。

4. 重构

重构与软件开发和 DevOps 团队更相关。它涉及重写应用程序的底层代码以提高操作性能,而无需改变现有功能。这称为代码重构,它可释放 AWS 等云平台的一些优势,但不涉及释放最大功能。

此过程的一部分可能涉及删除重复的代码或应用逻辑。如果可以将 10 行函数压缩为 5 行并保持相同的功能,则重构尝试成功。否则,减少类和方法的数量可以提高性能并简化集成开发环境 (IDE) 中的管理。

5. 重新架构

重新架构应用程序就是从头开始重新设计应用程序。这在单片应用程序包中很常见,企业可能希望利用微服务架构。

重新架构应用程序的一种方法可能是用开源替代方案(例如将 Microsoft SQL Server 替换为 PostgreSQL)替换专有 API 和软件依赖项。此类努力可以降低总体拥有成本 (TCO)、提高云灵活性并提高应用程序对中断和性能问题的弹性。

6. 重建

应用程序重建涉及从头开始构建单个或一组组件。重建时,原始范围和规格保持不变,同时满足新的技术或操作要求。

应用程序遗留现代化的重建阶段可以随着时间的推移完成。例如,重建一两个最关键的组件并将其部署到实时环境中。然后慢慢重建其他组件,直到整个应用程序都已转换为在 AWS 等云平台上最佳使用。

7. 回购

这也许是实现应用程序现代化的最简单方法。企业无需重构、重建或重新托管,而是重新购买新软件。这些软件不是从同一供应商处购买的,而是从满足业务需求的其他供应商处购买的。

这通常是使用软件即服务 (SaaS) 平台实现的。其他选项包括数据库即服务 (DBaaS) 和平台即服务 (PaaS)。主要障碍是找到提供类似功能的新应用程序提供商,同时促进数据迁移和将配置合并到新应用程序。

另请阅读ECS 与 EC2


应用程序现代化策略涉及什么?


在决定使用哪种云平台、编程语言或顾问之前,必须先了解现有应用程序架构的当前状态。成功的战略必须先关注业务,然后再关注技术。这将有助于创造理想的未来状态。

虽然每个企业的路线图都是独一无二的,但每个应用程序现代化战略都应涉及以下六个共同点:

  • 评估遗留系统是否适合现代化。评估内容包括敏捷性、业务契合度、业务价值、风险、复杂性和成本。
  • 定义业务挑战,例如识别员工角色和由遗留应用程序导致的每个领域的限制。
  • 评估 7R 中的哪一个可应用于此特定应用程序现代化工作。对您计划现代化的每个应用程序执行此操作。
  • 优先考虑应用程序现代化过程。考虑工作量、架构、支出、业务风险、运营改进机会和网络安全。
  • 考虑一下您的应用程序现代化将如何面向未来。这种现代化工作需要多少年才会过时,需要进一步的努力?
  • 应用程序现代化一旦完成,就永远不会真正结束。持续改进和重新开发可以长期保留功能和兼容性,同时最大限度地减少业务中断。

该图展示了 Trianz 与客户合作进行应用程序现代化时所采取的步骤

版权所有 © 2022 Trianz


使用 Trianz 开始您的应用程序现代化战略


Trianz 是所有主要云平台提供商的咨询合作伙伴。我们在旧系统迁移和现代化方面拥有丰富的专业知识。如果您不确定现代化战略的范围,Trianz 可以帮助您确定 7R 中的哪一个最适合您的应用程序计划。

无论您在现代化旅程中处于何处,Trianz 都会帮助您达到最终状态,提供灵活性、可扩展性和敏捷性,以响应不断变化的业务需求。

有兴趣将应用程序迁移到 AWS 吗?

凭借其广泛的服务和全球最快、最可靠的基础设施,AWS 可能是适合您业务的应用程序现代化途径。

了解有关 AWS 应用程序现代化的更多信息

体验 Trianz 的与众不同

Trianz 通过有效的战略和卓越的执行力实现数字化转型。我们与业务和技术领导者合作,通过提供最佳的咨询、技术专业知识和执行模型,帮助制定和执行运营战略,以实现预期的业务成果。

凭借知识、研究和观点,我们帮助客户利用基础设施、云、分析、数字和安全范例来转变其业务生态系统并实现卓越绩效。联系我们或了解更多信息。

×

Get in Touch

Let us help you
transform and grow


By submitting your information, you agree to our revised  Privacy Statement.