Reuse is important economically for two main reasons, the obvious saving in manpower is one (we don't need to redevelop that functionality) whilst theoretical improvement in reliability is another (what's been deployed before ought to work better than something untested). This talk will examine the common software development technologies and disciplines that support Reuse. Reuse paradigm strengths and weaknesses will be identified and these will be related to perceived successes and failures of reuse. Armed with this understanding, the session will go on to identify unexploited opportunities for increased Reuse. The talk will conclude by examining the consequences these new techniques imply for the traditional software development process.