> I have the following Use Case study on which a Use Case diagram is
> required. What I need is assistance on the selection of the actors...
> Please can you advice which actors should be selected for this
> prospect diagram?
>
The purpose of these forums is not to do your homework for you; that is
part of the learning experience. However, I will provide some general
comments that might be useful.
Use cases describe *interactions* between the software and the outside
world. So the first thing you need to do is figure out what activities
will be done by the software and what activities will be done by people.
That is, you need to separate activities that people will do to prepare
for interacting with the software. Those activities can be ignored
because all you care about in the use case is the end interaction after
that preparation.
[In some situations one needs to understand those preparations simply to
decide what functionality the software can automate. But that is a
separate issue for requirements analysis. Use cases are only about
requirements specification once one knows what the software requirements
actually are. As it happens, your case study seems to be aimed at
requirements analysis as well as specification because it does not
already provide that separation in an unambiguous way. IOW, the case
study reads more like an overall problem specification where the student
needs to figure out what the software should do and, consequently, what
the interactions are.]
So the focus in determining actors lies in analyzing the interactions
across the boundary between the software in hand and the entire outside
world. One uses actors to organize interactions that are logically
related by context. The notion of 'actor' is useful for that purpose; it
provides a convenient mnemonic for interaction context. But that's all
it really is: a device for organizing interactions with the software
with respect to problem space contexts. Generally the software will be
more robust in the face of volatile requirements if one can map that
device to something stable in the problem space. People with specific
job titles using the software often provide that mapping conveniently.
However, one should not get hung up on the idea that actors are software
users. Most of them will be, but there are many other contexts for
interactions. For example, in R-T/E the hardware is almost always an
actor relative to the software because it provides messages like
interrupts. It is also common for other software to be an actor so long
as it is not part of the software in hand that is being designed. Thus
if the software for your Accounts Section was not part of the software
you were designing, it would be an external actor. The key idea is that
an actor is any external entity that somehow interacts with the software
in hand.
--
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