软考高级:遗留系统演化策略(集成、淘汰、改造、继承)概念和例题

作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。

热门文章推荐

  • (1)《为什么很多人工作 3 年 却只有 1 年经验?》
  • (2)《一文掌握大模型提示词技巧:从战略到战术巧》
  • (3)《AI 时代,程序员的出路在何方?》
  • (4)《如何写出高质量的文章:从战略到战术》
  • (5)《我的技术学习方法论》
  • (6)《我的性能方法论》
  • (7)《AI 时代的学习方式: 和文档对话》

遗留系统演化策略讲解

遗留系统(Legacy System)指的是那些已经投入使用,并且对当前运营至关重要,但技术基础较为落后的信息系统。随着技术的发展和业务需求的变化,遗留系统需要进行适当的演化以适应新的要求。常见的遗留系统演化策略包括集成、改造、淘汰和继承四种方式。

在这里插入图片描述

下面通过表格的形式来具体阐述这四种策略:

策略定义适用场景优点缺点
集成将遗留系统与新系统或其他遗留系统集成,共同工作以满足新的业务需求。遗留系统的核心功能仍然有效,但需要与新系统共享数据或功能。可以保留遗留系统的有效部分,减少重新开发的成本和风险。系统间接口复杂,可能会引入新的性能问题。
改造对遗留系统的部分或全部进行重构或重写,以提升其性能、安全性或兼容性。遗留系统基本满足业务需求,但技术陈旧需要更新。可以延长系统的生命周期,提升系统性能和安全性。成本和风险相对较高,可能会影响现有业务的连续性。
淘汰完全替换遗留系统,使用全新的系统来满足业务需求。遗留系统无法满足新的业务需求,或维护成本过高。可以彻底解决遗留系统的技术债务,引入先进的技术和理念。初期投资大,替换过程中可能会影响业务运行。
继承在遗留系统的基础上,继承其数据和业务逻辑,开发新的系统。需要保留遗留系统的业务逻辑和数据,但技术平台需要更新。可以最大限度地保留业务逻辑和数据的价值,减少数据迁移的风险。开发难度和复杂度较高,需要深入理解遗留系统的业务逻辑。

在这里插入图片描述

AI 出题

2.1 选择题

  1. 集成策略适用于以下哪种场景?
    A. 遗留系统完全无法使用
    B. 遗留系统需要与新系统共享数据或功能
    C. 遗留系统维护成本极低
    D. 遗留系统与当前业务完全不相关

  2. 改造策略在实施时,最大的风险是什么?
    A. 影响现有业务的连续性
    B. 减少数据迁移风险
    C. 降低系统安全性
    D. 系统间接口简化

  3. 淘汰策略的主要优点是什么?
    A. 增加系统的复杂度
    B. 保留遗留系统的有效部分
    C. 引入先进的技术和理念
    D. 减少系统的维护成本

  4. 继承策略在开发新系统时需要特别注意什么?
    A. 降低初期投资
    B. 简化系统间接口
    C. 理解遗留系统的业务逻辑
    D. 增加系统的性能问题

  5. 集成遗留系统与新系统时,可能遇到的问题是什么?
    A. 数据迁移风险降低
    B. 系统间接口复杂
    C. 提升系统的安全性
    D. 减少开发成本

  6. 在决定是否淘汰遗留系统时,以下哪项不是考虑的因素?
    A. 遗留系统的业务价值
    B. 新系统的初期投资
    C. 遗留系统的颜色喜好
    D. 维护遗留系统的成本

  7. 如果遗留系统的技术平台需要更新,但需要保留业务逻辑和数据,适用的策略是?
    A. 集成
    B. 改造
    C. 淘汰
    D. 继承

  8. 在对遗留系统进行改造时,以下哪项是优点?
    A. 初期投资小
    B. 提升系统性能和安全性
    C. 系统间接口复杂化
    D. 影响业务运行连续性

  9. 对于无法满足新业务需求的遗留系统,最合适的演化策略是?
    A. 集成
    B. 改造
    C. 淘汰
    D. 继承

  10. 集成策略的主要缺点包括以下哪一项?
    A. 减少数据迁移风险
    B. 保留遗留系统的有效部分
    C. 系统间接口复杂,可能引入性能问题

