Lounge - Is a database an actor? - Asked By Murali Joshi on 17-Dec-11 05:24 AM


Is a database an actor?

Anoop S replied to Murali Joshi on 17-Dec-11 05:37 AM
You know it depends on what you want to do with that Database...
I mean if the DB are going to be the only one used forever and ever in your product, it can participate has a component of design (or a design constrain), and you don't have to model it (well at leas not in the UC Diagram).

BUT if your software are going to support to use one DB or Another (like using Access in a SingleMode and Oracle or DB2 in a Corporation Network) its better to think on it has an actor who plays a ROLE with your system.

You know, Actors define the boundary of your system, for them to define the Strongest interfaces (I mean the ones that can changes most) of the system.

But remember the complexity of having an actor everywhere on your model. I personaly would leave it has a Design Constrain! (Not in te UC diagramOnly Remember UC define Hilevel requirements (They are not ssuposed to deal with design or components)
Riley K replied to Murali Joshi on 17-Dec-11 05:50 AM

Normally our application regularly interacts with the database, regularly queries are executed

Nowadays databases are not just storage containers

In the oft-used ATM examples the people are actors and the receipt printer is and, I believe, the database that keeps track of how much money the bank thinks you have is.

That's because the database that keeps track of how much money people have at the bank is complex, large, and mission critical. How will you write a use case for the database failing to update without a database actor?

Suchit shah replied to Murali Joshi on 17-Dec-11 07:38 AM
The actors are those who will perform some work in the project like Admin is the actor and user is the actor user sends request for registration to the admin and he confirm him the data stored in some place which is not counted as actor.

Every dbms that we use now-a-dayz, usually are not just a storage containers, but we query them, orelse perform tasks and operations. even if we wanna get some result, we query them from business logic directly or use some stored procedure elseway.

So, I consider it that way, where database can be considered as an actor, as it should be.
Jitendra Faye replied to Murali Joshi on 19-Dec-11 02:19 AM
While modeling a database as a actor only thing that one needs to keep in mind is whether the database is a part of the system under discussion , if thats the case then database need not be modeled as an actor. If the database is an external database, then it can be modeled as an actor.