菜单

Logo
新闻中心

软件维护

停机不会等待您的团队。

安全更新、新增需求和故障不会随验收而终止。在完成结构化盘点后,我们会接手您应用程序的维护和后续开发,即便这些软件最初是由其他服务商或您自己的团队开发的。

团队在多个技术工位上工作,示意图
从任务提出,到有据可查的移交。

这项服务的适用场景

软件维护:您委托我们的任务。

  • 有序移交现有应用
  • 以可规划的方式处理更新和故障
  • 将维护与后续开发相结合

应用的真正生命周期从上线开始。我们按照 ITIL 流程,以约定的响应方式承担监控、故障处理、安全更新、依赖项维护和业务支持工作。这同样适用于由其他厂商或您内部团队开发的应用,前提是经过包含代码分析和知识转移的结构化接手。

委托任务可能包含的内容

  • 接手工作,包括代码分析、依赖项清单、文档和知识转移
  • 使用 Prometheus、Grafana 和 OpenTelemetry 进行监控,按严重程度分级告警
  • 通过 Jira Service Management,按照 ITIL 进行故障与问题管理
  • 使用 Renovate 进行安全更新和依赖项维护,并对照已知漏洞进行检查
  • 定期报告可用性、事件和尚未解决的风险

具体范围、验收环节和您的参与方式,我们会在报价中明确约定。

整体关联,一目了然

运维是一个持续改进的闭环。

  1. 01

    发现

    监控关键应用操作

  2. 02

    响应

    对故障进行分级和升级处理

  3. 03

    解决

    处理根因并审查变更

  4. 04

    改进

    将经验教训纳入维护与规划

规划、实施与决策

软件维护 的关键所在。

01

从可核实的起点开始接手

在承担责任之前,我们会检查代码访问权限、使用权、依赖项,以及自行构建版本的可行性。我们会与您一起梳理已知问题、运维知识和关键流程。应用能够成功启动还不够,备份、恢复以及外部服务的职责归属同样需要明确。

接手的结果是形成一份服务范围说明,其中列明尚未解决的风险和按优先级排序的措施。无法掌控的历史遗留问题不会被默默纳入笼统的承诺之中。如果需要先进行稳定化处理,会将其作为单独的工作包加以说明。

02

识别故障并合理升级处理

服务器正常运行,并不能说明用户是否能够顺利完成工作。因此,我们也会针对重要的应用业务操作和接口设置监控。告警会按影响程度进行分类,每一条告警都需要有明确的接收人和合理的首要处置步骤。

支持时间、响应目标和升级路径会在合同中明确规定。响应时间并不等同于有保证的解决时间。对于严重事件,我们会明确沟通方式、决策权限,以及与您的基础设施服务商或软件厂商之间的协作方式。

03

维护为下一次变更提供保障

更新会按照风险、紧迫性和兼容性进行评估。我们保持依赖项的可见性,在合适的环境中测试变更,并在规划交付时预留回退路径。对于反复出现的故障,我们会分析其根本原因,避免运维工作长期只是重复同样的修复。

定期报告将事件、技术风险与待决决策联系在一起。较小的改进可以在约定范围内一并推进,较大的业务功能扩展则会单独排定优先级。为便于日后交还给您的团队,我们会持续记录相关知识和访问权限。

工具服务于任务

契合您环境的技术。

  • Jira Service Management
  • Grafana
  • Prometheus
  • OpenTelemetry
  • Renovate

选择依据现有系统、您的团队以及后续运维需求而定。并非每个项目都需要用到上述所有技术。

面向业务负责人与技术团队

实施背后的决策考量。

04

从用户角度衡量服务目标

应用可能处于可访问状态,却依然无法处理订单。因此,我们会针对相关的用户流程选取测量点,并区分可达性、处理成功率和响应时间。一个服务目标需要有测量周期、数据来源,以及应对测量数据缺失情况的规则。只有这样,才能有据可依地判断是否达到了约定的状态。

与目标之间剩余的偏差可以作为错误预算,用来在稳定化工作与后续开发之间进行权衡。超出预算会带来什么后果,由双方共同商定。这既不能替代合同中的服务协议,也不能替代对单次严重事件的评估。仪表盘和告警的作用是辅助决策:由谁响应、接下来进行何种诊断,以及何时需要通知业务负责人?

05

验证备份、恢复和依赖关系

一次成功完成的备份任务,并不能证明数据一定可以恢复。我们会明确最多可以接受的数据丢失量,以及故障最长可以持续多久。由此可以得出对备份周期、保留期限和恢复运行的具体要求。除了数据库之外,应用通常还包括文件、配置、密钥和外部服务;只要缺少其中一部分,即使备份在技术上可读,也可能无法真正使用。

恢复演练会在合适的环境中验证约定的流程,并记录所需时长、所需的访问权限、手动步骤以及业务层面的数据核查。恢复单个租户或一条被误删的数据记录,所需的恢复方式可能与整体故障时不同。演练结果会转化为具体的改进措施。发现的差距会被明确指出,而不是把未经验证的目标值当作已确认的能力来呈现。

