SlideShare a Scribd company logo
1 of 32
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
開発の現場でも役に立つ
ボトムアップによるデータモデリング活用実例
Sencha RAD Mix Tokyo
エンバカデロ・テクノロジーズ
相蘇 和貴
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 2
開発の現場でも役に立つ・ボトムアップによるデータモデリング・活用実例
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 3
開発の現場でも役に立つ・ボトムアップによるデータモデリング・活用実例
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 4
開発の現場でも役に立つ・ボトムアップによるデータモデリング・活用実例
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
「ボトムアップによるデータモデリング」
データモデリング・ボトムアップの意味
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 6
データベースを扱う上で
• データベースを実際に作る前の設計図が必要
• データの共通の理解ため標準的な記法が必要
データモデル
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 7
エンティティ
(実体)
属性
(項目・性質)
リレーション
(関連)
ER図
Entity
Relationship
Diagram (図)
データモデルを記述するための要素
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 8
トップダウン ボトムアップ
• システム化すべき
ビジネスのフローと
データを順にモデル化
• 概念→論理→物理と
上からモデル設計
• 画面や帳票など先行
させてデータ項目を
先に決めてモデル化
• 既存の帳票、画面、
データベースから
データモデル化
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 9
データ構造の把握、できていますか?
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
活用実例
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 11
顧客事例:
連携先で、必要なデータが
どこにあるかわからない!
自社データは既に溜まっている。
活用をしたいけど、どこにあるの?
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 12
顧客事例:TalkTalk
イギリス、テレビサービスの
リーディングプロバイダ
自社が持っているデータを理解し、
簡潔なモデルを開発する必要性
データモデリングを使用し
ビジネスパーソンが必要なデータを視覚化
急速に成長拡大
拡大に伴い、課金・CRM・プロビジョニング等のシステムを
次々に導入
データが様々なシステムに分散
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 13
顧客事例:TalkTalk
「私たちの目標は、私たちが持っていたデータを理解し、ソースシステムを
心配することなく簡潔なモデルを開発すること。 ミッションは、望まれて
いると思ったものではなく、企業が必要と望んでいたものを提供すること
でした。データから迅速な洞察と価値を提供することができました。」
- Philip Powell、データアーキテクト、TalkTalk
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 14
顧客事例:
複雑なデータ構造を
扱うには時間とリソースが
足りない!
レガシー・システムの
データベース、ドキュメントが
残っていない!
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 15
顧客事例:エントラスト
世界中の企業・政府に、情報を
保護するサービスと PKI を提供
マネジメント層に複雑さと必要な努力を実証する必要性
データ構造をリバースエンジニアリングにより可視化。
作業レベル・複雑さをマネジメントに伝えることを可能に。
レガシーシステムはドキュメントがほとんどなかった
データプロジェクトの成功のためにリソース確保が必要
必要なリソースとエフォートを
マネジメント層に伝えられず、サポートを得られない
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 16
顧客事例:エントラスト
「以前は Visio のような ツールを使い、全てを手作業で行う必要が
ありました。今、我々は何千ものテーブルとリレーションシップに
ついて話しています。ER/Studio は最も時間のかかる作業を
自動化しています」
「6か月以上要することが、ER/Studio で約1週間で完了した。
時間の節約は計り知れない」
– Jason Soroko, ビジネス アーキテクト、Entrust
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 17
データを可視化すれば、把握できる!
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 18
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 19
欲しいデータが
どこにあるか
わからない!
設計書通りの
実データが
取り出せない
データは既に
溜まっている。
活用したいけど
何処にあるの?
DB担当に要求しても
出てくるまで
スゴイ待つ!
DBが複数あって
覗くのがとっても
手間です!
日々、
データベースが
少しずつ変わってる
各部署がアクティブ!
自律してDB作りすぎて
連携できない!
パッケージシステムを
導入!必要なデータは
既にあるの?
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 20
エクセル方眼紙で
なんとかするのは
止めたい
画面や帳票から
必要なデータはわかった。
けどDB作るのは大変
顧客とエクセルで
データ項目情報を
やりとりしてるんだ
毎度に似たような
DB作っているけど、
毎度カスタマイズする
顧客に納める
ドキュメントが
一番めんどうくさい
参照する
データベースの
ドキュメントがない!
会議の度に
データベース設計書を
持ってこいって
言われる
設計書はあるけど、
なにか少しずつ
実データベースと違う
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 21
• 設計書が失われていても、運用中のデータベースがあればデータモデルが把握できる
• ドメインを生成し、利用することで、データベース間の整合性と一貫性を確保できる
• モデル図と既存データベースの比較が行えて、整合性確認が容易に可能
データベース設計をサポートする充実した機能
既存データベースをリバースエンジニアリングできます
ウイザードで自動解析
データモデルを生成
データモデルとして確認データベースに接続
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 22
データベース設計をサポートする充実した機能
ワードの設計仕様書を成果物として提出
サーバー上に共有してブラウザで閲覧
RTF生成
HTML生成
いつでもデータモデルから最新の設計仕様書が生成できます
• 仕様変更直後でも設計書を生成でき、仕様書設計書変更の手間が省けます
• 成果物としての提出や、設計書共有として役立てられます
• マクロを使ってエクセルへの入出力や、DBサーバーとの同期などオートメーションも可能
取り込み 出力
多数のマクロサンプルを用意
マクロでエクセルへ入出力が可能
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
データベースツールは信頼性が重要
安心してください。皆さんが使っています
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 24
正確なデータを素早く引き出して
意思決定に役立てることが重要
何千ものデータベース
エンタープライズ
データモデルが必要
各ビジネスユニットは自律的
必要なモデル・定義を独自作成
チーム間連携が妨げられていた
通常、可能な限り自社製品の
利用を優先
ER/Studioを選択して
400人以上メンバーが使用登録
ゴールは標準化に取り組み、
全体のデータを定義し再利用
データアーキテクトチームが
モデリングを実施
必要となる事項
状況
結果
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 25
「論理モデルからデータデザイン、物理モデルを生成、
SQLサーバーにフォワードエンジニアリングする。素晴らしい
生産性の促進です」
「ER/Studioなら、すべての新しいデータアプリケーション開発で
必要となる論理モデル作成がとても簡単です。」
- Aaron Hanks, Principal IT Data Architect -
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 26
1,000 ライセンス使用中
❝ データベース設計は品質の要。モデリング、設計の工程は特に品質良く作らないといけない ❞
グループ社員に対して実施しているデータモデリングに関する研修でも使用
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 27
「専用ツールの ER/Studio を活用すれば、データベース設計の品
質も、データベース操作の信頼性もより向上する。
複数メンバーで設計を共有することも簡単だ。」
- 株式会社 NTTデータ 田邊 憲二氏
グループ社員を対象に実施している
データモデリングに関する研修でも、
演習ツールとして ER/Studioを使用
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
おわりに
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 29
データモデリングツールで
既存のデータベースを可視化
ドキュメントの生成システムの連携
データ構造の再利用 データ一貫性の確保
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
参考情報
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。 31
 製品情報
