Software Design and Modelling (2022-2023)[SEM2]
Lab Assessment Revision Quiz
Click Here To Drag
Question A1
In LucidChart draw a UML class diagram showing:
(a) a class Participant with a private attribute name of type String and a public operation join taking a VideoCall as argument and returning a boolean
(b) an abstract class VideoCall
(c) concrete subclasses ZoomCall and TeamsCall of VideoCall
(d) an appropriate relationship between VideoCall, ZoomCall and TeamsCall
(e) an appropriate relationship between Participant and VideoCall, demonstrating that at any one time a given participant can be in at most one video call, while a video call may have any number of participants (including zero, say, to account for scheduled calls).
Tick the feedback statements you think this submission received (scroll for more):
You need a Generalization, shown with an unfilled triangle head, between ZoomCall, TeamsCall and VideoCall. If you use a -> head you are showing a navigable Association which is a completely different thing.
You're showing interface realization with the dashed line, not generalization - given that VideoCall is an abstract class not an interface the latter is what you need.
At the VideoCall end of the association with Participant, you need multiplicity 0..1, because the question said that a participant could be in at most one video call.
You're showing a dependency between Participant and VideoCall not an Association. Now there always is a dependency when there's an association - but dependency is not an instance-level concept so it doesn't then make sense to put multiplicities on a dependency arrow.
You do not have information about navigability, so probably better not to show any.
ZoomCall and TeamsCall should not be abstract, only VideoCall.
It is arguable, but I don't think an aggregation between Participant and VideoCall is really appropriate. A Participant is not really a *part* of a VideoCall, even though we use the phrase "to take part in".
Really you should name the association (or alternatively the association ends).