Made with infinite, undying, hatred in PlantUML (Lab2, zfp106)

Some notes on the decisions made here.

Question Answer
Why is Starship associated to CrewMember via aggregation? Because a Starship has 0 or more crew members and crew members aren't dependent on a Starship to exist. It is possible for a crew member to not be assigned to any Starship.
Why is Fleet associated to Starship via aggregation? Same reason as the previous. It is possible for a fleet to exist in name only without any Starships contained within at all. A fleet is quite literally an aggregation of any n number of ships in the first place anyhow.
Why does Lab2 with its main method have a dependency relationship with Fleet? Because a near identical example of this relationship was in the slides. We will primarily use it for classes referenced in main.
Why don't you show associations/other connections to Java standard library classes like ArrayList? Because we can keep going down that rabbit hole until infinity (or by my count in my IDE ~5 - 6 levels of indirection from any given Java standard lib class to the bottom of the chain). I'm not interested in showing the full diagram all the way down until we hit the base Object class.

Your answers are wrong and you should feel bad. Them's fighting words, and I have a whole hill here to defend and die upon, sword gleaming in the midnight sun.

The actual UML diagram below:

Uml Diagram