> at this point I am not yet thinking of modeling UML to couple use-cases, what we are doing for the moment is simply adding some 'annotations' that will allow us to refine the PIM into a PSM more easily
> I will replace this functionality by something more appropriate in the future, but it will require me to properly understand how I could and should do it using 'include and 'extends'... right now I did not really investigate how it can be done
> for example:
> let's say a use-case includes another one, does that mean it is included at the final state ? I assume does is not defined..
yes thats right. it is not defined and also makes no sense. it is only
defined if use-case A includes use-case B, you can use use-case B
independent from A. BUT use-case A ONLY is fullfilled if use-case B was
used, but the UML does not define whether it is a pre-, post-condition
or at which time.
for extends it means that if use-case A extends use-case B then use-case
B could be used independent and it produces a closed functional state.
for use-case A (the extender) this means under certain circumstance
during usage of A the use-case B will be used at a given <extension
point> from A.
at least this means for your cartridge (bpm4struts) please do not keep a
look to <<include>> and <<extends>> BUT combine activity-diagrams with
also what does it mean when a use-case has 2 final states .. do you need
2 includes ? if yes, which one maps to what final state ?
of course not. a use-case does not have any state or any context.
so e.g. an use-case called Login describes a functional requirement of
the system and it is functional the same for a customer, staff or admin.
but the technical activity is modelled elsewhere.
> I need to know the answers to these questions before I can continue
the <<include>> and <<extends>> should only be used for modelling for
now and perhaps for ever. this elements are useful model-constructs, but
mostly they will wrongly be used to decompose the functional
requirements into too small pieces (e.g. use-case "enter firstname").
> I prefer to take a pragmatic and not-so-uml approach for the moment because at the end of the day I still need to have a tool that actually helps me in my development
allright. keep the andromda-M02-drop this weekend in mind ;-)
> let me know if you have concrete ideas in this matter, I am very interesting in continuing this discussion
hope this helps
phone: +49 (0)341/8608899
mobile: +49 (0)175/5767357
fax: +49 (0)6173/9447357