UML(用例图、状态图)

UML(Unified Modeling Language: 统一建模语言)分两类:
1).结构型的图
  * 类图(Class Diagram)
  * 对象图(Object Diagram)
  * 构件图(Component Diagram)
  * 部署图(Deployment Diagram)
  * 包图(Package Diagram)
2).行为型的图
  * 用例图(Use Case Diagram)
  * 活动图(Activity Diagram)
  * 状态机图(State Machine Diagram)
  * 顺序图/序列图(Sequence Diagram)
  * 通信图(Communication Diagram)
  * 时序图(Timing Diagram)

1、用例图

要弄清楚一个项目的大概需求,往往可以从以下两个问题来想:
  1).这个系统谁在用?
  2).这些人通过这个系统能做什么?
用例图就是用来回答这两个问题的。

1.1.用例图的语法
  用例图有四个部分:用例(Use Case), 参与者(Actor),系统边界,关系。
  
1).参与者(Actor)
  在UML图中我们用一个小人表示,是对系统使用者的抽象。参与者是与系统交互的人或另一个系统,如果是人可以称为“角色”。在分析系统时,应该先思考什么角色会用这个系统,然后逐一思考不同的角色对系统有什么需求。

2).用例(Use Case)
  图中的椭圆就是用例,里面的文字是动宾结构(也就是动词+名词),用例表明系统能做什么事情。如何读?可以先读执行者的名字,再读出用例中的文字。如“一般用户登陆系统”,可以用这样的方式来检查自己的用例图画得是否合适。

3).系统边界(System Boundary)
  在图中有一个只框住了用例,没有框住执行者的方框叫系统边界,框框的上部注明本系的名字。系统的边界能清晰表达出系统的范围,但系统的范围不是那么好确定的。也并是所有的用例图都需要画出系统边界,不然会显示冗余,一般的做法是:使用一个全局的用例图来宏观表达系统的需求,这个宏观的用例图需要画出系统边界。

4).关系
  用例图中的关系:角色的继承、关联、泛化、包含(Include)、扩展(Extend)、比较少用到的用例继承。
  关联(Association):线条是指角色与用例之间线条,有三种:无箭头,指向用例的箭头,指向执行者的箭头。一般来说,箭头的尾部用来表示启动交互的一方,头部用来表示被启动的一方。不过箭头的解释容易把人弄晕,建议全部画成没有箭头就行了。
  
  包含(Include):包含关系用来把一个较复杂的用例所表示的功能分解成较小的步骤。包含用例是必须的,如果缺少包含用例,基用例就是不完整的。
  操作数据最基本的动作:增加(Create),读取(Read),更新(Update),删除(Delete),如果都按下面来画用例图,会显得很多,很杂,可以用上面的”管理某某“用例来代替。
  
  包含关系最典型的应用就是复用。这种情况类似与在过程设计语言中,将程序的某一段算法封装成一个子过程,然后在从主程序中调用这一子过程(这么说好像懂了点)
  在UML中,包含关系用带箭头的虚线段加《include》表示,箭头指向被包含的用例。

  扩展(Extend):在某用例的基础上,还能做什么事情,带有”《extend》”标志的虚线的箭头方向,箭头方向表明了谁扩展谁。

1.2.用例表


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章