计算机技术飞速发展,日新月异,许多企业因为业务发展的需要和市场竞争的压力,需要建设新的企业信息系统。在这种升级改造的过程中,怎么处理和利用那些历史遗留下来的老系统,成为影响新系统建设成败和开发效率的关键因素之一。我们称这些老系统为遗留系统(legacy system)。
目前,学术和工业界对遗留系统的定义没有统一的意见。Bennett在1995年对遗留系统作了如下的定义[1]:遗留系统是我们不知道如何处理但对我们的组织又是至关重要的系统。Brodie和Stonebraker对遗留系统的定义如下[2]:遗留系统是指任何基本上不能进行修改和进化以满足新的变化了的业务需求的信息系统。
我们认为,遗留系统应该具有以下特点:
(1)系统虽然完成企业中许多重要的业务管理工作,但已经不能完全满足要求。一般实现业务处理电子化及部分企业管理功能,很少涉及经营决策。
(2)系统在性能上已经落后,采用的技术已经过时。如多采用主机/终端形式或小型机系统,软件使用汇编语言或第三代程序设计语言的早期版本开发,使用文件系统而不是数据库。
(3)通常是大型的软件系统,已经融入企业的业务运行和决策管理机制之中,维护工作十分困难。
(4)系统没有使用现代软件工程方法进行管理和开发,现在基本上已经没有文档,很难理解。