This week's book giveaway is in the OCAJP forum.
We're giving away four copies of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) and have Khalid A Mughal & Rolf W Rasmussen on-line!
See this thread for details.
Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

use cases for MS Paint

 
Zubair Mushtaq
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
wat will b the possible use cases for MS Paint and wat actors we will specify ..plz help me
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What do users do with MS Paint? Are there different types of users which will want to do different things?
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
BTW, this is more of an analysis topic than a design topic - so I think the Process forum is more appropriate. Moving this thread...
 
Zubair Mushtaq
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
but i have to make a diagram for it so i have specified only one actor named as user as there are so many types of user using MS Paint so obivously i cannot list down all those actors..so wat should i do?
and can i consider option in MS Paint (e.g Open File , Invert Colors) as use cases?
plz guide me
 
Zubair Mushtaq
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
any one plz reply my last post
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Please show some patience - we are all doing this in our free time, and we don't incessantly monitor the forums. It's possible to have to wait a day for an answer.
Yes, only using one actor might be OK. You only should use more if you want to document fundamentally different user groups (such as user vs. administrator).
And, yes, you *could* basically transform menu commands into use cases, though the granularity should depend on what you are extracting them for.
 
Andres Gonzalez
Ranch Hand
Posts: 1561
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
That sounds like a good homework for me
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This is a pretty neat exercise if you're new to use cases - take a familiar application and think about who uses it and what for. One informal definition of a use case is that it describes some interaction that is of value to the user from beginning to end. Somebody walks up to the system, does something and walks away satisfied.
Think about create an image, modify, view? Is that one use case or three? I often paste a screen snapshot into Paint, select a smaller area, copy out again. Is that a unique use case or are all the interactions and requirements covered by one of the others? BTW: Do File/New with an image on the clipboard - is the new image the size of the one on the clipboard? (I think so with Paint) Is that an interesting use case flow? If not, how else might you capture that as a requirement?
Hope some of those questions spark some interesting ideas for you!
 
Zubair Mushtaq
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
so mister STAN JAMES: plz tell me name of actors for the MS Paint in ur opnion?
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Stan James:
Think about create an image, modify, view? Is that one use case or three?

That depends, of course, on what we are writing the use cases for, doesn't it?
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I only see one actor, the cheerful user sitting at the keyboard being delighted by Microsoft software. Do you see any others?
BTW: I usually don't answer these questions, I only throw them out. With luck I may fool you into thinking I actually know the answers and I'm wisely leading you toward knowledge. Well, some times I do have an opinion. Once in a while. Seriously I hope the questions will trigger someone into eloquent disagreement with me because they teach me the most.
 
Jeroen Wenting
Ranch Hand
Posts: 5093
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Is an application launching Paint to display an image a separate actor from the user sitting behind the screen opening an image?
If that application has different use cases compared to the physical user I'd say it is.
Not knowing the actual use cases (iow, functionalities of Paint exposed by COM interfaces) I can't be certain.
Let's make it a separate actor for now, we can always decide it's not at a later moment as the use cases become clear.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Jeroen Wenting:
Is an application launching Paint to display an image a separate actor from the user sitting behind the screen opening an image?

Depends on what you want to communicate.
Do you focus on the technical view? "The system can be used by other systems to display an image." Actor is the other system.
Or do you focus on the users view? "The user can use this system as a viewer inside of other systems." Actor is the user.
The latter is probably more appropriate for communication with the customer. But I don't think that it makes a significant difference in most cases.
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Just me: The other system starting Paint is a very interesting actor because it requires completely different interfaces with pretty serious architectural impact.
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
For technical reasons, the other system is of interest to the developers, yes.
But knowing which human user is actually interested in that functionality and for what reasons might be even more interesting for both technical and business reasons.
I don't think either way would be "wrong".
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hmmm, but I think a use case diagram like
User ---> OtherSystem ---> MyPaintUseCase
would be right out. Other System is a good actor, but I don't care how it gets tickled to do its thing. I only have to bulid MySystem's interface to satisfy OtherSystem's calls. Waddya think ... am I putting myself in danger by ignoring the human's business motivation? Or is that OtherSystem's problem?
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Stan James:
Hmmm, but I think a use case diagram like
User ---> OtherSystem ---> MyPaintUseCase
would be right out.

I don't even think that's a valid use case diagram. But weren't we talking about use cases (notice the missing "diagram") here?
I could imagine a use case like:
Embeded View
============
Show image from inside another program (for example an image embedded into a text document from inside the running text application).
Other System is a good actor, but I don't care how it gets tickled to do its thing. I only have to bulid MySystem's interface to satisfy OtherSystem's calls. Waddya think ... am I putting myself in danger by ignoring the human's business motivation? Or is that OtherSystem's problem?

If you don't care how the other system gets tickled *and* you are writing the use case for yourself, it's certainly ok! With other words: use whatever the *audience of the diagram* does care about. It's really so simple...
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic