Organizations that want application software to work on heterogeneous computers may port that software to the other machines.
For organizations seeking their application software to function across different computer systems, they may rework the software to be compatible with those machines.