A computer-implemented method for porting a software application in a source platform version to a destination platform version, wherein a platform is a computing platform the software application is executed on, the method comprising: receiving a source sample object in the source platform version that provides selected functionality; receiving a destination sample object in the destination platform version that also provides the selected functionality; in preparation for identifying version differences between the source sample object and the destination sample object: - exporting the source sample object from a native source platform format to a tag based language format; and - exporting the destination sample object from a native destination platform format to the tag based language format; comparing, by a comparator logic, the source sample object against the destination sample object to identify the version differences between the source sample object and destination sample object; storing each of the identified differences between the received sample objects in a version difference table; selecting a source application object in the source platform version to convert to the destination platform version; in preparation for altering the source application object: - exporting the source application object from a native source platform format to the tag based language format; and altering, by a porting logic, the source application object to account for at least one of the version differences to transform the source application object into a destination application object with increased compatibility with the destination platform version, wherein the porting logic receives as input the identified differences from the version difference table to generate the destination application object. receiving a source sample object in the source platform version that provides selected functionality; receiving a destination sample object in the destination platform version that also provides the selected functionality; in preparation for identifying version differences between the source sample object and the destination sample object: - exporting the source sample object from a native source platform format to a tag based language format; and - exporting the destination sample object from a native destination platform format to the tag based language format; - exporting the source sample object from a native source platform format to a tag based language format; and - exporting the destination sample object from a native destination platform format to the tag based language format; comparing, by a comparator logic, the source sample object against the destination sample object to identify the version differences between the source sample object and destination sample object; storing each of the identified differences between the received sample objects in a version difference table; selecting a source application object in the source platform version to convert to the destination platform version; in preparation for altering the source application object: - exporting the source application object from a native source platform format to the tag based language format; and - exporting the source application object from a native source platform format to the tag based language format; and altering, by a porting logic, the source application object to account for at least one of the version differences to transform the source application object into a destination application object with increased compatibility with the destination platform version, wherein the porting logic receives as input the identified differences from the version difference table to generate the destination application object.