volume_mute

Abstraction Level Reuse - Example

publish date2026/06/13 06:39:46.338593 UTC

volume_mute

A development team is designing a new notification system. They do not reuse any existing code, but they use the Observer pattern as the basis for their design. At which level of software reuse are they operating?

Correct Answer

Abstraction level - because they are reusing design knowledge (the pattern) without directly reusing any software

Explanation

Using the Observer pattern without reusing any actual code is abstraction-level reuse. At the abstraction level, you don't reuse software directly but rather use knowledge of successful abstractions (design patterns and architectural patterns) in the design of your software. The team is reusing the idea - the structure of Subject, Observer, ConcreteSubject, and ConcreteObserver - and implementing it themselves to suit their specific requirements.

Reference

Software Engineering, Ian Sommerville, 10th edition


Quizzes you can take where this question appears