Techniques to Achieve Reusability