06

安全更新、根因分析与有序退出

关于某个存在漏洞的库的通报,会结合应用场景进行评估:使用的是哪个版本、受影响的功能是否可以被访问,以及已经具备哪些防护措施?紧迫性和变更本身的技术风险会一并考虑。对于无法立即完成的更新,需要有记录在案的过渡措施,并约定重新评估的时间。新版本会经过相应的测试和协调一致的发布上线。

在反复出现或严重的故障之后,我们会分析原因、发现方式和应对过程,并由此形成按优先级排序、有明确责任人的措施,而不仅仅是关闭一张工单。文档、运维手册和访问权限概览会持续维护更新。日后移交给您的团队或其他服务商的工作也会提前做好准备:包括代码仓库、构建说明、尚未解决的风险以及有序的访问权限转移。只有相关知识始终有据可查,服务才能长期持续。

清晰可循的工作成果

您最终获得的成果。

成果 01

包含响应方式和职责分工的服务目录

成果 02

带告警和仪表盘的监控

成果 03

包含事件和风险的运维报告

示例项目流程

项目可以这样开展。

某内部开发的业务应用需要移交给外部团队。在完成代码分析和可复现构建之后,首先检查监控和恢复能力。随后开始维护,按约定的服务时间执行,并以一份按优先级排序的历史遗留问题清单为依据。

示例场景,非客户案例或成果保证。

这些信息有助于启动

  • 代码仓库、许可证和技术访问权限
  • 文档、已知事件和当前的服务商
  • 预期的服务时间和业务重要程度

缺少相关材料并不妨碍启动。我们会与您共同确定首先需要获取哪些信息。

您的项目详情

让软件在上线之后,在业务和技术层面持续保持可用。

我们承担约定的维护、故障处理和持续开发任务。服务范围会依据您的应用和运维组织方式来确定,以便支持团队和产品开发团队能够协同合作。

具体约定责任划分和服务边界

应用、基础设施和外部服务,可能分别由不同的运营方负责。我们会明确规定由谁受理问题报告、排查原因和审批变更。服务时间、优先级和升级机制都会被具体列明;诸如“快速支持”之类的笼统说法,无法替代具体的约定。

事件需要恢复运行,问题需要排查反复出现的原因,而变更请求则需要进行业务评估。这几类任务会被区分开来分别处理。这样一来,长期必要的改进就不会被层出不穷的短期修补所掩盖。

让维护和恢复工作可以预先规划

依赖项、运行环境和接口都会不断发生变化。我们会梳理相关组件,并依据风险、兼容性和可获得的支持情况来规划更新。在对生产环境进行变更之前,会约定相应的测试和维护流程。

备份只是恢复工作的一部分,配置、访问凭证和外部依赖同样必须齐备可用。我们会对约定的恢复运行流程进行演练,并记录尚存的局限性。定期评审会将故障、技术债务和计划中的产品变更整合成一份条理清晰的工作清单。

示例项目场景

该服务在日常工作中如何发挥作用。

示例:反复出现的导入错误,导致每天早上都需要人工返工。除了即时修复之外,我们还会排查原因和数据契约,改进错误处理机制,并新增有针对性的监控。相应措施的成效会依据故障是否减少、处理流程是否更加清晰来评判。

该示例说明的是一种可能的流程,并非客户案例。

委托之前

您关于 软件维护 的问题。

OTOKO® 是否也接手由他人开发的软件?

可以,但需要先进行技术和组织层面的审查。我们需要充分的权限、访问权限,以及一个可控的技术起点。缺失的文档可以部分补充完善,但无法获取的源代码或厂商权利,则可能大幅限制服务范围。

是否包含全天候支持?

服务时间、值班待命和响应目标都会明确约定,并不会仅凭“应用运维”这一说法自动确定。我们会根据应用的重要程度以及现有的运维组织架构,来商定所需的服务范围。

新增功能是否属于维护范畴?

服务目录中会明确区分故障修复、技术维护和业务功能扩展。对于新增功能,我们会共同确定范围、优先级和验收标准。这样可以清楚地看出,哪些工作用于维持日常运行,哪些工作会带来额外的业务价值。

下一步

告诉我们,您目前遇到了什么问题。

只需简要描述您的应用、遇到的问题和目标,即可开始沟通。您所选择的服务会自动带入您的联系咨询中。

咨询此项服务

我们的合作伙伴

  • Microsoft
  • Microsoft Azure
  • Amazon AWS
  • Google Cloud
  • Thales Group
  • Arrow ECS
  • Vodafone
  • IBM
  • Veeam
  • Atlassian
  • JetBrains
  • NinjaOne
  • OPSWAT
  • Utimaco
  • Eviden

无障碍

根据您的需要调整页面显示。

本页面暂无简明语言版本。

当前设置仅对本次访问有效。您可以在 Cookie 设置中允许永久保存。