> The question is: what connector on a Use Case Diagram should be used
> between UC.1 and UC.2?
> UC.1 <--<<include>>-- UC.2?
> No - because UC.2 does not wait for the result of UC.1.
>
I think you are reading too much into <<includes>>. Remember that use
cases are only in UML to provide traceability for requirements to the
model solution's elements. So all UML is doing is organizing the use
cases; it does not deal with the semantics of use case content at all.
The <<includes>> is just saying that UC.1 is relevant to UC.2 in every
situation where UC.2 is relevant and UC.1 contains steps that _for some
reason in the problem space_ are being separated from UC.2. IOW, the use
case step in UC.2 that starts UC.1 is always executed and there is a
valid freason for separating out UC.1's steps into its own use case. So
I would not have a problem with using <<includes>>. However, I agree
with RJB that probably the best solution is to not qualify the connector
at all because semantically UC.1's steps are not really part of UC.2.
> UC.1 --<<extent>>--> UC.2?
> No - because there is no any specific condition under which UC.2 runs.
> It runs always.
>
I agree.
> There is a connector <<invokes>> In Enterprise Architect but I suppose
> this is not UML compilant.
>
Not necessarily. UML is extensible so there is nothing to prevent an MDA
profile from providing additional qualifiers. The situation is analogous
to stereotypes. UML predefines some stereotypes, like <<subsystem>>, but
that does not mean one cannot add other stereotypes. Modeling tools all
have an MDA profile that governs their use and they often provide
specialized meanings of event new elements beyond OTS UML. So if you are
using EA for all your models, that might be the best solution for this
special situation. Just be sure that is what they actually mean by that
qualifier. B-)
--
Life is the only flaw in an otherwise perfect nonexistence
-- Schopenhauer
H. S. Lahman
H.la...@verizon.net
software blog: http://pathfinderpeople.blogs.com/hslahman/index.html
--
You received this message because you are subscribed to the Google Groups "UML Forum" group.
To post to this group, send email to umlf...@googlegroups.com.
To unsubscribe from this group, send email to umlforum+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/umlforum?hl=en.
In fact, one could say that the whole idea of "this is a background
process" and "this is a UI to start a background process" is not at all
what use cases where intended for. The UC should be talking about what
those functions will accomplish and, at most, might mention that the
function will be continuously running. I would wonder if one would even
bother mentioning that it has to get started in some way unless there
were something exceptional about the startup requirement.
Thomas Mercer-Hursh
Good advice. However, do you think that most folks are getting too detailed
and specific in their Use Cases? Shouldn't most of the Use Case analysis be
done in the decomposition to Activity Diagrams, with interruptible
activities for async, and forks and joins for synchronization? I found
sequence diagrams more straightforward for DFAs where the sequence
propagations are known.
Ken
Hope this helps.
--