所在位置:答疑 - 内容   
A请求加好友,QQ需要B确认
 

Cwinq (49****35) 2012-05-15 16:46:25

Cwinq (49****35) 2012-05-15 16:46:30
这么画对吗?
Cwinq (49****35) 2012-05-15 16:46:57
被添加者需要确认添加,才能完成这个用例
向日葵 (10078161) 2012-05-15 16:50:10
跟注册有什么关系?
Cwinq (49****35) 2012-05-15 16:50:43
错了。 登录
Cwinq (49****35) 2012-05-15 16:51:19

向日葵 (10078161) 2012-05-15 16:53:23
你这个图的意思是说,登录的时候提示是否被添加好友了?
潘加宇 (3504847) 2012-05-15 16:54:26
最好画出业务序列图,映射系统用例
潘加宇 (3504847) 2012-05-15 16:54:48
你的系统叫"用户系统"?

Cwinq (49****35) 2012-05-15 16:57:17
没有。我只是打个比喻
Cwinq (49****35) 2012-05-15 16:57:36
我的意思是添加好友的时候,需要先登录
Cwinq (49****35) 2012-05-15 16:57:43
该怎么画?
Cwinq (49****35) 2012-05-15 16:58:18
其实我分不清extend和include的关系。
潘加宇 (3504847) 2012-05-15 16:58:26
第二个图看起来是对的。问题是你的系统是个什么系统。既然你的用例写"添加好友",看起来应该是一个"社交网络"领域的系统。这个领域里,"用户"这样的用词是不合适的,应该用另外的领域词汇

Cwinq (49****35) 2012-05-15 16:59:14
还有就是当发起者和依赖者都是同一类角色的时候。怎么画
潘加宇 (3504847) 2012-05-15 16:59:31
我们在课上讲了,没有学会写文档之前,不要乱用用例的关系。学会了写用例文档,自然就知道是怎么回事。

Cwinq (49****35) 2012-05-15 17:01:42
用例文档里面怎么描述关系我能明白,只是不知道extend和include的含义是什么。
Cwinq (49****35) 2012-05-15 17:02:08
就是对extend和include的定义没明白
潘加宇 (3504847) 2012-05-15 17:02:14
参见幻灯片
潘加宇 (3504847) 2012-05-15 17:02:29
用例文档里面怎么描述关系我能明白--你把用例文档贴出来看看
潘加宇 (3504847) 2012-05-15 17:04:15
这样回答你的问题吧:以QQ为例
用例是 会员-->加好友
会员-->接受好友
潘加宇 (3504847) 2012-05-15 17:05:33
你只要问会员,你在干什么,它的各种回答就是各种用法,也就是用例

Cwinq (49****35) 2012-05-15 17:08:53
所以没有辅执行者?
潘加宇 (3504847) 2012-05-15 17:09:53
不需要
潘加宇 (3504847) 2012-05-15 17:10:59
我知道你的疑问,那是因为你大脑里的研究对象已经有了变化
潘加宇 (3504847) 2012-05-15 17:12:21
你可能会想:A请求加好友,QQ需要B确认(我们也可以再扩展一下,再需要一个客服C来审核),才能加成功。
难道BC不是辅助执行者吗?

向日葵 (100***161) 2012-05-15 17:12:36
嗯,在序列图里面应该是不同的用户Instance吧?
潘加宇 (3504847) 2012-05-15 17:12:38
这里面就是用例的要点,期望和承诺
潘加宇 (3504847) 2012-05-15 17:13:12
A对QQ的期望和QQ对A的承诺。

Cwinq (49****35) 2012-05-15 17:13:37
期望是actor的。承诺是系统的。 actor期望能够加其他actor为好友,同时也期望自己再被加为好友之前能经过自己的同意
潘加宇 (3504847) 2012-05-15 17:13:39
序列图里面应该是不同的用户Instance吧
---研究对象又变了!你说的"序列图"是业务序列图,
潘加宇 (3504847) 2012-05-15 17:14:03
A B C QQ 是业务流程上的四个系统
潘加宇 (3504847) 2012-05-15 17:14:23
所以,少说这些废话,画出业务序列图来不就都明白了吗!
潘加宇 (3504847) 2012-05-15 17:14:47
参见幻灯片umlchina_4_req,用例图里面的"请假"例子
潘加宇 (3504847) 2012-05-15 17:16:33
A并不"等待"确认好友才能关机,也不会因为B不确认或者C不同意通过,就骂QQ是垃圾

Cwinq (49****35) 2012-05-15 17:17:02
有点明白了。
潘加宇 (3504847) 2012-05-15 17:17:36
乐不乐意加你好友,够不够审核的资格,是封装在B人脑和C人脑里的逻辑,不是QQ里面的逻辑

Cwinq (49****35) 2012-05-15 17:17:58
辅执行者应该是承诺的一部分。而不是后继操作的执行者。 我理解的对吗?
潘加宇 (3504847) 2012-05-15 17:18:27
对的,如果辅助执行者不帮忙,A就会骂系统
潘加宇 (3504847) 2012-05-15 17:19:57
例如,储户去取款机取款,提款过程需要银行后台系统帮忙,如果后者不帮忙,提款不成功,储户这时候离开是没有得到任何进展的
潘加宇 (3504847) 2012-05-15 17:20:27
因为储户来到取款机跟前的时候,他是带着"拿到钱"的期望来的
潘加宇 (3504847) 2012-05-15 17:21:58
实际上,你合并,拆解,系统总的步骤实际上是一样的,不一样的是我们对这个系统的价值的理解
潘加宇 (3504847) 2012-05-15 17:22:43
而这正是用用例来组织需求和用其他需求技术来组织的不同,从"做"到"卖"

Cwinq (49****35) 2012-05-15 17:23:41
我消化消化
向日葵 (10078161) 2012-05-15 17:35:05
,讲得很细很透彻。那,潘老师,您刚才说在"社交网络"领域,"用户"的用词是不合适的,那么应该用什么?
潘加宇 (3504847) 2012-05-15 19:09:51
阅读软件方法第二章