FC2ブログ

[Other] 社内勉強会やってました

 社内で勉強会みたいなことをやってきました。もちろん、「やってきた」と言っているわけで講師担当です。
 教材は、『発注者ビューガイドライン データモデル編』からの抜粋です。

概要

題名
発注者ビューに見るドキュメンテーションの工夫
予定時間
30~45分程度
かかった時間
60分

教材の内容

  • p.25 「1.4 CRUD図」
  • p.27 「2.1 表現のコツ一覧」
  • p.38~42 「2.4 CRUD図の表現のコツ」
  • p.90 「2.6 業務とデータの関係を確認するコツ」

 以上のページを抜粋して、メンバーに配布いたしました。


 社内勉強会やってました - ITドカタのWeb巡回日記よりリンク。

 プレイバック(説明内容の思い出し書き)を「続きを読む」に移動、さらに追記。


プレイバック

 以下は、勉強会でしゃべった内容を思い出しつつ起こしたメモです。ウソデス。かなり脚色&補強してます。

オープニング

 オープニングと言うことで、そもそも『発注者ビューガイドライン』とは何かについての説明を実施。

 『発注者ビューガイドライン』は、NTTデータ、富士通、日立といったシステム開発会社の有志が、要件定義のノウハウを持ち寄って作成された資料です。

 システムを開発する際は、いわゆるSIerと呼ばれるシステム開発会社と、そのシステムを利用するユーザー企業という二つのステークホルダが深く関わることになります。
 システム開発会社の側には、たとえばPM、SE、PG、あるいはソリューション営業と言った人たちがいます。一方、ユーザーとしては銀行や信用金庫、生・損保、あるいは官公庁などの業態があります。
 システム開発会社の担当者は、これから開発しようとしているシステムについて、こうした様々な業態のあるユーザーの了解をとりつけなければなりません。その際に頻繁に取り交わされるのがドキュメントです。

 『発注者ビューガイドライン』は、このドキュメント作成の手引きとなって、システム開発会社とユーザーとの間のコミュニケーションギャップを埋め合わせるヒント集です。

p.25 「1.4 CRUD図」

 CRUD図とは、業務で使用するデータがいつ発生し、参照更新され、削除されるかというタイミングを、関連する機能と突き合わせる表です。
 たとえば「顧客登録」の機能では、ある顧客Aさんの情報は、顧客情報マスタには存在しません。だから追加=作成(Create)しなければならない。「顧客検索」であれば、Aさんの情報は登録済みであるので参照(Read)の処理が実行されます。

 CRUD図が主に使われるのは、プログラムからデータベースを参照する場合です。ある機能、たとえばここでは「顧客登録」機能を実装しようとするとき、データベースにINSERTする処理が存在しなければ、顧客マスタにAさんの情報は追加されないことになります。

p.27 「2.1 表現のコツ一覧」

(特になし)

p.38 「2.4 CRUD図の表現のコツ」MD3001:CRUD図のCreate,Read,Update,Delete記述欄を固定する

 なんでこんなことを書いているかの理由について、私の推測を述べます。
 ふつうに、ExcelなんかでCRUD図を書こうとすると、たとえば作成と参照の行われるマトリックスには「C,R」と左寄せで書くことになると思われます。
 このコツがそうしないように提唱しているのは、たとえばこの「C,R」というカンマで区切った書き方は文章になっているからです。C,R,U,Dのそれぞれについて決まったポジションがあれば、一目であるなしがわかります。
 しかし、「C,R」という文章の書き方になっていると、全体を読み通さなければなりません。
 確認しなければならないマトリックスが一つや二つなら、大した問題にはなりません。しかし、実際のCRUD図では、取り扱うビジネスプロセスもエンティティも桁違いになります。一目でわかる直観性というのは、表が大きくなればなるほど意味を持つようになります。