D. 提升系统安全性

2.2 答案和解析

  1. 答案:B。解析:集成策略适用于遗留系统的核心功能仍然有效,但需要与新系统共享数据或功能的场景。

  2. 答案:A。解析:改造策略的最大风险在于可能会影响现有业务的连续性,因为涉及到对遗留系统部分或全部的重构或重写。

  3. 答案:C。解析:淘汰策略的主要优点是可以彻底解决遗留系统的技术债务,引入更先进的技术和理念。

  4. 答案:C。解析:继承策略在开发新系统时需要特别注意理解遗留系统的业务逻辑,以保留其数据和业务逻辑的价值。

  5. 答案:B。解析:集成遗留系统与新系统时,可能会遇到系统间接口复杂,进而可能引入新的性能问题。

  6. 答案:C。解析:在决定是否淘汰遗留系统时,遗留系统的颜色喜好并不是考虑的因素,应关注其业务价值、维护成本和新系统的投资。

  7. 答案:D。解析:如果需要更新技术平台但保留业务逻辑和数据,继承策略是最适合的,因为它允许在新的技术平台上继承遗留系统的核心价值。

  8. 答案:B。解析:改造遗留系统的优点包括延长系统的生命周期,提升系统性能和安全性。

  9. 答案:C。解析:对于无法满足新业务需求的遗留系统,淘汰策略最合适,因为它允许替换为能满足需求的全新系统。

  10. 答案:C。解析:集成策略的主要缺点是系统间接口复杂,可能会引入新的性能问题。

三、真题

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/745709.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【刷题训练】Leetcode415.字符串相加

字符串相加 题目要求 示例 1: 输入:num1 “11”, num2 “123” 输出:“134” 示例 2: 输入:num1 “456”, num2 “77” 输出:“533” 示例 3: 输入:num1 “0”, num2 “0”…

【计算机视觉】一、计算机视觉概述

文章目录 一、计算机视觉二、计算机视觉与其它学科领域的关系1、图像处理2、计算机图形学3、模式识别4、人工智能(AI)5、神经生理学与认知科学 三、计算机视觉的应用1. 人脸识别2. 目标检测3. 图像生成4. 城市建模5. 电影特效6. 体感游戏动作捕捉7. 虚拟…

java数据结构与算法刷题-----LeetCode47. 全排列 II

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 暴力回溯2. 分区法回溯 此题为46题的衍生题,在46题…

PHP极简网盘系统源码 轻量级文件管理与共享系统网站源码

PHP极简网盘系统源码 轻量级文件管理与共享系统网站源码 极简网盘是一个轻量级文件管理与共享系统,支持多用户,可充当网盘程序,程序无需数据库 安装步骤: 1.建议安装在apache环境下,并确保.htaccess可用 2.解压文件…

PHP序列化基础知识储备

一、序列化与反序列化 1、概念 PHP中的序列化是指将复杂的数据类型转换为可存储或可传输的字符串,而反序列化则是将这些字符串重新转换回原来的数据类型。 序列化通常使用 serialize() 函数完成,它可以将数组、对象、字符串等复杂数据类型压缩到一个字…

Infineon_TC264智能车代码初探及C语言深度学习(二)

本篇文章记录我在智能车竞赛中,对 Infineon_TC264 这款芯片的底层库函数的学习分析。通过深入地对其库函数进行分析,C语言深入的知识得以再次在编程中呈现和运用。故觉得很有必要在此进行记录分享一下。 目录 ​编辑 一、代码段分析 NO.1 指向结构体…

CSDN 编辑器设置图片缩放和居中

CSDN 编辑器设置图片缩放和居中 文章目录 CSDN 编辑器设置图片缩放和居中对齐方式比例缩放 对齐方式 Markdown 编辑器插入图片的代码格式为 ![图片描述](图片路径)CSDN 的 Markdown 编辑器中插入图片,默认都是左对齐,需要设置居中对齐的话,…

