Reputation: 1674
I have one use case "Transfer request" linked to two Actors (Analyst and Inspector). The scenario/exceptions/alternate flow are essentially the same, but for each actor the pre-conditions and post-conditions are different. The request has different states, and that final state and previous states differ depending on the actor that's calling the use case.
How can I resolve this issue efficiently?.
Upvotes: 1
Views: 1083
Reputation: 13740
It sounds to me like your use case might be too abstract to be useful.
Sure, at a very high level of abstraction the steps might look the same, but if you have a different set of pre/post conditions, different states etc.. then maybe you should be using different use cases.
It could be something like "Transfer payment request" and "Transfer inspection request"
If indeed there is a similarity in steps of the execution then you can still, at the locical level, create an Abstract class "Request" that takes care of the common parts. The subclasses PaymentRequest and InspectionRequest can then take care of the particulars of their own context.
Just remember that use cases are primarily meant to agree on the requirements with the business. So for the sake of clarity it is often better to avoid all too abstract use cases.
Upvotes: 4
Reputation: 36313
You simply formulate those conditions as constraints in the pre-/postcondition. (It's simple like that.)
Upvotes: 0