True software reusability