QTextToSpeech的使用——Qt

前言 之前随便看了几眼QTextToSpeech的帮助就封装使用了,达到了效果就没再管了,最近需要在上面加功能(变换语速),就写了个小Demo后,发现不对劲了。 出现的问题 场景 写了个队列添加到语音播放子线程中&a…

HTTPS基础

目录 HTTPS简介 HTTP与HTTPS的区别 CA证书 案例 服务器生成私钥与证书 查看证书和私钥存放路径 Cockpit(图像化服务管理工具) HTTPS简介 超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密&…

C++——类和对象(1)

1. 面向对象和面向过程对比 当涉及到编程范式时,两个主要的方法是面向对象编程(Object-Oriented Programming,OOP)和面向过程编程(Procedural Programming)。这两种编程范式在解决问题和组织代码时有着不同…

COX回归影响因素分析的基本过程与方法

在科学研究中,经常遇到分类的结局,主要是二分类结局(阴性/阳性;生存/死亡),研究者可以通过logistic回归来探讨影响结局的因素,但很多时候logistic回归方法无法使用。如比较两种手段治疗新冠肺炎…

Annaconda环境下ChromeDriver配置及爬虫编写

Anaconda环境的chromedriver安装配置_anaconda 配置chromedriver-CSDN博客 Chromedriver驱动( 121.0.6167.85 ) - 知乎 下载好的驱动文件解压,将exe程序复制到Annaconda/Scripts目录以及Chrome/Application目录下 注意要提前pip install selenium包才能运行成功&a…

BEV系列一:BEV介绍和常用BEV算法简介

BEV系列一:BEV介绍和常用BEV算法简介 自动驾驶最全学习资料获取:链接

Linux操作系统——线程概念

1.什么是线程? 在一个程序里的一个执行路线就叫做线程(thread)。更准确的定义是:线程是“一个进程内部的控制序列”一切进程至少都有一个执行线程线程在进程内部运行,本质是在进程地址空间内运行在Linux系统中&#x…

openGauss学习笔记-242 openGauss性能调优-SQL调优-典型SQL调优点-SQL自诊断

文章目录 openGauss学习笔记-242 openGauss性能调优-SQL调优-典型SQL调优点-SQL自诊断242.1 SQL自诊断242.1.1 告警场景242.1.2 规格约束 openGauss学习笔记-242 openGauss性能调优-SQL调优-典型SQL调优点-SQL自诊断 SQL调优是一个不断分析与尝试的过程:试跑Query&…

【Qt】常用控件或属性(1)

需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、QWidget属性一览 二、控件button、属性enabled(可用状态) 三、属性geometry(修改位置和尺寸) 1、QRect类型的结…

微信小程序之tabBar

1、tabBar 如果小程序是一个多 tab 应用&#xff08;客户端窗口的底部或顶部有 tab 栏可以切换页面&#xff09;&#xff0c;可以通过 tabBar 配置项指定 tab 栏的表现&#xff0c;以及 tab 切换时显示的对应页面。 属性类型必填默认值描述colorHexColor是tab 上的文字默认颜色…

Leetcode 3.14

Leetcode hot100 二叉树1.二叉树的层序遍历2.验证二叉搜索树3.二叉树的右视图 二叉树 1.二叉树的层序遍历 二叉树的层序遍历 二叉树的层序遍历可以用先进先出的队列来实现。 将每一层的所有node都添加到队列中&#xff0c;记录下当前队列的长度&#xff0c;即该层的元素数量&…

『 Linux 』进程替换( Process replacement ) 及 简单Shell的实现(万字)

文章目录 &#x1f984; 进程替换&#x1f9a9; execl()函数&#x1f9a9; execlp()函数&#x1f9a9; execle()函数&#x1f9a9; execv()函数&#x1f9a9; execvp()函数&#x1f9a9; execvpe()函数&#x1f9a9; execve()函数 &#x1f984; 简单Shell命令行解释器的实现&a…

【漏洞复现】ChatGPT-Next-Web SSRF漏洞

免责声明&#xff1a;文章来源互联网收集整理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该…