The objective of application porting is to create an application on a target platform that behaves like the original version, thereby making the application available to an expanded market. Porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed.

Software is portable when the cost of porting it to a new platform is less than the cost of writing it from scratch.