迈向云端迁移的评估工具
在当今的科技与商业环境中,软件从需求定义到运行时及交付,都需要适应新的技术和业务条件、需求与挑战。随着对支持软件演进和适应工具的需求不断增加,将现有软件迁移到基于服务的架构成为了许多公司面临的重要决策。
-
软件迁移面临的决策难题
- 公司面临的首要问题是决定迁移现有产品还是重新开发。在考虑迁移到基于服务的软件时,公司需要进行全面的定性和定量分析,包括迁移成本、新业务模式的影响以及投资回报率(ROI)等。只有在确定新转变的服务能够实现成功的ROI后,才能决定是否进行迁移。
- 即使决定迁移,公司还将面临诸多挑战,不仅涉及新技术或架构的使用,还包括一些以往被视为理所当然但现在不再适用的假设。
-
现有迁移方法的局限性
- 现有的开源和专有迁移方法大多采用“大爆炸”式方法,或者在迁移过程中较晚进行可行性分析。这些方法往往忽略了迁移前的阶段,或者只进行了非常高层次的初步分析,没有考虑到业务模式问题、组织变革等重要方面。
- 目前的解决方案都没有提供一个合适的迁移准备策略,无法为公司在进行软件现代化过程中提供支持决策所需的信息。此外,它们也没有提供自动化分析的工具,并且没有处理业务模型需求、组织变革、法律和信任等方面的问题。
-
解决方案的要素
- 基准测试工具 :分析待迁移应用在架构和业务模型方面的当前状态以及目标状态。
- 差距分析 :基于当前状态和期望的未来状态进行差距分析,获取包括成本效益分析(如ROI和投资回收期)、业务模式转变对公司的影响以及改变新交付模式所需的努力等指标。这些数据将帮助管理层基于客观指标做出决策。
- 定制路线图 :为特定应用和目标平台创建定制的迁移路线图,并为执行迁移活动的开发人员提供随时可用的成就程度信息,以便评估和确定如何高效地实施和运行实际过程。
-
评估方法的维度与目标
- 该方法从技术和组织业务两个维度对软件现代化及其交付进行分析。技术维度包括架构、性能、可靠性、数据模式等;组织业务维度包括定价模型、目标市场、组织流程等。
-
评估的主要目标包括:
- 一种表征当前遗留应用技术和业务维度的方法,特别是与向选定目标进行现代化相关的问题。
- 一组通用的指标和指标集,用于表征迁移前后遗留应用的相关技术方面和业务模型。
- 一套工具,用于自动评估与现代化过程相关的数字,如所需资源和努力、对公司流程的影响、估计的ROI和投资回收期以及运营风险。
- 一种现代化策略,用于在组织分析数据后决定继续进行现代化过程时应开展的活动。
-
业务和技术现代化评估
-
步骤1:问卷调查
- 通过一组问卷,从技术和组织业务两个维度分析软件现代化及其交付。问卷包括与当前情况和期望情况相关的问题,这些问题根据重要性进行分类。
-
技术方面的问题分类如下:
- 架构和编程:如编程语言、数据库类型。
- 操作系统和互操作性:如应用在不同操作系统上的安装方式、特定硬件需求以及应用与其他应用的交互方式。
- 服务级别协议(SLA):如应用监控和性能指标。
- 用户管理和安全:如用户配置文件管理。
- IaaS(即迁移应用的部署以及混合、公共或私有云)。
-
业务方面的问题分类如下:
- 监控:监控使用情况、与其他应用的交互的元素类型。
- 计费:自动支付、计费元素类型。
- 供应:许可模型、新版本供应、多种业务模型。
- 用户交互:如帮助台类型和反馈机制。
-
步骤2:分析
- 基于问卷收集的数据进行分析。类似于ISO 9126质量模型标准和“双向质量模型”方法中对质量标准的评估,该方法通过评估问题和清单来测量多个指标。测量的指标根据一定标准进行加权,并汇总为感兴趣的指标,用于计算迁移前后业务模型和技术模型的成熟度。
-
步骤3:呈现
- 以图形方式呈现结果,采用象限图是一种合适的方式。每个问题的答案根据权重定位在象限的不同子象限中。
-
确定应用成熟度的总体位置的过程如下:
- 对于每种类型的问题,统计每个子象限中的答案数量。
- 子象限由类型1问题的答案数量决定。
- 子象限内的位置由类型2和类型3问题的答案决定。
- 在期望情况中,如果关键问题的一个答案权重为1,则在子象限内将位置移动一个区间。
-
步骤1:问卷调查
以下是技术和业务维度的成熟度级别分类表格:
| 技术轴 | 描述 |
| ---- | ---- |
| (0,0) | 单体架构:接口逻辑、业务逻辑和数据逻辑在同一台机器上。 |
| (0,0.5) | 具有胖客户端的客户端 - 服务器架构(如VB应用),事件驱动;代码与接口紧密耦合。数据库在本地网络或外部服务器上,但所有逻辑仍在同一台机器上。 |
| (0,1) | 具有瘦客户端的客户端 - 服务器架构(如J2EE应用,2 - n层),不使用Web服务;多个数据库实例。 |
| (0,2) | 具有瘦客户端(如Mozilla、Opera、Chrome或Internet Explorer)的客户端 - 服务器架构(如J2EE应用,2 - n层),使用Web服务;单个数据库实例;多个应用实例。 |
| (0,3) | 具有瘦客户端的客户端 - 服务器架构;1个数据库实例;1个数据库应用;n个外观定制。 |
| 业务轴 | 描述 |
|---|---|
| (0,0) | 许可证(安装)、支持、更新、升级和维护的收费模式与许可证不同;没有帮助台;没有SLA;没有升级协议和程序。 |
| (0,0.5) | 大部分收入来自许可证销售。尽管存在一些以固定费率模式提供服务的销售(占总金额的不到10%)。 |
| (1,0) | 大部分收入来自许可证销售。10% - 20%来自按使用付费、固定费率、混合定价模式的产品服务销售。正在定义SLA和升级协议及程序。 |
| (2,0) | 超过60%的销售来自产品即服务。帮助台已制度化,但不是24×7服务,且仅支持某些语言;存在SLA和升级协议,但升级仍然很少,有法律部门。 |
| (3,0) | 100%的销售来自产品即服务;存在24×7的多语言帮助台,主要通过互联网(社交媒体)进行营销,有SLA、升级协议和程序以及长尾效应。 |
下面是业务和技术现代化评估的流程图:
graph LR
A[开始] --> B[问卷调查]
B --> C[分析]
C --> D[呈现结果]
D --> E[结束]
通过以上评估和分析,公司可以更清晰地了解自身的现状和目标,从而做出更明智的软件迁移决策。在后续部分,我们将继续探讨技术可行性分析、业务可行性分析以及现代化策略定义等内容。
迈向云端迁移的评估工具
-
技术可行性分析:理解应用与复杂性
- 迁移的技术约束 :将应用迁移到基于云的环境并作为服务提供时,会受到一些技术约束。这些约束部分源于遗留系统本身,部分源于遗留系统所采用的技术。例如,遗留系统的架构可能过于陈旧,难以与云环境兼容;或者所使用的编程语言和数据库技术在云环境中缺乏有效的支持。这些约束可能导致迁移遗留系统的成本高于重新开发。
-
评估要点
:在进行技术可行性分析时,需要重点关注以下几个方面:
- 遗留系统的架构和代码结构,评估其可扩展性和可维护性。
- 所使用的技术栈在云环境中的适用性和兼容性。
- 数据迁移的复杂性,包括数据的格式、规模和安全性。
-
业务可行性分析
- 业务影响评估 :业务可行性分析主要关注迁移对公司业务的影响。这包括新业务模式的适应性、市场需求的变化、组织流程的调整等。例如,迁移到基于服务的软件可能需要公司调整其定价策略、销售渠道和客户服务模式。
- 成本效益分析 :除了考虑迁移的直接成本,还需要评估迁移带来的潜在收益。这包括提高运营效率、降低维护成本、增加市场竞争力等。通过成本效益分析,可以确定迁移是否能够为公司带来积极的投资回报率。
- 风险评估 :识别和评估迁移过程中可能面临的风险,如技术风险、业务风险和市场风险。制定相应的风险应对策略,以降低风险对公司的影响。
-
现代化策略定义
- 制定策略的依据 :基于前面的业务和技术现代化评估、技术可行性分析和业务可行性分析的结果,制定适合公司的现代化策略。策略应考虑公司的业务目标、资源状况、技术能力和市场需求。
-
策略的具体内容
:现代化策略通常包括以下几个方面:
- 迁移路径:确定是采用渐进式迁移还是一次性迁移的方式。渐进式迁移可以降低风险,但可能需要更长的时间;一次性迁移则可以更快地实现目标,但风险相对较高。
- 技术选型:选择适合公司需求的云平台、编程语言、数据库技术等。
- 组织变革:为了支持迁移,可能需要对公司的组织架构、人员配置和业务流程进行调整。
- 项目计划:制定详细的项目计划,包括项目的时间表、里程碑和资源分配。
以下是技术可行性分析和业务可行性分析的对比表格:
| 分析类型 | 关注重点 | 评估内容 |
| ---- | ---- | ---- |
| 技术可行性分析 | 技术约束和适用性 | 遗留系统架构、技术栈兼容性、数据迁移复杂性 |
| 业务可行性分析 | 业务影响和成本效益 | 新业务模式适应性、市场需求变化、成本效益分析、风险评估 |
下面是现代化策略定义的流程图:
graph LR
A[综合评估结果] --> B[制定迁移路径]
B --> C[选择技术选型]
C --> D[规划组织变革]
D --> E[制定项目计划]
E --> F[确定现代化策略]
综上所述,软件迁移到基于服务的架构是一个复杂的过程,需要综合考虑技术和业务等多个方面的因素。通过采用科学的评估方法和制定合理的现代化策略,公司可以更好地应对迁移过程中的挑战,实现软件的现代化升级,提高公司的竞争力和市场适应性。
超级会员免费看
72

被折叠的 条评论
为什么被折叠?



