Abstract
Software are used to increases quality as well as productivity that could be associated with lower costs. Implementing software with capability for reuse is difficult without sufficient support. This paper includes tutorial represents four important design characteristics in object -oriented paradigm for facilitating the production of more reusable software. It reviews the concepts of modularity, cohesion, coupling and information hiding and provides a discussion about their effect on software reuse. Object-oriented approach is having wide attention both in research environments and in industry.This tutorial is prepared for newbie developers of reusable software assets and for everyone else interested in the subject.