Heterogeneity in software engineering is usually referring to the composition of a software system. A heterogeneous system is one that is made up of software that could be written in different languages, running on different operating systems, perhaps use different standards for communication. read more