View Full Version : Can a system be an actor in a use case?
beej199
07-18-2006, 01:43 PM
Ive read in a couple of posts that a use case can only have a human actor in it, is this true?
If you can not have a system, how would someone document an automated system using a use case?
achen
07-18-2006, 04:35 PM
Ive read in a couple of posts that a use case can only have a human actor in it, is this true?
If you can not have a system, how would someone document an automated system using a use case?
Some people like to have systems as actors. However I prefer not to as the point of a use case is to provide a simple format for business users to diagram out the tasks that they do to accomplish their job. For systems I prefer to use a process diagram. However use cases can work fine for systems.
LucyBA
07-19-2006, 02:00 PM
Ive read in a couple of posts that a use case can only have a human actor in it, is this true?
Definitely they can be actors. I think the system in the use case is actually an actor. I have read conflicting things on this, indicating there is a split opinion on whether the system you develop is an actor or not, so I am sure some will disagree with me.
I also think you can have a user interacting with multiple systems in a use case. You can even have a user interacting with a system that interacts with another system. Though to achen's point, that isn't always the best way to format the information.
I think you can make anything an actor and you can describe anything in a use case.
The real question is - is this the best way to present the information? I think by trying to shoehorn this description of interaction into a use case, you are missing out on what they should be used for.
In other words, I totally agree with achen's post and don't really have anything original to add. :)
joe
rcauvin
07-19-2006, 09:25 PM
Ive read in a couple of posts that a use case can only have a human actor in it, is this true?
If you can not have a system, how would someone document an automated system using a use case?
An actor is a role. Anything can play that role, whether a human, another kind of animal, or another system.
An actor is a role. Anything can play that role, whether a human, another kind of animal, or another system.
I agree with this but I think it is important to not use the use case method to describe the actions of all kinds of actors in all cases.
joe
kwiegers
07-22-2006, 09:02 AM
Ive read in a couple of posts that a use case can only have a human actor in it, is this true?
If you can not have a system, how would someone document an automated system using a use case?
An actor is some entity outside the boundary of a system that interacts with the system for the purpose of accomplishing some valuable goal. So the "system" we're talking about cannot itself be an actor, because the system isn't external to itself and won't be interacting with itself in this sense. However, actors can be humans, other software systems, or hardware devices.
I agree that use cases are not always the best way to try to represent requirements. For real-time systems involving hardware devices, for example, an event-response table is often a better way to describe the system's behavior than trying to force-fit everything into a use case. Different kinds of nails need different kinds of hammers.
I think it's not wrong to describe external or even internal system but call this Agents and not Actors. After all, they are a part of your functional requirements.
That's your use case.
If something isn't part of an interaction with an external actor, no one will ever know whether it's implemented or not. That's why
- The system can't be its own actor. "A" system can be an actor, but not "the" system.
- Postconditions are evil. Any postconditions must show up in some use case (possibly as preconditions), otherwise there's no way to know whether they've been met. Anything else is sneaking design into the requirements.
One of the questions you need to keep asking is "is this really the requirement, or is it a presumed realization?" Leave design to the developers.
---
发信人: bakkhos (笨瓶子·喜欢乌咪·代替月亮惩罚你~:), 信区: SoftEng
标 题: 定时器在用例图里是不是一个角色?
发信站: BBS 水木清华站 (Sun Aug 12 00:37:37 2001)
摘自《非程序员》第一期
定时器在用例图里是不是一个角色?
Straybird:
假设一个用例是“查询设备状态”,角色是“设备”,每隔一定时间系统开始执行“查
询设备状态”这个用例。但是用例应由角色启动的,而“设备”这个角色只是被动的,
这个用例实际上是定时器启动的,定时器应当是角色。可是定时器是系统边界以内的对
象,不应是角色。是不是可以把时间看作角色,定时器作为对应角色的主动对象,这样
理解是不是就符合模型了?
刚开始学习用UML 做分析,许多地方不知理解的对不对,希望大家答疑解惑
worship:
我觉得定时器应是一个守卫条件,不应该看为一个角色。“查询设备状态”用例由其他
角色激活,然后启动计时器"守卫"对被动角色“设备”的访问。
Ms.OO:
角色应该是时间。角色有几类:用户,外系统,时间,所以,角色应该是时间。
“是否角色”与“是否在系统内表示”并无关联,例如,一个顾客上网站买东西,顾客
是角色,但系统内也会有“顾客”类。
角色是角色,它在系统外部工作,它可以映射系统内的某个类,也可以什么也不是
straybird:
多谢两位指点。从状态图上理解,把定时器作为守卫条件就很合理了,这样启动系统时
,用例激活,守卫条件满足时,执行用例,启动系统的操作员是激活用户的角色,是这
样吗?把时间作为角色也应该是合理的,只是这个角色有点抽象,呵呵。
--
有人认为:“解决问题的高手是天生的,而不是后天造就的。有些人拥有此技能,有些
人则没有。它是一项天生的创造性的技能…是教不会的。”
但事实上,成功解决问题很大程度上取决于系统的和受过训练的思考方式,这种技能能
被任何一个有天赋的人所掌握。结构化的方法会促进灵感和创造力-而不是阻碍它。
※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.166.223]
分享到:
相关推荐
Which of the following SQL statements can be used to add a row to a table? (a) CREATE (b) INSERT (c) APPEND (d) ADD Correct answer is (b) Your score on this question is: 10.00 ...
广东省博罗县泰美中学七年级英语下册 Module 9 Unit 2 He decided to be an actor导学案(无答案)(新版)外研版
山东省青岛市城阳区第七中学六年级英语下册 Unit 9 I want to be an actor导学案(无答案) 鲁教版五四制
An electronically tunable filter at 1 GHz is presented. The filter uses a suspended substrate design and commercially available varactors for filter tuning. The filter has a 60% tuning range from 700 ...
An Open Source Implementation of the Actor Model in C++
七年级下M9_He_decided_to_be_an_actor.ppt
actor-critic-public, "An Actor Critic Algorithm for Structured Prediction"的源代码 基于的序列预测演员评价纸张的参考实现( openreview,提交到 ICLR 2017 )的演员评估算法由 Dzmitry Bahdanau,Philemon ...
The iPad is the first real spontaneous device. It’s not as bulky as a laptop, and it doesn’t ... You can take the iPad into the kitchen and use an app such as picurious to find a menu and cook a meal.
• Recognize some indications of where a database could be useful • Define a statement of scope for a given database scenario chapter 2: Gathering information narrative Now that she has the scope of ...
JActor 是一个 Java 的 Actor 模式的实现,经过测试在 i5 CPU 上可支持每秒钟发送超过亿条消息,可能是目前最快的。这相当于是 Scala 的 Actor 的纯 Java 版本。 示例代码: // Create a mailbox factory with a ...
system for use in special effects. All geometry is rendered in large, reusable batches. The result is a game demo that is able to render hundreds of thousands of particles at 60fps. Chapter 9, A World...
本课件是一个优秀的英语ppt课件,课件中的相关知识点,帮助老师更好的完成本科的教学,...该文档为He decided to be an actor Life history PPT课件2,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
本课件是一个优秀的英语ppt课件,课件中的相关知识点,帮助老师更好的完成本科的教学,...该文档为He decided to be an actor Life history PPT课件3,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
You'll learn to test and deploy an actor system and scale it up and out, showing off Akka's fault tolerance. As you move along, you'll explore a message-oriented event-driven application in Akka. You...
ga_server 基于protoactor框架的actor游戏服务器
The book also includes examples of actor application types and two primary patterns of actor usage, the Extra Pattern and Cameo Pattern., Allen, the Director of Consulting for Typesafe—creator of ...
Addressing Function Approximation Error in Actor-Critic Methods
Allen, the Director of Consulting for Typesafe—creator of Akka and the Scala programming language—examines actors with a banking-service use case throughout the book, using examples shown in Akka ...
行动者 Actor Controller - An advanced character controller 0.77.zip行动者 Actor Controller - An advanced character controller 0.77.zip 1.适合学生学习研究参考 2.适合个人学习研究参考 3.适合公司开发项目...
After studying theatre in London, then working for several years as an actor in the US, Todd was introduced to Flash in 2000 and was quickly taken by how it allowed for both stunning creativity and ...