Mobile software agent

Definition
A mobile software agent is a

"[p]rogram that [is] goal-directed and capable of suspending their execution on one platform and moving to another platform where they resume execution."