软件可迁移性(software migration),理学-计算机科学技术-软件工程-软件工程管理-软件质量工程-软件质量属性,将软件系统从一个运行环境转移到另一个不同的运行环境的难易程度。是软件的一种开发期质量属性。软件的可迁移性主要体现为代码的可移植性,表现为软件不经修改或稍加修改就可以运行于不同软硬件环境(中央处理器、操作系统和编译器)的能力。编程语言越低级,用它编写的程序越难移植,则软件的可迁移性就越差,反之程序越容易移植,可迁移性越好。一般来说以低级语言写成的软件,例如汇编语言,其可迁移性都较低。这是因为不同的硬件体系结构使用不同的指令集和字长,而 操作系统和编译器可以屏蔽这种差异,所以高级语言的可移植性更好。所以在软件工程中,可迁移性也可理解为使用高级语言写成的软件,在不同环境下,是否具备可以被重复使用的性质。一般来说,软件是否具备可迁移性的衡量标准,在于进行软件移植时,需要付出多少工时为代价。具备高可迁移性的软件,在迁移到不同系统平台时,并不需要做太多事情,因此能够减少软件开发及部署时的成本。为了使软件具备高度可迁移性,程序员需要使应用程序界面抽象化以及模组化。