Here are some videos of me doing these past exam paper questions. Note that
I did not have access to the mark scheme in doing these; it is conceivable
that they contain mistakes other than the ones noted below, so feel free to
tell me/ask about any you spot. Note also that there is always more than
onen way to get full marks.
Summer 2010 Question 2
Part (a). I misspoke and said "underlined" where I meant "italicised" at
one point. Note also that I made a mistake in this part which I caught in
doing the next part - see next video!
Part (c). I misspoke and said "in parallel" when I meant "in sequence",
near the end. Also the video ends part way through the last sentence when
my camera ran out of memory - it should say "because no info about paying
in Q" or similar.
Summer 2010 Question 3
A question about this came up at a tutorial. Strictly speaking, in today's
UML, the way this video treats some of its transitions isn't quite correct.
For the 2015 exams, however, it would be acceptable. Here are the gory details for anyone
interested or bothered.
Resit 2009 Question 2
Part (a): I misspoke and said "attribute" where I meant "argument" in
filling methods of Dispenser. Note also that get should be private, or
better still renamed.
Part (b). This video shows me dithering slightly about whether the drinks can object gets newly
created or found from somewhere; sorry about that.
Resit 2010 Question 2
Parts (a) and (b)
points I noticed afterwards:
my solution gives no way to withdraw from a positive balance by an amount
that takes the overdraft beyond the overdraft limit, even with approval
(because you can't get to the approval process from there). This might or
might not be a problem but would be worth noting.
it doesn't really make sense to have arguments to the invented
approval/denial events, and it isn't necessary anyway. They should be
no-argument. An interesting exercise is to draw the corresponding sequence
diagram for what's probably going on here.