实例:银行应用:用户办理业务需要登录账号,登陆成功后可以检查账单、转账、付款等业务,请完成用例图?
一、用例图的功能:
1.哪些参与者会与需要开发的系统发生交互;
2.系统需要实现哪些功能特性;
二、参与者(actor,角色)
1.定义:“是存在于系统之外并与系统交互的任何事物。
2.分类:
业务参与者:使用用例,并从中获得好处。
系统参与者:直接同系统交互发起或触发业务或事件、
3.如何发现参与者:
使用、管理、维护系统的事物,需要与系统交互的用户。
三、用例(use case)
1.由参与者触发;
2.只描述单独的任务;
3.产生一个对用户有意义的结果 ;
4.如何识别用例:
识别用例最好的方法是从分析系统的参与者开始,考虑每个参与者是如何使用系统的,在识别用例的过程中通过回答一下问题从而获得用例:
特定参与者希望系统提供什么样的功能?
系统是否存储和检索信息,如果是,由哪个参与者触发?
当系统改变状态时是否通知参与者?
是否存在影响系统的外部事件?
哪个参与者通知系统这些事件?
四、用例图中的关系
1.关联关系:用例与参与者之间的关系,用实线连接;
2.包含关系:一个用例不能被独立执行,随着另一个用例的执行而执行,也随着另一个用例的消亡而消亡,由基本用例指向被包含用例;
如图所示即为包含关系,表示客户实现转账或者付款的时候都需要进行余额核实,但余额核实不单独出现,只有基础用例转账或者付款出现的时候才会执行,这就是用例间的包含关系。
3.扩展关系:当一个用例执行时出现某种特定的条件时,激活另一个用例。这里的一定条件称之为扩展点,被激活的用例称之为扩展用例,基本用例指向扩展用例;
4.泛化关系:子用例(子参与者)继承了父用例(父参与者)的一切行为和通信。同时还可以增加属于自己独有的行为和通信。
五、补充
1.初学者非常容易遗漏用例和参与者,比如经常遗漏计时器有时候也是个参与者;
2.扩展关系和包含关系的箭头需要区分开;
..................................描述用例:本节不讲解...................