Portability is an attribute which may be possessed by a software unit to a specific degree with respect to a specific class of environments.
Portability may also be an attribute of auxiliary elements such as data, documentation, and human experience.
A software unit is portable (exhibits portability) across a
class of environments to the degree that the cost
to
transport and adapt
it to a new environment in the class is less than
the cost of redevelopment.