p.39 「2.4 CRUD図の表現のコツ」MD3002:CRUD図のエンティティをイベント系エンティティとリソース系エンティティに分離して記述する

 ここでいうイベント系エンティティとは、作ったり消したり、書き換えたりすることの多いテーブルです。逆にリソース系エンティティというのは、一度作ったら変更される可能性の少ないテーブルです。
 一般論としては、リソース系エンティティは参照される場合が多いのでインデックスをつけることでパフォーマンスが向上します。逆にイベント系エンティティにインデックスをつけると、更新処理でパフォーマンスが低下する可能性があります。

p.40 「2.4 CRUD図の表現のコツ」MD3003:CRUD図のビジネスプロセスを実際の業務の時系列順に並べる

 左側のビジネスプロセスは、上から下に向かって順番に実行してます。常識的に考えて、受注していないのに請求するということはありえないですね。

p.41~42 「2.4 CRUD図の表現のコツ」MD3004:CRUD図のイベント系エンティティをエンティティを作成する順番に沿って並べる

 日本語だけ読むと何のこっちゃですが、これも合理性があります。
 先ほど、受注もしてないのに請求するのはおかしいと申し上げましたが、同様に受注伝票を受け取っていないのに請求書を発行することもありません。同じことです。
 そして、ここでCRUD図を改めて見直してみると、一連の業務をこなすことで、イベント系エンティティについてはCRUD図の左上から右下に向かってCのマークが並んでいることがわかります。

p.90 「2.6 業務とデータの関係を確認するコツ」

 じっさい、CRUD図自体は、あまり技術者以外の人に見せるものではありません。
ですが、これだけのビジネスプロセスがあって、その中でこれだけデータを扱ってますよというボリューム感を示すために、CRUD図をベースとした資料を活用できます。

 この図を、最初のCRUD図と比較すると、X軸とY軸が入れ替わっているのがわかると思います。
どうして入れ替わっているかというと、エンティティを分類しているとあります。
 実際の業務で使われるレベルのCRUD図であれば、このサンプルの図の数倍のエンティティが登場すると思われます。数が増えれば、それだけ見つけ出すのも難しくなると言うことです。

 その点、エンティティを分類しておけば、目的とするエンティティをすばやく見つけることができるようになります

スポンサーサイト



FC2ブックマーク | この記事をokyuuへインポート | このエントリーを含むはてなブックマーク | ニフティクリップへ追加 | この記事をクリップ! | イザ!ブックマーク | POOKMARK Airlinesに登録する | del.icio.us |
動作未検証 | | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証 | 動作未検証

trackback


この記事にトラックバックする(FC2ブログユーザー)

[IT] 発注者ビューガイドライン関連のクリップ抽出

 連載:テストエンジニアの視点で読み解く「発注者ビューガイドライン」|gihyo.jp … 技術評論社 ノウハウ [okyuu.com]  [画面編]見た目の分かりやすさが落とし穴:ITpro ノウハウ [okyuu.com]  第6回 [画面編]画面遷移を“整列化”する:ITpro ノウハウ [okyuu.co

[IT] 今日のクリップ

データ設計 マスター系と更新系  [データ設計]マスター系と更新系を明確に分ける:ITpro ノウハウ [okyuu.com]  今日の勉強会で取り上げた内容、もろにかぶってたんだな。  いや、今の今まですっかり忘れてたという。  マスター系というのが発注者ビューガイドライン

[その他] 社内勉強会やってました

社内勉強会 今回は「発注者ビューガイドライン」の紹介という趣旨。かなり軽め。  中身については以下のところに書きました。  [Other] 社内勉強会やってました  実際、しゃべった内容全然覚えてなくてフイタ。ただその場で思いついたこと口に出してただけだもんな。  

comment

管理者にだけメッセージを送る

カレンダー
10 | 2019/11 | 12
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最近の記事
月別アーカイブ
カテゴリー
ブログ内検索
RSSフィード
リンク
いろいろリンクボタン
埋め込みe-Words