Writing Usecases

UML

The ProjectVRM meeting resulted in me volunteering to write up some UseCases for the VRM initiatives. There are 3 use cases that the group had decided:

1) Unconcious emergency access to medical records
2) Personal RFP for rental car with extras
3) Change of address

(The change of address was where I had originally begun my thinking about personal portals or datastores as Joe terms them). So this may be the best place for me to begin.

Use Case Scenario: Address Change

The usecase was described as: User is moving. She updates her address in her personal address book and submits it to an address change service. The service updates everyone who should get the new address. User doesn’t need to separately notify everyone. and had two Actors: AddressChanger and AddressUser

As we tried to draw this up, it became clear that we were in fact trying to deal with two scenarios. However the system will need to produce an ultimate result on behalf of the subject of that address change - which is 'address changed' and for that condition to be satisfied, all of the parties who have a version of that address need to have it changed.

In UML, there is no sequence - if I change my address today it is immaterial when E*Trade update my account information with my new address as long as the next time E*Trade have an action that requires my address,they use the correct one. For example, they may need to mail me a paper account statement - obviously needing my correct address or less obviously to me, but equally needing of correct information, they will need my correct address if they are performing some geographical analysis on their customer portfolio. So the scenario, Address Change has two sub-processes:

  1. Capture Address Change
  2. Update Stored Address

.

Context and Narrative

The user requires an update to be made to their address of record, this may be because they have or will be moving home or requiring a different address to be used by various parties. A user may have a number of addresses on record for instance, home address, work address, delivery address, mailing address or temporary address - the process must accomodate changes to any of these addresses.

The status of the update (i.e. whether it is complete or not) will be when all parties who need the address are able to read the up to date address. A party may want to capture the updated address as soon as it is available or on-demand when they initiate a business process that requires the address. This process should work equally for a physical address, phone number or email.

Alice wants to update her address to ensure that all parties who need to communicate with her at the current address as opposed to any out of date one. For her convenience, she wants to do it at one time in one place, however as the consequences of an address change are significant, she wants to ensure that only she is able to make this update.

Scenario Narrative: Update Address Alice
Desired Outcomes Text

Bibliography

Initiative Brainstorming from the ProjectVRM wiki
Use Cases - An Introduction by Jason Gorman at ParlezUML
Visual Paradigm for UML Community Edition from Visual Paradigm (this page provides a download for the tool and CBT product tutorials)
UML Use Case Diagrams: Tips and FAQ by Andrew at CMU