• http://forms.embarcadero.com/embt-dbtools-jp
 事例紹介&製品パンフレット
• 会場にご用意しています
本文書の一部または全部の転載を禁止します。本文書の著作権は、著作者に帰属します。
www.embarcadero.com/jp
THANKS!

More Related Content

Similar to 開発の現場でも役に立つボトプアップによるデータモデリング活用実例

[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
masashi takehara
 
Information20120312
Information20120312Information20120312
Information20120312
b-slash
 
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12QJasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Yoshihito Kuranuki
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
Shuji Morisaki
 

Similar to 開発の現場でも役に立つボトプアップによるデータモデリング活用実例 (20)

[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
 
13_B_5 Who is a architect?
13_B_5 Who is a architect?13_B_5 Who is a architect?
13_B_5 Who is a architect?
 
「C++Builderでモバイル開発にトライ!ベータ評価レポート」
「C++Builderでモバイル開発にトライ!ベータ評価レポート」「C++Builderでモバイル開発にトライ!ベータ評価レポート」
「C++Builderでモバイル開発にトライ!ベータ評価レポート」
 
組込み向けスクリプト言語mrubyをEV3で動かしてみよう
組込み向けスクリプト言語mrubyをEV3で動かしてみよう組込み向けスクリプト言語mrubyをEV3で動かしてみよう
組込み向けスクリプト言語mrubyをEV3で動かしてみよう
 
「マルチデバイスの荒海にこぎ出す新人エンジニアのためのソフトウェア開発の心得」
 「マルチデバイスの荒海にこぎ出す新人エンジニアのためのソフトウェア開発の心得」  「マルチデバイスの荒海にこぎ出す新人エンジニアのためのソフトウェア開発の心得」
「マルチデバイスの荒海にこぎ出す新人エンジニアのためのソフトウェア開発の心得」
 
スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ
スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへスマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ
スマートなシステム、スマートなディペンダビリティ保証-次世代システムを頼れるものへ
 
「Visual C++ユーザーもバッチリ!C++Builderによるマルチデバイス開発」
「Visual C++ユーザーもバッチリ!C++Builderによるマルチデバイス開発」「Visual C++ユーザーもバッチリ!C++Builderによるマルチデバイス開発」
「Visual C++ユーザーもバッチリ!C++Builderによるマルチデバイス開発」
 
オルターブースが実践する .NET Core “ガチ” 開発
オルターブースが実践する .NET Core “ガチ” 開発オルターブースが実践する .NET Core “ガチ” 開発
オルターブースが実践する .NET Core “ガチ” 開発
 
「IoTの活用もいよいよ現実に!エンバカデロの開発ツール戦略」
「IoTの活用もいよいよ現実に!エンバカデロの開発ツール戦略」「IoTの活用もいよいよ現実に!エンバカデロの開発ツール戦略」
「IoTの活用もいよいよ現実に!エンバカデロの開発ツール戦略」
 
.net micro framework for toppers
.net micro framework for toppers.net micro framework for toppers
.net micro framework for toppers
 
Modeling in the Agile Age and casual astah models
Modeling in the Agile Age and casual astah modelsModeling in the Agile Age and casual astah models
Modeling in the Agile Age and casual astah models
 
Information20120312
Information20120312Information20120312
Information20120312
 
React vtecx20170822
React vtecx20170822React vtecx20170822
React vtecx20170822
 
java-ja TDD 2nd
java-ja TDD 2ndjava-ja TDD 2nd
java-ja TDD 2nd
 
Bee Style:vol.018
Bee Style:vol.018Bee Style:vol.018
Bee Style:vol.018
 
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12QJasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
 
Software Engineering And Role of Agile
Software Engineering And Role of AgileSoftware Engineering And Role of Agile
Software Engineering And Role of Agile
 
Osc tokyo20141019
Osc tokyo20141019Osc tokyo20141019
Osc tokyo20141019
 
2015-09-01 クラウド時代の運用エンジニアは何が変わるのか
2015-09-01 クラウド時代の運用エンジニアは何が変わるのか2015-09-01 クラウド時代の運用エンジニアは何が変わるのか
2015-09-01 クラウド時代の運用エンジニアは何が変わるのか
 
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
XP祭り関西2011 森崎 修司「プラクティスが有効にはたらく前提は明らかになっていますか?」
 

More from Kaz Aiso

More from Kaz Aiso (15)

ER/Studio データベース設計ツール
ER/Studio データベース設計ツールER/Studio データベース設計ツール
ER/Studio データベース設計ツール
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
 
【U-22】Delphi / C++Builder / RAD Studio 概要
【U-22】Delphi / C++Builder / RAD Studio 概要【U-22】Delphi / C++Builder / RAD Studio 概要
【U-22】Delphi / C++Builder / RAD Studio 概要
 
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
 
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
 
Delphi / C++Builder 業務アプリケーション 刷新実践法: BDEを使った業務アプリを 移行ツールで最新化
Delphi / C++Builder 業務アプリケーション 刷新実践法: BDEを使った業務アプリを移行ツールで最新化 Delphi / C++Builder 業務アプリケーション 刷新実践法: BDEを使った業務アプリを移行ツールで最新化
Delphi / C++Builder 業務アプリケーション 刷新実践法: BDEを使った業務アプリを 移行ツールで最新化
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
 
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第1回 ‟シューティングゲームのプロ...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】  シーズン2 Delphi の部 第1回 ‟シューティングゲームのプロ...【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】  シーズン2 Delphi の部 第1回 ‟シューティングゲームのプロ...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第1回 ‟シューティングゲームのプロ...
 
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼうDELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
 
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーションDELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY1: Delphiで作るはじめてのアプリケーション
 
移行セミナー BDE to FireDAC 20161018
移行セミナー BDE to  FireDAC 20161018移行セミナー BDE to  FireDAC 20161018
移行セミナー BDE to FireDAC 20161018
 

開発の現場でも役に立つボトプアップによるデータモデリング活用実例

Editor's Notes

  1. みなさん こんにちは。 本日のSencha RAD MIX も後残すところ Sencha, RAD ともに2セッションとなりました。 いつものエンバカデロのデベロッパーキャンプにおいては、ほぼ開発技術や実例のご紹介をしておりますが、 今日のSencha RAD MIXのこのセッションでは、データモデリング の活用について、ご紹介していきたいと思います。 エンバカデロのセミナーなどで私がしゃべる時にほぼ必ず行っていることが一つありまして、皆さんにアンケートをとらせていただいています。 皆さんに挙手をしてもらって、そのセミナーに参加されている皆様の、趨勢を図ることをいつもしているんです。 今日は、データモデリング周りのお話ということで、一つ伺ってみたいことがあります。 ということで質問です。データベース設計を専門、もしくは主体的に行われている型、または担当であるというかた、この中にどのくらいいらっしゃいますか? 一方で、データベース設計ではなく、開発のコーディング、プログラミング設計が主体、という方、どの程度いらっしゃいますでしょうか。
  2. データモデリングの話ということで、データベース設計者さんもいらっしゃいますね。開発者さんの方が圧倒的に多い。 データベース周りのお話なのに、この趨勢で大丈夫なのかと心配されてませんか。 大丈夫です。安心してください。今日の内容は開発者さん向けに、このような趨勢になることを予定して作っています。 ということで、今日のタイトル:開発の現場でも役に立つ・ボトムアップによるデータモデリング・活用実例 なんですが、どういう意味か、簡単に解説してまいります。
  3. 最初の「開発の現場でも役に立つ 」の部分は、つまり、システム開発・システムの連携を行う方々のことであります。 その方々に役立てていただける内容をお伝えしてまいります。 データベース設計専門の方、というわけではなく、とくに、ビジュアル開発を日々行っている現場の皆様に特に効果的となるようなデータベース周りのお話を中心に行ってまいります。
  4. そして、真ん中のワードを飛ばして、語尾の「活用実例」についてです。 これはそのまま、企業さんの実例をもとに、現場の皆様がお困りの内容に役立つ内容をお伝えするというものです。 データの整合性を確保や、データドキュメント、多くの工数と苦労を必要とすることでしょう。 そしてボトムアップによるデータモデリングで皆様の日々のデータ周りの課題・お悩みを解決する方法をご紹介してまいります。
  5. のこる真ん中のワード 「ボトムアップによるデータモデリング」について、話を進めてまいります。
  6. データベースを扱う皆様には、改めてご説明の必要はないかとおもわれますが、まず、「データモデリング」とは何かを簡単におさらい、説明します。
  7. ではこのデータモデル、設計図として、 共通の理解のための標準的な記法として、データの構造をあるルールにのっとってモデル化するというものであります。 それがこれ。参照や関連づけを受けるデータや、意味のひとまとまりを「エンティティ」(データ構造のひとかたまり) それらエンティティの関連づけを表すとリレーションシップ(関連させる線) そして、エンティティは属性を持つことができます。 たとえば、「患者入院情報」というエンティティは、入院日付や退院日付といった属性をもちますし、患者エンティティは、患者苗字や患者生年月日といった属性をもっています。 こういったデータモデルの図を、エンティティ・リレーション ダイアグラム またはER図 と呼んでいます。これがデータベースの設計図でありますね 。 これらER図は、最終的にはデータベースにテーブルの実装までを最終結果として設計されることが多いです。
  8. さて次、こんどは「ボトムアップ」についてです。 先ほド説明したER図を書き起こす方法として、つまりデータベースの設計書を作るうえで二つの手法があります。 トップダウン手法とボトムアップ手法です。 トップダウンはシステム化すべきビジネスフローは何か、かかわるエンティティは属性は? といった具合に、関連の方々などにヒアリングをし、順にビジネスフローを明らかにして、 概念設計、から論理、設計、とおりてくるもの。 一方で「ボトムアップ」のほうは、実際にある画面帳票から必要な項目・属性を洗い出したり、設計を行っていきます。 場合によって既にあるDBからモデルを明らかにする場合も。 今回は、データベース設計として上から落とし込むトップダウンではなく、より開発現場使える、いわゆる開発現場に近い、画面や帳票、使うデータベースからデータモデルを作り出すボトムアップにフォーカスしてお話します。
  9. さて、タイトルにまつわる説明をおえたところで、もぅひとつのテーマ、があります。 みなさま、データ構造の把握、できていますでしょうか。 できている、ハズであります。 データ構造を把握することが必要であった企業様の実例をご紹介してまいります。 そして、日々の開発の中で、これできたらいいのに、という要望や課題についてもデータ把握を行うことで解決できるということをお伝えしてまいります。 まずは、いくつかの例を見てみましょう。
  10. まずはこんな声があります。 わからないわけはありません、探せば見つかります。最終的には。 それに、設計書があればいいんです。 それを見ればいいんですから。 もっとややこしいケースでは、設計書と、実際のDBとちょっとずつ違うところがあることもあります。しかし、古いシステムでは、設計書が失われていたり また、最近のシステムでは、 開発現場で、その場でスキーマを作り、運用して、開発、変更・運用を繰り返すケースもあり、データベースの現状がつかみづらいケースもあります。 そして、今回ご紹介する「データどこにあるかわからない」例として、企業合併や買収で複数のシステムが短いスパンで次々に連結され、データがさまざまなシステムに分散されていた、という事例を見てみましょう
  11. それがこのTalk Talkさん ビジネス・会社規模が急速に拡大して そのために複数のシステム導入したんですね。 その結果、いくつかのシステムにデータが分散してしまった そして発生した問題は、ビジネスパーソンが必要なデータを望んでもシステム部が迅速に提供できない。場合によっては必要とされたデータもビジネスパーソンも技術者も意思疎通ができずに、狙いとは異なる間違ったデータを渡してしまう。 共に明確にデータが見えてない・把握していないが故の悪影響が発生し始めていたわけです。 さらには、急速な拡大は、顧客ばなれを招いていた。そこでビジネスパーソンは、データからそれを読み解く必要があったわけですね。 なので、データを理解し、簡潔なデータモデルを開発する必要性があったのですね。 ここで使われたのが、データモデルを可視化・モデリングするツールです。
  12. この試みはあたり、データを可視化して、ビジネスパーソンと 技術が会話をすることができるようになったわけです。 どのように可視化したか、できるのかは後ほどのデモでおみせすることとします。 データベースからデータ構造を可視化したことで、技術チームはデータの構造と属性を簡単に伝えることができるようになりました。 ビジネス・チームは要件の簡単な説明を提供するだけで、チームはそれらをお互いに理解して落とし込み、より効果的なデータの照会と報告を可能にしたのです。 ポイントを整理しますと、TalkTalkさんのケースは、技術陣でさえ、欲しいデータがどこにあるか、わかりずらい。 それを視覚化して簡潔なモデルとしたこと。結果、必要なデータを得ることができるようになったんです。
  13. 古いシステムで設計書が失われていたりすることがあります。そして長い期間、有効に運用されてきたDBは積み上げられ、より複雑化しています。 このような多数のテーブル、データ項目を扱う場合には、現場にも、それなりのリソースが必要です。リソース、つまり人員であったり、何らかの支援として活用できるもの・コトであります。 一方、レガシーシステムだけではなく、最近のシステムでは、データウエアハウスやBIツールの導入もあり、多くのデータをより効率的に解析、判断のための情報提供が望まれるケースも増えています。 このような両ケースにおいて、データの扱いの複雑さ、かかるエフォートはなかなか測りづらく、どれだけ人員が必要か説明することも難しかったりします。 そうして説明の難しさ故、さらなる追加支援を得ることができず、結局現場にしわ寄せが。うまく説明さえできれば必要なりリソースを得られるのに…といったケースがこちら。
  14. エントラストさんは、パブリック、キー、インフラストラクチャ(PKI)や、情報保護のサービスを世界に提供するグローバル企業です。 こんなときのエントラストさんの例はこうです。 状況として、レガシーシステム・データベースですでにドキュメントがほとんどないか、あっても少しだけ。 一方で与えられたタスクを成功させるためには、複雑なデータベースシステムを扱うだけのリソースと努力が必要 ただ、技術者たちは、マネジメント層に必要なだけのリソースを上手に伝える能力を有していなかった。 つまりこのデータを扱うことがどれだけ大変か、を説明することができなかった。 そこで取った手段が可視化でありました。 そのふくざつなコンセプトの説明をモデルにっよって議論し、意思決定ができるようにし、必要なサポートを受けたのです。
  15. この例は、データモデルその可視化を直接的に議論の資料としています。 そしてもうひとつ注目すべきことは、この、本来、用意すべき資料・データ構造が以下に複雑なのか、を表すデータモデルの作成がリバースエンジニアリングによって少ない工数で成し遂げられている、というポイントです。 モデル化した後の利用方法は企業によって様々ですが、この時短効果は、多くの現場でも適用できる可能性を持っていますよね。 想像できますでしょうか。
  16. 大きな二つの事例をご紹介しました。 それぞれの企業での問題と、データモデルの使い方、利用方法は異なりました。 必要なデータがどこにあるのか?を明らかにする。 データモデルを議論の対象とするため可視化する。しかも効率よく短時間に、です。 最初の、皆様への問い 「データの把握、できていますか? 」 についての一つの答えは、こうです。 データを可視化すれば、把握できる!
  17. ではどのようにして把握するのか、エンバカデロのセッションではおなじみのライブデモに入りたいと思います。 実際にこのマシン上でオラクルのデータベースが稼働しています。このデータベース構造を解析、リバースエンジニアリングして開始化したいとおもいます 。 簡単なデモでありますが、このリバースエンジニアリングによって素早く可視化できる、データ構造が把握できる。 今回は小さなモデルをDBから引き出していますが、これが大規模になればなるほど、人の手で可視化するのは大事になります。 リバースエンジニアリングによって可視化できた。これがキモです。これによって現場のデータ周りの課題の解決の術とすることができてまいります。。
  18. ここまでで、大きな事例紹介と、デモをお見せしましたが、今度は、実際に現場で起こる課題についても落とし込んで見ていきたいと思います。 良く起こる課題、よくある話、または皆さんが時折思う・感じる不満があります いくつか例が出ていますが、このなかでここで一つ注目してみましょう。 リバースエンジニアリングというと、既存の古いでDBに対しておこなうような感じもしますが、 それでけではありません。新規のシステム、新規のデータベースを開発している時にもリバースエンジニアリングは役立つんです。 システムの要件に合わせてデータ設計したものの、開発進行に合わせて要件も少しずつ変わってくる、要件がチマチマかわってくると、データベースも変わってくる。 開発に合わせてデータ構造を変える、変わっていくことになりますが、変わったデータベースをどうやってチームと共有していくのか、どうやって柔軟に反映させていくのか。リバースエンジニアリングによって、最新の状況を手に取れる効果があるわけです。
  19. また開発進行に合わせて変更した場合、最初に書いたドキュメントとは一致しないわけですね。 今どうなの_現在の設計もってきて! なんでこともあるわけです。そうすると、現場側が「調査します、最新化します、更新します」といったことになり手間がかかる。 ドキュメントの更新、提出もそれなりに工数がかかります。 一方、既存データベースのドキュメントがある場合にも、油断できないです。設計書があるんだけど、なんかちょっと違う。結果的にいちいち確認しながらやることになる。 とても厄介なケースですよね。
  20. これらのケースにも役立つのがデータモデルを可視化できる ER/Studioです。 リバースエンジニアリングで可視化することはすでにお伝えしました。システム連携の際にデータ構造を把握するのに役立ちます。そして把握の際に、テンプレート・ドメインを作成しておくこともできます。 同じ型でデータの一貫性を保ちつつDBを新たに設計することもでき、システム連携がはかどります。 常づね変わるデータベース改変にも役立ちます。 小規模な変更が継続して行われているような場合、今現在のデータ構造をまさに実体から確認できます。 設計書が古くてちょっとずつ異なる、というケースにおいても、実体からデータ構造を確認できるので古い設計図をうのみにして後々合わない、失敗した、ということもないでしょう。
  21. そしてさらにドキュメントとして発行する機能が先ほどの課題を解決してくれます。 顧客から提出を迫られるドキュメント、 もうめんどくさくないです。 Wordベースで発行することもできます。 HTMLで出しておいて、みんなでブラウザで閲覧、かくにんするといったこともできます。 エクセルからの取り込み、出力もできます。 このエクセルへの入出力はマクロを使っています。 マクロはさらにER/Studioのほぼすべての機能を操ることができるので、オートメーション化もできます。
  22. このような便利な機能が「盛りだくさんではありますが、エンバカデロの開発ツールを使っている皆さんでも このツールの存在を知らなかった方はいらっしゃるかと思います。 現在使っているDelphiやC+は信用できても、このツールかどうか、ということですね。 では、その信頼度のあかし、証明も、今回は事例でご紹介します。 このデータモデリングツールは エンバカデロ最大の競争相手、ともいえるこの会社がつかっています。
  23. 問題は各ユニットが自律的に動いて独自作成していて連携が妨げられていたんですね。 データ活用のためには起動としての出たモデルが必要。 通常このお客様は自社ソフトを使うこと優先なさるそうなんですが、 よりプロフェッショナルな専用ツールを求められて利用されたのです
  24. 競合が、これはUSの例ですけど、つかっている。 これはすごいことですね 。
  25. データベース設計は品質の要。モデリング、設計の工程は特に品質良く作らないといけない と言っている。 データベース設計を重要視している企業さんも使っています。しかも1000ラ位センス規模でう。 業務上で設計するだけでなく、これを使って研修・教育する徹底ぶりであります。
  26. それが、日本最大級規模のシステムインテグレーターさんのさNTT Dataさん。 彼らもんも驚くほど使っています。 この写真、データモデルの教育としてもつかわれているんですね。
  27. データモデリングツールで既存のデータベースを可視化しました その結果、システム連携のデー構造が把握できて連携に役立ちました。 ドキュメントの生成ができますので、いつでも。ドキュメントは面倒なものですが、これがあっという間に。 データ構造の再利用も、一貫性の確保も促進できるということでありました。 もうおわかりですよね。つまり、ボトムアップによるデータモデリング、システム開発の現場においても、利用価値があります。 ツールを使う皆様においては時短・工数削減に。 早く帰っていっぱいやる時間が増えるかも知れません。 管理する皆様においては、工数、つまりお金の削減につながります。