Lars and others,

When it's a requirement that a system acts "independently" on the basis
of time, it is unnecessary, but probably harmless, to use Time as an
actor.  What you're doing in that case is putting an aspect of the
platform outside the system boundary, which is within the scope of your
authority as analyst (thank-you, Les Munday).

I don't think modelling Time as an actor does much good in ordinary
cases, but it's cool (which may be enough motivation to do it).

As to communicating with customers, there may be less here than meets
the eye.  Because of constraints on your time and effort, there are
numerous cases in which you just have to tell a customer "at this point,
a miracle happens", or give a Startrek engineer's explanation that
passifies 'em.  I'm not knocking this approach very much -- it may be a
practical and effective substitute for knowledge when the user doesn't
need to know the real details.

As to communicating with designers, for some of them you can just use
"communicating with customers", above.  For the grumpy designers that
want more, or actually get to implement the timely behaviour, you should
avoid letting them force such implementation details into high-level
models of the system.  Unless it's really cool, of course.

This is all a matter of opinion, for now.  When use case diagrams or
similar models can be used to generate executable systems automatically,
issues like this will meet a definitive test.  Until then, you can
Rational-ize doing what you please.

Finally, in answer to Lars' PS, a riddle (probably quoted more or less
correctly) from J. R. R. Tolkein's THE HOBBIT:

"This thing all things devours;
Birds, beasts, trees, flowers;
Gnaws iron, bites steel;
Grinds hard stones to meal;
Slays kings, ruins town,
And beats high mountains down."

-Eric :?)

Lars Hauschultz wrote:
> 
> Hi Eric and others,
> 
> I agree that you don't have to model everything. But what if it is an
> important feature of the System that it from time to time does something on
> its own? How do you communicate this feature to the customer and the
> designers, if you do not include it in your model? If you include it and you
> then have to write a number of use cases, which start with "This use case is
> initiated automatically every ...", wouldn't it be convenient to have Time
> as an Actor to hold all the strings to these use cases in its hand, even if
> Time does not get a value from doing so?
> 
> Lars Hauschultz
> 
> P.S.: How do you actually know that Time does not get a value from this? Who
> knows Time that well?  ;-)
> 
> -----Original Message-----
> From: Eric D. Tarkington [mailto:[EMAIL PROTECTED]]
> Sent: 22. marts 2001 19:33
> To: [EMAIL PROTECTED]
> Subject: Re: (ROSE) Use cases: When its not clear who gets the value
> 
> We had another thread on similar issues a couple of weeks ago, and
> nobody suggested the simplest solution:  don't model time or trigger as
> an actor.
> 
> You don't have to model everything.
> 
> In this example, there will be a use case that wakes up "mysteriously"
> at the right time, whenever that may be.  Use of a call to the operating
> system is an implementation detail that we don't need to model in a use
> case diagram -- it's a "how", and we're at the "what" level.
> 
> In documenting the timely use case, you can start the behaviour with
> "This use case starts when the timer times out."  A few more adjectives
> wouldn't hurt.  Maybe the timer issues a more informative command.
> 
> On the other hand, peoply find it nifty to make Time an actor, and I
> don't see the harm.  The system can talk to Time (by some protocol
> hidden in the implementation) to say "Wake me up at 8:00am," and Time
> can talk to the system at the appropriate moment.
> 
> Obviously, Time gets no value from the use case, other than fulfillment
> of it's mysterious compulsion to say "beep" after some
> externally-supplied interval.  This is sorta like a dog fetching a
> stick:  you are the system, you selected and threw the stick in
> anticipation of the dog's reaction, and the dog looks an awful lot like
> an actor when he brings it back.
> 
> Don't worry, be happy.
> 
> -Eric
> 
> "Frank I. Reiter" wrote:
> >
> > Thanks to all those who have replied so far.
> >
> > A couple people have asked, in one way or another, "Who is it that
> ultimately gets value from this use case?"
> >
> > What the use case accomplishes is that the information is the system's
> database is more up to date after each execution than immediately before.
> Who cares about that?  Several actors who get that value through other use
> cases in which they interact with the information that this use case
> updates.
> >
> > They do not however participate in this interaction between my system and
> an external system, and may not in fact be aware that it even happens.
> >
> > Since they do not initiate, participate in, or know about this use case, I
> have trouble thinking of them as actors.
> >
> > Frank.
> ************************************************************************
> * Rose Forum is a public venue for ideas and discussions.
> * For technical support, visit http://www.rational.com/support
> *
> * Admin.Subscription Requests: [EMAIL PROTECTED]
> * Archive of messages:
> http://www.rational.com/products/rose/usergroups/rose_forum.jtmpl
> * Other Requests: [EMAIL PROTECTED]
> *
> * To unsubscribe from the list, please send email
> *
> * To: [EMAIL PROTECTED]
> * Subject:<BLANK>
> * Body: unsubscribe rose_forum
> *
> *************************************************************************
> ************************************************************************
> * Rose Forum is a public venue for ideas and discussions.
> * For technical support, visit http://www.rational.com/support
> *
> * Admin.Subscription Requests: [EMAIL PROTECTED]
> * Archive of messages: 
>http://www.rational.com/products/rose/usergroups/rose_forum.jtmpl
> * Other Requests: [EMAIL PROTECTED]
> *
> * To unsubscribe from the list, please send email
> *
> * To: [EMAIL PROTECTED]
> * Subject:<BLANK>
> * Body: unsubscribe rose_forum
> *
> *************************************************************************
************************************************************************
* Rose Forum is a public venue for ideas and discussions.
* For technical support, visit http://www.rational.com/support
*
* Admin.Subscription Requests: [EMAIL PROTECTED]
* Archive of messages: 
http://www.rational.com/products/rose/usergroups/rose_forum.jtmpl
* Other Requests: [EMAIL PROTECTED]
*
* To unsubscribe from the list, please send email
*
* To: [EMAIL PROTECTED]
* Subject:<BLANK>
* Body: unsubscribe rose_forum
*
*************************************************************************

Reply via email to