跳至主要内容
BilgeQor

应用与产品服务

应用救援:废弃应用该重建还是重构?

4 分钟阅读

许多企业最终都会面对一款无人积极维护的应用。最初的开发人员或代理机构已经离开,版本发布已经停止,应用商店在提示 SDK 过时,也没有人有把握去修改代码。人们的本能往往是要么继续打补丁,要么推倒重来。但这两种做法都不应凭本能决定。本应用救援指南说明如何评估一款废弃的应用,并基于证据而非挫败感,在重构现有代码与重新构建之间做出选择。

服务简介

应用救援首先要弄清您实际拥有什么。这意味着要恢复对源代码、构建配置、签名密钥、托管账户、应用商店页面和第三方服务的访问权限;然后审查代码结构、依赖项、测试覆盖率和已知缺陷;再检查该应用能否在当前操作系统版本上构建和运行。重构是指在原有代码库的基础上加以改进:更新依赖项、修复缺陷、重组问题区域并补充测试,同时保持应用正常运行。重建是指编写新的代码库,通常会尽可能复用设计、数据和后端服务,并将用户迁移到新版本。重构能够保留以往的投入,避免长时间无法发布。当代码库难以维护、基于过时的框架,或与产品当前的需求存在根本性错配时,重建可能是更好的选择。答案往往是两者结合:先立即稳定,再逐步替换部分模块。

适用对象

本指南适用于:

  • 应用开发人员或代理机构已无法继续提供服务的企业
  • 应用无法构建、在新设备上崩溃或面临应用商店拒审的产品负责人
  • 从前任团队手中接手半成品应用的创始人
  • 正在决定是否继续投入现有代码库的团队

帮助厘清的问题

结构化评估有助于厘清:

  • 您是否完全拥有并能访问代码、密钥、账户和数据
  • 现有代码中有多少是可靠的、有多少存在风险、又有多少缺失
  • 所用框架和依赖项是否仍受支持
  • 哪条路径(重构、重建或分阶段替换)符合您的时间安排和风险承受能力

包含内容

  • 恢复访问权限:源代码仓库、构建文件、签名证书和密钥库、云和托管账户、应用商店账户以及第三方 API 密钥
  • 确认代码及任何许可的法律所有权,必要时咨询您自己的顾问
  • 检查应用能否从源代码构建,并在当前操作系统版本上运行
  • 审查依赖项中是否存在过时、不受支持或有漏洞的库
  • 评估代码结构、测试覆盖率和文档
  • 列出已知缺陷、崩溃报告、用户投诉和应用商店警告
  • 梳理应用所依赖的后端、API 和数据
  • 从投入、风险和无法发布的时长等方面,为重构、重建或分阶段替换等选项打分
  • 在开展更大规模的工作之前,约定处理紧急问题的稳定方案

不包含内容

  • 声称能发现或解决每一个遗留问题
  • 超出已确认恢复范围的新功能开发
  • 正式的安全评估或渗透测试,除非另行确定范围
  • 关于代码所有权或与前供应商纠纷的法律建议

适用时机

当应用已无法安全发布、平台要求即将使其不符合应用商店规则,或每一次小改动都会引发新问题时,就应采取行动。不要等到应用被应用商店下架或某项关键服务停止运行时才行动。如果您无法访问源代码或签名密钥,请先解决这一问题;没有它们,无论代码质量如何,重建都可能是唯一的选择。

我们的方法

从访问权限和证据入手,而不是从看法入手。许多废弃的应用一旦能重新构建,情况往往比看上去要好;另一些应用看似正常,却建立在已不可行的框架之上。请依据一份涵盖代码、依赖项、基础设施和产品需求的书面评估做出决策。我们的 App Rescue & Rebuild 服务涵盖评估与恢复:恢复可正常运行的构建、稳定关键问题,并建议和实施已确认的恢复路径,同时提供范围明确的恢复记录和交接材料。如果问题延伸到更广泛的平台、后端或遗留系统,Platform Rescue & Modernisation 服务可提供现状图、稳定方案和现代化路线图。恢复之后,请规划持续维护,避免应用再次陷入同样的状态:定期更新依赖项、建立发布流程,并明确账户和密钥的归属。

App Rescue & Rebuild

查看 App Rescue & Rebuild 服务页面

常见问题

相关文章

立即开始

手上有一款无人能维护的应用?

请告诉我们您目前能访问哪些内容、哪些功能出了问题,以及应用接下来需要实现什么。我们将提出书面评估和恢复范围。

申请书面范围说明