Design Decisions 5: Rationale/Impact
Oven OV is a passive, not Active, Class
Making OV an Active Class with all its defined behavior is equivalent to merging it with its Oven Controller.
Making OV an active class is not necessary just to hold its Door’s Open/Closed status. We can make DoorStatus a data member of passive class OV, provided the OC updates this attribute, since a passive OV class has no behavior defined.
OC can update all Door Status attributes because event handling is serialized and events are processed for one OV at a time.