What are the 3 agile modelling principles?
(b2, p7)
What are the 4 useful sources of relevant objects?
(b2, p8)
What are the 4 guidelines suggested for choosing which concepts to discard?
(b2, p9)
What is a class model?
A class model indicates which classes are in the system and describes associations between those classes. It describes what is true about the entire system at all times.
(b2, p13)
What is an object model?
An object model is a collection of objects, where every object in the model is an instance of a class in the class model. The object model represents one specific configuration of the system - a snapshot of the system at one instant in time. An object may be thought of as an instance of a class model.
(b2, p13)
What is a navigation expression?
A navigation expression provides a way of naming another object or its attributes relative to a starting object by referring to intermediate role names.
(b2, p27)
What is a recursive association?
A recursive association is an association where both ends terminate at the same class.
(b2, p27)
What is a qualified association?
A qualified association is an association at one end of which there is a qualifier, consisting of one or more attributes. The values of the attributes (taken together) uniquely identify the objects in the class at the other end of the association.
(b2, p41)
What is the difference between inheritance and generalisation?
Inheritance is the consequence of a generalisation/specialisation relationship - a subclass inherits the features of the superclass.
The term inheritance tends to be used by programmers, whereas the terms generalisation and specialisation are used by analysts and modellers.
(b2, p52)
What is an invariant?
An invariant is something that must be true about the system at all times.
(b2, p56)
What are 3 common kinds of constraint?
(b2, p56)
What is OCL and what does it stand for?
OCL (Object Constraint Language) is a formal notation defined by UML which combines logical expressions with set notation to allow a more rigorous specification of a constraint.
(b2, p57)
What are the 2 risks involved with trying to record all possible constraints on a model?
(b2, p57-58)
Give the following invariant in OCL format:
A child must be younger than both father and mother
**context** Child **inv**: self.age \< self.father.age and self.age \< self.mother.age age
(b2, p60)
Give the following invariant in natural format:
**context** Child **inv**: self.age \< self.father.age and self.age \< self.mother.age age
A child must be younger than both father and mother.
(b2, p60)