設計・テスト

PlantUMLでユースケース図を作成してみた

ユースケース図とは、システムの機能(ユースケース)とそのユーザーまたは外部システム(アクター)の関係を表現する図で、システムで何を実現すればよいか明確にできるため、要求定義フェーズで主に使われている。

今回は、PlantUMLで勤怠管理システムのユースケース図を作成してみたので、作成したユースケース図と元になるPlantUMLのソースコードを共有する。

なお、ユースケース図については、以下のサイトを参照のこと。
http://www.itsenka.com/contents/development/uml/usecase.html

また、PlantUMLのユースケース図についてのマニュアルは、以下のサイトを参照のこと。
https://plantuml.com/ja/use-case-diagram



前提条件

下記記事の、VSCode上でPlantUMLを利用するための環境構築が完了していること。

PlantUMLをVSCode上で利用してみたPlantUMLは、VSCode(Visual Studio Code)上で編集するようにすると、ソースコードを色つきで分かりやすく表示...

ユースケース図を作成するシステムの要件

今回ユースケース図を作成する勤怠管理システムの要件は、以下の通り。

  1. 社員は、毎日の勤務実績を、勤怠管理システムに入力する。
  2. 社員は、毎月月末に、勤怠管理システム上で勤怠の締め処理を行う。勤怠の締め処理では、その月の勤務実績を確定させ、総労働時間を算出する。勤怠の締め処理が終わると、その月の勤務実績の変更ができなくなる。
  3. 社員は、勤怠締め処理が終わったら、勤務表をPDF出力する。出力したPDFは、印刷し上長に提出することになっているが、本システムでは勤務表のPDF出力ができればよい。
  4. 社員が誤って勤怠締め処理を行った場合は、システム管理者が、勤怠締め処理の取り消しを行う。
  5. 社員情報は、人事部が登録する。
  6. 退職した社員情報は、人事部が削除する。
  7. 社員は、ログインパスワードを変更できる。



作成したユースケース図

「ユースケース図を作成するシステムの要件」に基づいて作成したユースケース図の内容は以下の通り。
usecase

また、作成したユースケース図のPlantUMLソースコードの内容は、以下の通り。

@startuml
left to right direction
actor "社員" as actor1
actor "システム管理者" as actor2
actor "人事部" as actor3
rectangle "勤怠管理システム"{
    package "勤怠管理" {
        usecase "勤怠入力処理" as usecase1
        usecase "勤怠締め処理" as usecase2
        usecase "勤務表のPDF出力処理" as usecase3
        usecase "勤怠締め取消処理" as usecase4
    }
    package "人事管理" {
        usecase "社員情報登録処理" as usecase5
        usecase "社員情報削除処理" as usecase6
        usecase "パスワード変更処理" as usecase7
    }
}
actor1 ---> usecase1
actor1 ---> usecase2
actor1 ---> usecase3
usecase4 <--- actor2
actor3 ---> usecase5
actor3 ---> usecase6
actor1 ---> usecase7
@enduml

要点まとめ

  • ユースケース図では、システムの機能とそのユーザーまたは外部システムの関係を表現するため、システムで何を実現すればよいか明確にすることができる。
  • PlantUMLを利用すれば、コードベースでユースケース図を作成できる。