Software Clustering Based on Information Loss Minimization