A practical approach to teaching software reuse

  • James E. Cardow
  • William D. WatsonJr.
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 750)


For software reuse to become a reality, the concept of reuse must be presented in a practical context. A practical context must focus on the use of reusable components to develop systems in well understood domains. “Write-only” software libraries will do nothing to accomplish the potential gain of reuse. Generic libraries of components will also provide little gain. This paper discusses a five lesson section covering reuse in a software generation and maintenance course. The course is part of a program designed to educate working professionals in software engineering. The reuse lessons focus on all aspects of reusing software components, from the development of a domain model through to the construction of systems. This paper also describes the homework and project tasks used to reinforce the lesson material.


Domain Analysis Reusable Component Practical Context IEEE Software Library Management 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Canan, J. W. “The Software Crisis.” Air Force Magazine (May 1986), 46–52.Google Scholar
  2. [2]
    Mead, N. R., Patricia K. Lawlis. “Software Engineering: Graduate-Level Courses for AFIT Professional Continuing Education.” Software Engineering Education, SEI Conference, J.E. Tomayko, ed. New York, NY: Springer-Verlag, Oct. 1991, 114–126.Google Scholar
  3. [3]
    Prieto-Diaz, R., and Freeman, P. “Classifying Software for Reusability.” IEEE Software 4, 1 (Jan. 1987), 106–116.Google Scholar
  4. [4]
    Barnes, B. H., and Bollinger, T. B. “Making Reuse Cost-Effective.” IEEE Software 8, 1 (Jan. 1991), 13–24.CrossRefGoogle Scholar
  5. [5]
    Biggerstaff, T., and Richter, C. “Reusability Framework, Assessment, and Directions.” IEEE Software (Mar. 1987), 41–49.Google Scholar
  6. [6]
    Holibaugh, R., Cohen, S., Kang, K., and Peterson, S. “Reuse: Where to begin and why.” Proceedings of Tri-Ada '89. Oct. 1989, 266–277.Google Scholar
  7. [7]
    Prieto-Diaz, R. “Domain Analysis for Reusability.” Proceedings of COMPSAC 87. Oct. 1987.Google Scholar
  8. [8]
    Cardow, J. E. “Issues on Software Reuse.” Proceedings of NAECON — 1989. Piscaway, NJ: IEEE Computer Society Press, May 1989.Google Scholar
  9. [9]
    Siebels, P. D., Capt, USAF. Examining a Layered Approach to Function and Design Representation for Reusable Software Components. Master's Th., Air Force Institute of Technology, Wright Patterson AFB, OH, Dec. 1992.Google Scholar
  10. [10]
    Lee, K. L., Michael S. Rissman, Richard D'Ippolito, Charles Plinta, Roger Van Scoy. Paradigm for Flight Simulators, 2nd Edition. Technical Report CMU/SEI-88-TR-30, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pa., Dec. 1987.Google Scholar
  11. [11]
    Engle, C. B., Ford, G., and Korson, T. Software Maintenance Exercises for a Software Engineering Project Course. Educational Materials CMU/SEI-89-EM-1, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pa., Feb. 1989.Google Scholar
  12. [12]
    Pierce, K. R. “Rethinking Academia's Conventional Wisdom.” IEEE Software 10, 2 (Mar. 1993), 94–95,99.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • James E. Cardow
    • 1
  • William D. WatsonJr.
    • 2
  1. 1.Air Force Institute of TechnologyUSA
  2. 2.The Charles Stark Draper Laboratory, Inc.USA

Personalised recommendations