Explain what is meant by a dependency relationship.
A relationship that "needs, uses, or requires". Used when one class USES another within it's code but DOES NOT HAVE A DATA ELEMENT of that type. Dashed line with arrow head. Arrow points to the required dependency. EG a class requires "IO"
Explain what is meant by a realisation relationship.
Explain what is meant by an aggregation relationship
It's a "has a" relationship. A class has a data member that is the type of another class. However, when the whole disappears, the parts DO NOT!. Shown with a solid line and an open diamond at the whole end.
Explain what is meant by a composition relationship.
It's a "has a" relationship. A class has a data member that is the type of another class. When the object disappears, all of it's parts also disappear. Shown in UML with a solid line and a solid diamond at the "whole" end.
Explain what is meant by a specialisation relationship.
When a class has all the characteristics of another class, but adds information. We derive a child class from a parent class and then add to it. Only specialisation if you can relate using "is a". Eg a "Car" "is a" "wheeled vehicle". AND, the child class uses every member variable declared in the parent, AND the child class requires every method defined in the parent.