volume_mute
Four Levels of Software Reuse
publish date: 2026/06/12 23:48:7.421900 UTC
volume_muteSoftware reuse is possible at several different levels of abstraction. The diagram below shows these levels. Match each level to its correct description.
To complete the line match
- Click on an item in the first group
- Click on the match in the second group
To delete a match, double click on a line
Level
Component level
Abstraction level
Object level
System level
Description
You don't reuse software directly but use knowledge of successful abstractions in design; design patterns and architectural patterns are examples
You directly reuse objects from a library rather than writing the code yourself; requires finding appropriate libraries and checking if objects and methods offer the required functionality
Components are collections of objects that operate together to provide related functions and services; you adapt and extend by adding your own code - e.g., using a UI framework
You reuse entire application systems; usually involves some configuration of these systems, which may involve integrating several application systems
Correct Answer
(1) Abstraction level,You don't reuse software directly but use knowledge of successful abstractions in design; design patterns and architectural patterns are examples
(2) Object level,You directly reuse objects from a library rather than writing the code yourself; requires finding appropriate libraries and checking if objects and methods offer the required functionality
(3) Component level,Components are collections of objects that operate together to provide related functions and services; you adapt and extend by adding your own code - e.g., using a UI framework
(4) System level,You reuse entire application systems; usually involves some configuration of these systems, which may involve integrating several application systems
Explanation
The four reuse levels: Abstraction - reuse design knowledge (patterns); Object - reuse library objects directly (e.g., JavaMail library); Component - reuse component frameworks, adapting them by adding specific code (e.g., UI framework for event handling and display management); System - reuse entire commercial off-the-shelf (COTS) application systems through configuration.
Reference
Software Engineering, Ian Sommerville, 10th edition
