创建南通大学-杏林校区图书管理系统的用例

第一部分:优秀的图形绘制工具PlantUML       

PlantUML 是基于 Java 语言的开源UML图形绘制工具,它是创建UML图形的组件。它能够使用简单脚本来定义和创建UML图形。它不像ROSE那样,ROSE拥有图形化的操作,直接用鼠标点点点或是用鼠标拖,UML图就出来了。PlantUML的使用者必须要知道它专门的语法才可以准确的使用它,从而画出想要的UML图。

那么为什么要这么麻烦的使用需要学习语法的PlantUML呢?

        我打开了PlantUML的网址,我一眼就发现了它的一个优点——它提供了在线版。作为一个软件工程专业的学生,每次接触到一个新的课程,都会被各种软件弄得苦不堪言PlantUML提供在线版,我就很开心d(`・∀・)bPlantUML的嵌套能力强,他可以嵌套到各种编辑器中,也可以嵌套到IDE工具。
总的来说,PlantUML能够提高效率,也更为专业。

( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')分割线( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~( ~'ω')~
 

第二部分:PlantUML用例图语法

用例图是系统功能的模型图,由参与者、用例、系统边界和箭头组成。

  • 参与者:系统以外,在使用系统或与之交互中的人或事物所代表的角色。不是指人或事物本身,而是人或事物所代表的那个角色。
  • 用例:就是use case,使用案例,简单来说就是参与者希望系统能够做的事情,由参与者来启动。
  • 系统边界:建模的边界,边界外就是系统外部。
  • 箭头:表示参与者和系统通过相互发送信号或消息进行交互的关联关系。

根据PlantUML官方手册:

参与者Actor

用两个冒号包裹起来,可以用关键字actor来定义角色,as来定义一个别名,该别名可以在以后定义关系的时候使用。角色的定义是可选的。

语法:

@startuml

:First Actor:
:Another\nactor: as Men2  
actor Men3
actor :Last actor: as Men4

@enduml

创建南通大学-杏林校区图书管理系统的用例_第1张图片

用例use case

可以用关键字use case来定义用例。还可以使用关键字as定义一个别名,该别名可以在定义关系的时候使用。

@startuml

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

@enduml

创建南通大学-杏林校区图书管理系统的用例_第2张图片

若是想定义跨越多行的用例描述,可以用双引号将其裹起来。还可以使用分隔符:--..==__分隔符中间也可以放置标题。

@startuml

usecase UC1 as "You can use
several lines to define your usecase.
You can also use separators.
--
Several separators are possible.
==
And you can add titles:
..Conclusion..
This allows large description."

@enduml

创建南通大学-杏林校区图书管理系统的用例_第3张图片

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

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

@startuml

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

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

@enduml

创建南通大学-杏林校区图书管理系统的用例_第4张图片

如果一个角色或者用例继承于另一个,那么可以用<|--符号表示。

@startuml
:Main Admin: as Admin
(Use the application) as (Use)

User <|-- Admin
(Start) <|-- (Use)

@enduml

创建南通大学-杏林校区图书管理系统的用例_第5张图片

可以用note left of , note right of , note top of , note bottom of等关键字给一个对象添加注释注释还可以通过note关键字来定义,然后用..连接其他对象。

@startuml
:Main Admin: as Admin
(Use the application) as (Use)

User -> (Start)
User --> (Use)

Admin ---> (Use)

note right of Admin : This is an example.

note right of (Use)
  A note can also
  be on several lines
end note

note "This note is connected\nto several objects." as N2
(Start) .. N2
N2 .. (Use)
@enduml

创建南通大学-杏林校区图书管理系统的用例_第6张图片

<<>> 来定义角色或者用例的构造类型

@startuml
User << Human >>
:Main Database: as MySql << Application >>
(Start) << One Shot >>
(Use the application) as (Use) << Main >>

User -> (Start)
User --> (Use)

MySql --> (Use)

@enduml

创建南通大学-杏林校区图书管理系统的用例_第7张图片

完整的例子:

@startuml
left to right direction
skinparam packageStyle rectangle
actor customer
actor clerk
rectangle checkout {
  customer -- (checkout)
  (checkout) .> (payment) : include
  (help) .> (checkout) : extends
  (checkout) -- clerk
}
@enduml

创建南通大学-杏林校区图书管理系统的用例_第8张图片

 

第三部分:创建南通大学-杏林校区图书管理系统的用例

 图书馆管理系统主要由:图书信息管理、借书证管理和图书借阅管理三个方面组成。

  • 图书信息管理包括图书信息的增、删、改、查。
  • 借书证管理包括借书证制作、注销、补办、借书证信息查询。
  • 图书借阅管理包括书目查询、借书、还书、过期催还、丢失。

图书信息管理用例图 :

参与者:图书管理员

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

创建南通大学-杏林校区图书管理系统的用例_第9张图片

 借书证管理用例图:

参与者:图书管理员

@startuml
left to right direction 
skinparam packageStyle rectangle 
actor 图书管理员 
rectangle 借书证管理 { 
   :图书管理员: -- (办证)  
   :图书管理员: -- (补证) 
(办证) .> (打印借书证) : <>
(补证) .> (打印借书证) : <>
   :图书管理员: -- (注销) 
   :图书管理员: -- (证件查询) 
}
@enduml

创建南通大学-杏林校区图书管理系统的用例_第10张图片

图书借阅管理:

参与者:图书管理员,借阅者

@startuml
left to right direction 
skinparam packageStyle rectangle 
actor 图书管理员 
actor 借阅者
rectangle 图书借阅管理 { 
   :图书管理员: -- (书目查询)  
   :图书管理员: -- (图书借阅信息查询) 
   :图书管理员: -- (借书) 
   :图书管理员: -- (还书) 
   :图书管理员: -- (过期催还) 
   (过期催还) .> (打印催还单) : <> 
   :图书管理员: -- (丢失处理) 
   (书目查询) -- :借阅者:
   (图书借阅信息查询) -- :借阅者:
}
@enduml

创建南通大学-杏林校区图书管理系统的用例_第11张图片

 

第四部分:总结

 PlantUML用例图部分的语法并不复杂,甚至只需要熟练使用手册上的一些语法即可。

由此看来,掌握PlantUML使用方法是必要的,它提供在线平台绘制,只需代码就可以画图,大大提高效率。

 

你可能感兴趣的:(创建南通大学-杏林校区图书管理系统的用例)