In a low-level design diagram, which notation best represents a class implementing an interface?
Think about how interfaces are usually shown differently from inheritance in UML.
In UML, a class implementing an interface is shown with a dashed line and an open arrowhead pointing to the interface.
Which notation correctly shows inheritance between two classes in a low-level design diagram?
Inheritance arrows usually point from the child to the parent class.
Inheritance is shown with a solid line and an open arrowhead pointing from the subclass to the superclass.
When a class implements multiple interfaces, how should this be represented in a low-level design diagram?
Think about how each interface is separately implemented.
Each interface implemented by a class is shown with its own dashed line and open arrowhead pointing to the interface.
Which statement best explains a key tradeoff when choosing inheritance over interface implementation in system design?
Think about how inheritance shares code but can create dependencies.
Inheritance shares code but creates tight coupling, while interfaces increase flexibility without code reuse.
Given a system with 10 classes where each class implements 3 interfaces and inherits from 1 parent class, how many total relationship lines (inheritance + interface) will appear in the low-level design diagram?
Calculate inheritance lines plus interface implementation lines for all classes.
Each class has 1 inheritance line and 3 interface lines, so total lines = 10 * (1 + 3) = 40.