当旧版安装程序阻碍现代化时,Migrato 使用 IBM Bob 为未来的 Java 升级开辟一条更清晰的道路。
对于许多组织来说,现代化挑战会出现在意想不到的地方。对于帮助组织分析、盘点、清理和迁移非结构化内容的荷兰软件公司 Migrato 而言,障碍不在于主要的应用程序或业务流程,而在于软件安装程序。
Migrato 的 MICC (Migrato Intelligent Content Classifier) 软件套件依赖使用 Java 8 编写的已有十年之久的安装程序。安装程序扮演着一个功能虽窄但至关重要的角色,即负责安装和更新 MICC 套件中的应用程序。但由于它依赖于 Java 8,Migrato 无法使用它干净利落地替换 Java 运行时。原本旨在提供升级的机制已成为 Migrato 实现其基于 Java 的平台的现代化的更广泛努力中的第一个阻碍。
MICC 管理器和安装程序协同管理许可、服务器连接、应用程序访问和软件更新。手动更新客户环境会增加操作工作,并使升级更难协调。Migrato 拥有一支六人开发团队,其专业知识主要集中在 Java 和 Python 上,Migrato 希望在保留安装程序现有行为和客户体验的同时,消除运行时依赖关系。它寻求一种切实可行的方法,为未来现代化开辟一条路径,同时不破坏客户已有的体验。
完成原本预计要数周时间的 Java 8 到 C++ 安装程序的迁移
使用 IBM Bob 规划转换并生成初始 C++ 实现
为安装程序运行所必需,为将来的 Java 升级创建了独立的部署路径
Migrato 没有将安装程序作为重写整个 MICC 套件的理由,而是专注于消除未来 Java 升级的第一个障碍。通过以 C++ 重建安装程序,该公司创建了一个不再需要 Java 虚拟机来启动的原生应用程序,同时 MICC 代码库的其余部分仍可保留在 Java 中。这种方法保留了现有的用户体验,同时为更广泛的平台现代化奠定了切实的基础;在 Migrato 对底层安装程序进行现代化改造时,客户可以继续通过熟悉的 MICC Manager 体验管理更新。
该团队借助 IBM Bob,遵循“计划-实施-验证”的方法。现有的安装程序作为迁移的参考点,帮助开发人员在用 C++ 重建应用程序时保留既定的行为。IBM Bob 分析了 Java 代码,提出了 C++ 项目结构,映射了依赖关系,并在开发人员审查并批准设计方法后生成了新的实现方案。
然后,团队根据原始应用程序行为验证了新安装程序。开发者审核了生成的实现,检查了安全敏感功能,并重复使用现有测试以验证兼容性。当测试发现安装程序与 MICC Manager 之间存在时间控制问题时,该团队使用 IBM Bob 来帮助跟踪问题、调整实施并确认接口测试继续通过。在整个工作过程中,开发人员负责架构决策、依赖项选择和验证。
Migrato 将预计需要数周才能完成的工作缩短为三天的项目。使用 IBM Bob,一名开发人员在不到一天的时间内完成了规划和代码生成,而审查、测试和整合验证使总迁移工作在三天内完成。该方法使 Migrato 的六人开发团队能够完成不熟悉的 C++ 迁移,同时保持架构所有权、安全审查和最终验证。
最终获得的功能安装程序,保留了原始 Java 应用程序的行为,同时独立于 Java 运行时运行。由于安装程序不再依赖于其原本的更新环境,它可以部署基于 Java 的组件和打包的运行时更新,而无需先进行单独的运行时升级。当安装程序处理底层部署工作时,客户可以继续通过熟悉的 MICC Manager 体验管理更新。
最初使用旧版安装程序时遇到的挑战,后来变成了加速未来现代化改造的机会。随着部署瓶颈的消除,Migrato 现在有了一条切实可行的途径来推进其 Java 现代化战略,同时保持其客户已有的体验。
Migrato 成立于 2014 年,总部位于荷兰 Strijen,致力于帮助组织分析、盘点、清理和迁移非结构化内容,包括文档、PDF、扫描记录、电子邮件和聊天消息。通过定制解决方案,该公司将非结构化信息转化为可操作的洞察,为员工和业务流程增加价值。
© Copyright IBM Corporation。2026 年 8 月。
IBM、IBM 徽标和 IBM Bob 是 IBM Corp. 在全球多个司法管辖区注册的商标。
示例仅供说明之用。实际结果将因客户配置和条件而异,因此通常无法提供预期的结果。