您的位置:首页 > 其它

UML图之用例图

2015-11-13 22:01 232 查看

一、用例图知识概要

用例图(User Case)主要由参与者,用例,系统边界和关系组成,主要用于对系统,子系统或类的功能进行建模。用例图类似之前学的软工里的需求分析,都是对确定用户的需求,即系统的功能,并且对后期的测试以及整个过程中的其他工作流起到指导作用。



(一)寻找执行者的原则

1.谁使用该功能。

2.谁需要系统支持日常工作。

3.谁维护

4.硬件有哪些。

5.与其他系统的交互有哪些。

6.谁对系统结果感兴趣。

(二)包含 VS 扩展

1.包含

包含关系和对象间的调用关系比较像,它描述的是一个用例需要某种类型的功能,而该功能被另外一个用例定义,在用例执行的过程中,就可以调用已经定义好的用例。

被包含的用例有两种方法确定:

(1)被包含的用例事先已经存在。这次用到不用重新定义,类似调用。

(2)从几个用例中提取实现相同功能的操作步骤,形成新的用例。

可能您要问了提取相同功能,那和泛化有什么区别? 使用包含关系,用例必须遵循两个约束条件。

(1)包含用例之依赖被包含用例的返回结果,不必了解被包含用例的内部结构。

(2)包含用例对被包含用例的调用时无条件的。 举个例子,比如机房收费中学生登录和用户登录的时候都需要密码验证。学生登录的时候写了密码验证的用例,在用户登录的时候我们可以使用包含关系直接调用这个 用例,不用重新定义。需要注意的是这不是继承,因为我们只要验证的结果,到底密码是否正确,对用例的结构,如何实现的并不关心。



2.扩展

它指定了一个用例可以增强另一个用例的功能。不是必须的。比如机房收费中组合查询的窗体中都有打印的功能。打印就是一个扩展用例,它不是必须的,不打印,主要的查询功能也能完成,而打印就是一个扩充。

举一个借书的例子:


二、机房收费系统用例图



这个图主要描述了一般用户,操作员和管理员的功能都是什么,以及他们之间的泛化继承关系。

三、总结

用例图主要掌握怎么找参与者,然后确定用户的需求即用例,还有参与者之间,参与者和用例之间及用例之间的关系。用例图是开发软件最宏观的一个蓝图,对之后各个阶段图的制作有指导意义。所以用例图是要重点掌握的,真正在做软件的时候也是要重点图的。 如有需要提高的地方,还望各路大神帮我指出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: