SlideShare a Scribd company logo
Sparx Systems Japan Co.,Ltd.
UMLの本当の価値を知っていますか?
ツールで引き出すその真価!
第17回 Game Tools & Middleware Forum (GTMF)
2019/7/5 大阪
2019/7/12 東京
はじめに
自己紹介
河野 岳史(こうの たけし)
スパークスシステムズ ジャパン株式会社 代表
 UMLツール「Enterprise Architect」の日本語化・日本国内サポート
全世界で約74万・国内で約5万ライセンスの販売実績
1ライセンスあたり約3万円~
 要求管理ツール「RaQuest」の開発および販売
などを行っています。
3
仮説・謝辞
あるとき、
UMLやUMLツールは
ゲームの設計にも使えるのでは?
と考えました。
実際に、いくつかのゲーム製作会社様にご意見を伺い
本日の内容を構成しました。
この場をお借りしてお礼申し上げます。
4
仮説にいたる背景
弊社ツールは、自動車業界・航空宇宙業界・医療機器などの
ソフトウェアを中心に、幅広く利用されています。
共通の特徴(ツール導入の背景):
 対象のソフトウェアがどんどん複雑・多機能になっている
 考慮すべき点が多い (他システムとの連携・セキュリティなど)
 多人数で設計・実装をする
 バグや考慮漏れによる「万が一」の場合の被害が大きい
5
→ゲームの設計も、同じ傾向があるのではないでしょうか?
本セッションの概要
「UML」がどのようなものかは
多くの方に周知されているかと思いますが
作図のルールの1つという位置づけがほとんどです。
本セッションでは、ゲームの設計において
どのようにUMLやUMLツールが役立つのか、
UMLツールを販売する会社の立場で考えた
アイデアを紹介します。
6
本日の内容
1. UMLの概要と利用方法
2. UMLをゲームの設計に利用する場合のよくある使い方
3. ツールも活用し、UMLの真価を引き出す
7
UMLの概要と利用方法
8
9
UML 概要
• UML = Unified Modeling Language
(統一モデリング言語)
• ソフトウェアの設計を前提とした
世界共通のモデリング言語
 OMG(Object Management Group)が策定
 ISO・JISとしても規定
 最新バージョンは2.5.1
 14種類の図
キャラクター
体力
攻撃力
防御力
素早さ
初期レアリティ(★)
現在レアリティ(★)
レベル
経験値
売却ロック
«不可視»
クリティカル率
回避率
割り込み攻撃率
追加攻撃率
反撃率
命中率
チーム
クエストチーム アリーナチーム
装備
効果
レアリティ(★)
レベル
経験値
アクティブスキル
攻撃回数/範囲
攻撃力
パッシブスキル
«enumeration»
キャラクタータイプ
アタッカー
ヒーラー
サポート
バランス
«enumeration»
装備種別
武器
防具
アクセサリー
靴
ギルドバトルチーム
1
2
種別ごとに0..1
1
0..6
{ordered}
1
10
UMLのメリットは?
• 図で仕様・構造・振る舞いを表現可能
 文章の曖昧さを解決
 理解・意識合わせを支援
• 世界共通の表現手法
 言語を問わず理解できる部分がある
 書籍・Webなどに参考となる情報が多い
端末
入力キー
1..*
1
A または B かつ C
一般的なUMLの利用方法
補足資料としての利用が一般的
 UMLの図は補足資料であり、網羅性はない
複雑な処理のみを書く、等
書いても良いし書かなくても良い
「書き捨て」が多い
 UMLを使うことで、表記がある程度統一できる
 PlantUML・Visioのような作図のためのツールが利用される
 ゲーム業界以外も同様の傾向
11
ゲーム設計への利用
12
UMLの活用対象
UMLを利用し、以下の内容を表現する
• ゲームの世界観を構成する「データ・情報の構造・関係」
 世界観のうち、「登場人物とその関係」「歴史背景」
「ストーリー」などの内容を具体化し表現
• ゲームシステムの「ルール」「振る舞い(流れ)」
 UMLを利用して「仕様書」を作成
13
利用例
• 登場人物の関係を表現
• シナリオを表現
• メニュー構成を表現
• データ・パラメータを表現
• 処理フローを表現
14
将来
A国 B国 C国
険悪になる
プレイヤー
交渉
同盟?
秘密交渉を依頼
戦争を仕掛ける
拒否
勝利・属国化
交渉
開戦?
救済を依頼
A国 B国
(大統領)
ドナルド
(近衛隊長)
タイチョー
C国
(情報部 部員)
プレイヤー
(首相)
シュッショー
(法王)
ホー・オー
フレンドー
支配
対立
昔の友人
協力依頼
利用のポイント
何を表現するか、どこまで詳細に書くか
 すべてを書く必要はない(し、書けない)
 実装レベルの細かいことを書いても意味はない
UML≠ソース・UML≠データベース
実装を見ればわかるならばそれでよい
(同じ情報を複数表現しないように)
 具体的な案は後ほど...
15
疑問点
• 別にUMLじゃなくても良いのでは?
• それってExcelやVisioでもできるよね?
16
この利用方法のみで、
「UMLは使えない/いらない」
「UMLツールなんて不要」
と思っている人は多いのではないでしょうか?
言い訳
「別にUMLじゃなくても良いのでは?」は
ある意味で、的を射ています...
 関係者全員が理解し、人によってブレがなければ
記法そのものはそれほど重要ではない
 弊社がUMLツールベンダーなので、
今回UMLを使っているということも事実
後ほど、この点について補足します
17
UMLの真価を引き出す
18
最大限に活用するためには
UMLの真価を引き出すためには、以下の2点がポイントになる
• UMLの位置づけを見直す
• UMLツールの機能を活用する
 デモは、弊社ツールEnterprise Architectを利用します
 ツール概要は、Webサイトをご覧ください
https://www.sparxsystems.jp/
19
UMLツールについて
「UMLツール」と呼ばれるツールには
大きく分けると、以下の2つの種類がある
• 作図ツール (Diagramming Tool)
 図の作成を目的としたツール
• モデリングツール (Modeling Tool)
 作成した図を活用できるさまざまな機能を搭載
 図の作成は、目的ではなくて手段
20
→今回は、「モデリングツール」の利用を想定
UMLの位置づけの再定義
1. (初回リリースのための)設計のためだけでなく
変わるため・変えるためにも使う
 「概要」「なぜ?」は重要
 キモになる部分を可視化し共有することで
「追加」「変更」「合意」を楽にする
コミュニケーションの土台とする
どうなっているかがわからないと、容易に変更ができない
21
→変更を容易に確実にする・変更の安心感を得る
活用方法 1
単なる「図」以上の価値を持たせる
 データ間・データとルール・振る舞いの関係(つながり)を定義する
矛盾や漏れの発見を支援
変更する場合の影響範囲を把握
 記述内容は、上記が実現できる程度の粗い粒度で良い
 「理由」「TBD」「代案」などをメモしておくと良い
検索機能を使えば図に移動できる
 図を一覧で表示するなどの機能も便利
22
利用例
• 登場人物が出現するシナリオの把握
 人物からシナリオへジャンプ
 人物とシナリオのマトリックス
• 処理フローとパラメータの関係の把握
 パラメータ要素をフローと結びつける
 フローからパラメータ要素を参照
23
UMLの位置づけの再定義
2. チーム活動を効率化するために使う
 いちいちプランナーに聞かなくてすむ
 必要に応じて誰でも情報を追加・更新できる
 詳細設計・実装の担当者や進捗状況を付加
24
活用方法 2-a
図の要素に、設計そのもの以外の情報を付加することで
状況の把握にも活用する
 担当者
 進捗状況
 リリース時期
25
利用例
• 各機能の実装の担当者と進捗をカンバンで管理
 カンバンから設計図にジャンプ
• 図内で、進捗状況の可視化
 オンデマンド可視化
 チャートで状況を把握
26
未着手 設計中 承認済 実装中 実装済 テスト中 テスト済 保留
ログインボーナス
チャット
メインメニュー
ガチャ
課金周知メッセージメンテナンスメッセージインフォメーション
デイリーミッション
ウィークリーミッション
報酬受け取り
強化
進化
アイテム装備
チーム編成
ギルド参加
ギルド脱退
ギルド情報表示 ギルド管理
参加承認
サブ管理者追加
サブ管理者削除
管理者移動
ギルド解散
活用方法 2-b
• 表現した内容を、即時にWebブラウザ・タブレットなどで
チームメンバーと共有する
 プログラマーが都度プランナーに聞かなくても良い
 ディレクターが現状を把握しやすくなる
 Word等に出力し共有する方法もある
• データは共有し同時編集可能であるため、
プログラマーなど他の人が書いて、プランナーが確認するという
方法もある
27
利用例
• クラウドやファイルでデータを共有
 今日のサンプルは以下のURLで見ることができます
https://cloud.sparxsystems.jp/
プロジェクト「GTMF」を選択してください
アクセスキーの情報は、GTMFでの講演の録画をご覧ください
https://gtmf.jp/2019/
 以下URLから、Enterprise Architectの
ファイルをダウンロードできます
https://www.sparxsystems.jp/event/gtmf.htm
• Wordに出力してドキュメントとして共有
28
UMLを使う理由
UMLを使う理由として、UMLツールが既に持っている機能を
そのまま活用できるから、という考え方もある
 今日紹介した内容は、ツールの基本機能をそのまま使った
 広く利用されているツールであれば、安価にツールを導入し
ツールが持つ機能を使うことができる
29
まとめ
30
まとめ
• UMLを表記方法として、世界観の詳細定義や
ゲームの設計に活用するという方法もある
 何をどこまで書くのか、がポイント
• UMLツールを活用すると、UMLで作成した内容に「つながり」が
定義できるため、作成した内容の価値が高まる
 影響範囲を見る機能を活用することで、
「変更する際の安心感を得る」目的でも使える
 関係者全員が見る、唯一の最新情報
人によって興味のある観点は異なるので、ビューを変える機能が必要
31
ご清聴ありがとうございました
ご不明な点・ご意見・アイデアがありましたら
スパークスシステムズ ジャパンのWebサイトの
「お問い合わせ」からお寄せいただけると助かります。

More Related Content

Similar to UMLの本当の価値を知っていますか? ツールで引き出すその真価!

ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
Youichiro Miyake
 
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテックGTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
Game Tools & Middleware Forum
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platform
Toru Yamaguchi
 
SoftBank MR Intel Simulator(仮)の体験について
SoftBank MR Intel Simulator(仮)の体験についてSoftBank MR Intel Simulator(仮)の体験について
SoftBank MR Intel Simulator(仮)の体験について
貴文 湯浅
 
生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方
KLab Inc. / Tech
 
デブサミ2013LT大会 Japan SenchaUG
デブサミ2013LT大会 Japan SenchaUGデブサミ2013LT大会 Japan SenchaUG
デブサミ2013LT大会 Japan SenchaUG
dsuke Takaoka
 
Adminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発TipsAdminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発Tips
Takashi Hatamoto
 
SE職体験ツール【フローチャートパズル】
SE職体験ツール【フローチャートパズル】SE職体験ツール【フローチャートパズル】
SE職体験ツール【フローチャートパズル】
Jun Chiba
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
MinGeun Park
 
ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発Masaru Nagaku
 
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないものソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
Jun Hosokawa
 
PKSHA Security Package for Credit
PKSHA Security Package for CreditPKSHA Security Package for Credit
PKSHA Security Package for Credit
MasatoMinami2
 
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
Hiroki Takaba
 
ゲームエンジン導入セミナー【UDK編】
ゲームエンジン導入セミナー【UDK編】ゲームエンジン導入セミナー【UDK編】
ゲームエンジン導入セミナー【UDK編】
Junya "Jun" Shimoda
 
もしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだらもしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだら
Tomoki Ando
 
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
Tatsuhiro Tanaka
 
各種ゲームエンジンの紹介と利用について
各種ゲームエンジンの紹介と利用について各種ゲームエンジンの紹介と利用について
各種ゲームエンジンの紹介と利用について
Katsutoshi Makino
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
 
Cocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみましたCocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみました
Tomohiro Suzuki
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
エピック・ゲームズ・ジャパン Epic Games Japan
 

Similar to UMLの本当の価値を知っていますか? ツールで引き出すその真価! (20)

ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
ゲームエンジンの知能化の実装 -人工知能化するゲームエンジンの実装プラン-
 
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテックGTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
GTMF 2016:「KiQ」が拓くゲームサーバの未来 株式会社アトミテック
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platform
 
SoftBank MR Intel Simulator(仮)の体験について
SoftBank MR Intel Simulator(仮)の体験についてSoftBank MR Intel Simulator(仮)の体験について
SoftBank MR Intel Simulator(仮)の体験について
 
生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方生成AIが切り拓く新しいゲームの創り方・遊び方
生成AIが切り拓く新しいゲームの創り方・遊び方
 
デブサミ2013LT大会 Japan SenchaUG
デブサミ2013LT大会 Japan SenchaUGデブサミ2013LT大会 Japan SenchaUG
デブサミ2013LT大会 Japan SenchaUG
 
Adminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発TipsAdminとうまく共存するためのApex開発Tips
Adminとうまく共存するためのApex開発Tips
 
SE職体験ツール【フローチャートパズル】
SE職体験ツール【フローチャートパズル】SE職体験ツール【フローチャートパズル】
SE職体験ツール【フローチャートパズル】
 
[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1[141004] cedec 2014 참관기 & 강연 리뷰 #1
[141004] cedec 2014 참관기 & 강연 리뷰 #1
 
ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発ゲーム業界から見たアジャイル開発
ゲーム業界から見たアジャイル開発
 
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないものソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
ソフトウェア開発30年史を振り返りつつ考えるプログラマにとって変わらないもの
 
PKSHA Security Package for Credit
PKSHA Security Package for CreditPKSHA Security Package for Credit
PKSHA Security Package for Credit
 
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
AppStoreとGooglePlayの両プラットフォームに選ばれるUI/UX最適化
 
ゲームエンジン導入セミナー【UDK編】
ゲームエンジン導入セミナー【UDK編】ゲームエンジン導入セミナー【UDK編】
ゲームエンジン導入セミナー【UDK編】
 
もしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだらもしSIerのエンジニアがSRE本を読んだら
もしSIerのエンジニアがSRE本を読んだら
 
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書 ~効果的なNPRのためにライティングの仕組みを理解しよう~
 
各種ゲームエンジンの紹介と利用について
各種ゲームエンジンの紹介と利用について各種ゲームエンジンの紹介と利用について
各種ゲームエンジンの紹介と利用について
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
 
Cocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみましたCocos sharpでゲーム開発してみました
Cocos sharpでゲーム開発してみました
 
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~
 

UMLの本当の価値を知っていますか? ツールで引き出すその真価!