原始英语叫做legacy system,被国内翻译成了“遗产系统”。实际上,legacy system,可以翻译为遗留系统、旧系统、老系统。
下文部分摘自《遗产系统及其解决方案的综述》一论文。
遗产系统的定义
遗产系统是 “一个已经运行了很长时间的,对我们的机构来说是很重要的,但是我们不知道如何处理的大的软件系统” 。
遗产系统的特征
遗产系统有三方面的特征。
业务特征:遗产系统执行的业务关键,它们通常是机构内信息流的主干。因此,遗产系统对机构的正常运转至关重要。比如银行支付系统、邮政管理系统等;
功能特征:遗产系统的功能稳定可靠,性能也可以接受。因此受到用户的信赖。
软件特征:
遗产系统的生命周期长。一般都有二十年以上的运行时间;
遗产系统的开发语言是汇编或早期的第三代语言,如 Cora1、Fortran一66或 Cobol;
遗产系统采用的软件技术相对落后,如多采用基于主机的中心处理方式、面向批处理。多采用文件系统来管理数据等;
遗产系统的领域特征。它包含特定域的系统需求。设计决策和业务规则在内的所有知识以及设计开发人员、维护人员在特定领域长期积累的经验和专业知识 。
对待遗产问题的不同态度和两难选择
大多数软件工程师更倾向于开发新系统.而不是维护过时的系统;但是系统用户对这种改变持抵制态度。因为尽管遗产系统的技术基础不强,但是它对客户的需求来说是可以信赖的。因此就产生了矛盾。一方面,遗产系统在机构内仍然发挥着重要的作用,简单地替换它风险很大。另一方面,遗产系统的维护开销也很大,无法满足市场变化的要求,丧失了商业机会。
这就产生了对遗产系统的两难选择,因此迫切需要一种既能降低替代带来的风险,又能改进遗产系统满足市场需要的方法。
遗产系统的演化策略
遗产系统的演化策略分为 ①淘汰策略、②继承策略、③改造策略、④集成策略。
按下图顺时针方向,可记忆为 急(集成) 躁(改造) 成(继承) 套 (淘汰)
如上图,把对遗留系统的评价结果分列在坐标的四个象限内。对处在不同象限的遗留系统采取不同的演化策略。
淘汰策略:为低水平、低价值区,即遗留系统的技术水平较低,且具有较低的业务价值。对这种遗留系统的演化策略为淘汰,即全面重新开发新的系统以代替遗留系统。完全淘汰是一种极端性策略,一般是企业的业务产生了根本变化,遗留系统已经基本上不再适应企业运作的需要;或者是遗留系统的维护人员、维护文档资料都丢失了。经过评价,发现将遗留系统完全淘汰,开发全新的系统比改造旧系统从成本上更合算。对遗留系统的完全淘汰是企业资源的根本浪费,系统分析师应该通过对遗留系统功能的理解和借鉴,可以帮助新系统的设计,降低新系统开发的风险。
继承策略:低水平、高价值区,即遗留系统的技术含量较低,已经满足企业运作的功能或性能要求,但具有较高的商业价值,目前企业的业务尚紧密依赖该系统。对这种遗留系统的演化策略为继承。在开发新系统时,需要完全兼容遗留系统的功能模型和数据模型。为了保证业务的连续性,新老系统必须并行运行一段时间,再逐渐切换到新系统上运行。
改造策略:为高水平、高价值区,即遗留系统的技术含量较高,本身还有极大的生命力。系统具有较高的业务价值,基本上能够满足企业业务运作和决策支持的需要。这种系统可能建成的时间还很短,对这种遗留系统的演化策略为改造。
改造包括系统功能的增强和数据模型的改造两个方面。系统功能的增强是指在原有系统的基础上增加新的应用要求,对遗留系统本身不做改变;数据模型的改造是指将遗留系统的旧的数据模型向新的数据模型的转化。
集成策略:为高水平、低价值区,即遗留系统的技术含量较高,但其业务价值较低,可能只完成某个部门(或子公司)的业务管理。这种系统在各自的局部领域里工作良好,但对于整个企业来说,存在多个这样的系统,不同的系统基于不同的平台、不同的数据模型,形成了一个个信息孤岛,对这种遗留系统的演化策略为集成。