22
« on: October 04, 2002, 02:35:48 pm »
I'm in the same boat. I've read about UML over a year ago, but havn't started getting serious untill six months ago. Even after six months I'm feeling a little lost. It is a very slow process when you have to teach yourself.
I am constantly evolving (sometimes backwards evolution) my processes. I have stuck with the views provided by EA. Here is how I currently use them:
Functional
Here I document the individual requirements in a custom diagram. I try to list the requirements at the organ (heart, liver, etc.) level and maybe the appropriate molecule level.
Use Case
This is the most commonly used view. Here I make sure I am meeting the requirements captured in the functional view. I create sequence diagrams, as appropriate, for each use case. Between the functional view, the Use Cases, and Sequence diagrams, this seems to be enough information to translate from user desires to application.
Dynamic
I don't currently use this. All the action I need seems to be captured in the Use Case Sequence diagrams. If someone wants to convince me to use this, I'm listening.
Logical
This is where the rubber meets the road for the coder (me). As the Use Cases evolve, I create a domain model. This is a wattered down version of the Class diagrams. I use the domain model to capture business objects (not classes). From the domain model, I derive the class model diagrams. In most cases, the classes are the same as the objects in the domain model, they just have methods and more properties.
Component
This is another view I don't use. By the time I should be using this view, the project is behind schedule (in the minds of management) and I need to get something to the users. If I should use it, tell me why, I'm listening.
Deployment
This pretty much follows the same reasoning as the Component View (ditto).
Custom
I have a package called User Interface in this view. Here I make blocky models of the interface and create the appropriate navigation maps. The screen mockups are stored in their own packages to keep organization in the tree. The navigation is done on a diagram using links to the various mockup diagrams and associations pointing the way.
I hope this helps (someone) and that others respond with their processes.