UML作业第一次:UML用例图绘制

一、 PlantUML用例图 语法学习小结

PlantUML是一个用来绘制UML图的Java类库。支持的UML图包括:时序图、用例图、类图、组件图、活动图。

 用例图,展现了一组用例、参与者(actor)以及它们之间的关系。用例图从用户角度描述系统的静态使用情况,用于建立需求模型。

  PlantUML语法:

用例用圆括号括起来。

也可以用关键字usecase来定义用例。 还可以用关键字as定义一个别名,这个别名可以在以后定义关系的时候使用。

@startuml

(First usecase)
(Another usecase) as (UC2) 
usecase UC3
usecase (Last\nusecase) as UC4

@enduml

 

角色用两个冒号包裹起来。

也可以用actor关键字来定义角色。 还可以用关键字as来定义一个别名,这个别名可以在以后定义关系的时候使用。

如果想定义跨越多行的用例描述,可以用双引号将其裹起来。

还可以使用这些分隔符:--..==__。 并且还可以在分隔符中间放置标题。

用箭头-->连接角色和用例。

横杠-越多,箭头越长。 通过在箭头定义的后面加一个冒号及文字的方式来添加标签。

在这个例子中,User并没有定义,而是直接拿来当做一个角色使用。

@startuml

User -> (Start)
User --> (Use the application) : A small label

:Main Admin: ---> (Use the application) : This is\nyet another\nlabel

@enduml

二、用例图元素、及关系分析说明文字

参与者(Actor)

  在系统外部与系统直接交互的人或事物。需要注意以下两点:

  1)参与者是角色而不是具体的人,它代表了参与者在与系统打交道的过程中所扮演的角色。所以在系统的实际运作中,一

个实际用户可能对应系统的多个参与者。不同的用户也可以只对应于一个参与者,从而代表同一参与者的不同实例。

  2)参与者作为外部用户(而不是内部)与系统发生交互作用,是它的主要特征。

用例(Use Case

  系统外部可见的一个系统功能单元。系统的功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换的消息所表达。

子系统(Subsystem)

    用来展示系统的一部分功能,这部分功能联系紧密。

关系(Relationship)

       常见关系类型有关联、泛化、包含和扩展。

a. 关联(Association)

  表示参与者与用例之间的通信,任何一方都可发送或接受消息。

 b. 泛化(Inheritance)

  就是通常理解的继承关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。

c. 包含(Include)

  包含关系用来把一个较复杂用例所表示的功能分解成较小的步骤。

d. 扩展(Extend)

  扩展关系是指用例功能的延伸,相当于为基础用例提供一个附加功能。

三、用PlantUML的绘制用例图脚本程序

@startuml
left to right direction
actor 杏林学院图书管理员
rectangle 借书证管理系统{
 :杏林学院图书管理员:--(办证)
 :杏林学院图书管理员:--(补证)
 :杏林学院图书管理员:--(证件查询)
 :杏林学院图书管理员:--(注销)
}
@enduml

 

@startuml
left to right direction
actor 杏林学院图书管理员
rectangle 图书信息管理系统{
 :杏林学院图书管理员:--(添加图书)
 :杏林学院图书管理员:--(图书编目)
 :杏林学院图书管理员:--(修改图书信息)
 :杏林学院图书管理员:--(图书报废)
 :杏林学院图书管理员:--(查询图书信息)
}
@enduml

 

四、用例图

 

 

posted @ 2019-03-24 13:52  马家旺mjw  阅读(669)  评论(0编辑  收藏  举报