Information Technology (IT)

A Realistic Look at Object-Oriented Reuse


Types of reuse

  • Code Reuse
    At its best, code reuse is accomplished by sharing common classes or collections of functions and procedures (this is possible in C++, but not in Smalltalk or Java). At its worst, code reuse is accomplished by copying and then modifying existing code.
    A key aspect of code reuse is that you have access to the source code.
  • Inheritance Reuse
  • Template Reuse
    Template reuse is typically a form of documentation reuse. It refers to the practice of using a common set of layouts for key development artifacts-documents, models, and source code-within your organization.
    For best results with templates, you need to make it easy for developers to work with them.
  • Component Reuse
    Component reuse refers to the use of prebuilt, fully encapsulated components in the development of your application. Components are typically self-sufficient and encapsulate only one concept. Component reuse differs from code reuse in that you don’t have access to the source code.
  • Framework Reuse
    Framework reuse refers to the use of collections of classes that implement the basic functionality of a common technical or business domain together. Developers use frameworks as the foundation from which they build an application; the common 80% is in place already, they just need to add the remaining 20% specific to their application.
  • Artifact Reuse
    Artifact reuse refers to the use of previously created development artifacts-use cases, standards documents, domain-specific models, procedures and guidelines, and other applications-to give you a kick start on a new project.
    Artifact reuse promotes consistency between projects and reduces the project management burden for each new one. Another advantage is that you can often purchase many artifacts or find them online
  • Pattern Reuse
    Pattern reuse refers to the use of publicly documented approaches to solve common problems.
    With pattern reuse, you’re not reusing code; instead, you’re reusing the thinking that goes behind the code.
  • Domain Component Reuse
    Domain component reuse refers to the identification and development of large-scale, reusable business components. A domain component is a collection of related domain and business classes that work together to support a cohesive set of responsibilities.

The Secrets to Reuse Success

  • You can’t call something reusable unless it’s been reused at least three times on three separate projects by three separate teams.
  • Reusable items must be well-documented and have one or more real-world examples of how to use them.
  • The only way you’ll make reuse a reality is if you plan for it.
  • Reuse is an attitude.

The Longevity of Information Technology (IT) Skills


Longevity of IT Skills