I would say, when you work as an architect then there are always cases where, what you think may be different then what other thinks. It may be wrong from one architect's point of view and may be true from other's point of view.
The best thing to do while working in on a real software,you need to understand your clien't requirement and make necessary changes as per requirement it may be not accepted at a first glance by an outsider architect who doesn't know the requirement in detail but they are needed from application point of view.
I would suggest rather then digging too much for unidirectional-bidirectional, do what you feel correct. Because you are gonna justify you design in the essay exam.
As far as
SCEA concern, I suggest to implement all the relationship as a bidirectional, untill unless you are very clear, about the unidirectional relationship among the classes.
[ September 05, 2005: Message edited by: Jignesh Patel ]