A Reuse-Based Software Development Methodology

Abstract

Software has been reused in applications development ever since programming started. However, the reuse practices have mostly been ad hoc, and the potential benefits of reuse have never been fully realized. Most of the available software development methodologies do not explicitly identify reuse activities. The Application of Reusable Software Components Project of the Software Engineering Institute is developing a reuse-based software development methodology, and the current direction and the progress of the methodology work are discussed in this paper. The methodology is based on the life cycle model in DoD-STD-2167A with refinement of each phase to identify reuse activities. The reuse activities that are common across the life cycle phases are identified as follows: (1) studying the problem and available solutions to the problem and developing a reuse plan or strategy; (2) identifying a solution structure for the problem following the reuse plan; (3) reconfiguring the solution structure to improve reuse at the next phase; (4) acquiring, instantiating, and/or modifying existing reusable components; (5) integrating the reused and any newly developed components into the products for the phase; and (6) evaluating the products. These activities are used as the base model for defining the specific activities at each phase of the life cycle.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
May 01, 1992
Accession Number
ADA258255

Entities

People

  • A. S. Peterson
  • James Perry
  • Kyo C. Kang
  • Robert Holibaugh
  • Sholom Cohen

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Human Systems

DTIC Thesaurus Topics

  • Abstracts
  • Accuracy
  • Computer Programming
  • Computer Programs
  • Computers
  • Control Systems
  • Cycles
  • Databases
  • Department Of Defense
  • Drug Abuse
  • Engineering
  • Life Cycles
  • Reliability
  • Software Design
  • Software Development
  • Software Testing
  • Test And Evaluation

Fields of Study

  • Computer science
  • Engineering

Readers

  • Software Engineering.