A method for assessing the reusability of object-oriented code using a validated set of automated measurements