I have been re-reading my part 2 assignment over and over again, but there is still one thing I cannot get straight: There is one type of object in the given business domain model that is not directly referred to by any of the use cases I am asked to support in my implementation.
So far I have added this as an entity in my class diagram (it is clearly related to other persistent entities) , but I'm not sure what I should do about the sequence diagrams.
I think I have three choices here:
1. Make assumptions about the given use-cases that would justify the use of this additional class in them.
My instinct tells me this is probably the best choice, since the general instructions clearly say that we should address all objects and relationships in our design. However I'm a bit worried because the assumptions I would have to make would introduce more classes and additional steps in the existing use-cases, so there is a risk of over-complicating the solution.
2. Assume that the entity is involved in another completely new use case and provide sequence diagrams for that use case as well.
Not sure if this would be a good idea. nor how I would justify this.
3. Assume the entity is involved in another use case that I'm not supposed to deliver as part of the assignment and ignore it in all other diagrams (but document the reason I am doing it).
This also does not feel right, as that would mean that I would be submitting only part of the architecture of the complete system.
Any thoughts or suggestions on this?
I would be especially interested to know if you had to face a similar issue in your assignment. Did you use all objects from the Business model in your sequence diagrams? Do you think it is a good idea to "extend" use cases (for e.g. by assuming that one step of the use-case implies several others?).
Ranganathan Kaliyur Mannar wrote:Bad idea. Bad idea to 'extend' or 'create' new use cases. In the sequence diagrams, you can try and show when that 'entity' is created (maybe as part of creation of 'related' or 'parent' entity).
Thanks for the reply. I really appreciate it.
I also found this older post where another rancher was asking more or less the same thing. One of the responses there also suggested that it might be OK to completely leave out an entity from the sequence diagrams if it's not mentioned in the use cases (but not from the class diagrams of course).
I think I'll go with your suggestion and try and fit the entity's creation along with one of the parent entities and document this as an assumption.
Ps. If anyone else has an opinion or past experience on this issue, I'd still be interested to know.
subject: Are all Domain Objects meant to be used in the requested use cases?