Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

データモデルは時空を越える

3.784 visualizaciones

Publicado el

2015/2/21 しょぼちむにデータモデル設計について教えてくださいの会 #syoboben

の発表資料です

Publicado en: Ingeniería
  • Sé el primero en comentar

データモデルは時空を越える

  1. 1. てらひで 2015/2/21 #syoboben データモデルは 時空を超える!? ~移動する情報と追跡可能性~
  2. 2. てらひで @terahide27 認定スクラムマスター 認定スクラム プロダクトオーナー アジャイルコンサルタント アーキテクト
  3. 3. てらひで @terahide27 http://gigazine.net/news/20141206-anime-2015winter/ 深夜アニメの カバレッジ90%以上
  4. 4. 今日お話すること •データモデルってなんだっ け? •履歴と更新 •データと移動
  5. 5. やらないこと •むずかしいお話 •詳しい説明 •アニメのお話
  6. 6. データ モデル
  7. 7. データ - Wikipedia 伝達、解釈、処理などに適するように形式 化、符号化されたもの、または再度情報 として解釈できるものをいう。 -snip- 端的に言うと、意味のあるデータが 「情報」となる。→情報 http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF
  8. 8. モデル - Wikipedia -snip- システムやプロセスに関して、計算や予測 の助けとするために、単純化した記述のこ とで、特に数学的なそれのこと[1]。現実 よりも単純化した説明 →モデル (学術)、 数理モデル。 http://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%87%E3%83%AB
  9. 9. データモデル 意味のあるデータ= 『情報』 を 単純化した記述のこと
  10. 10. 今日のお題1 つぶやきシステム
  11. 11. ここ! 35,582回ツイート 35,582件の履歴
  12. 12. 簡単なモデル ユーザ ツイート 1 0..*
  13. 13. 履歴 ツイート 値 更新日時
  14. 14. 履歴 おまけ ツイート 変更履歴 1..* 1
  15. 15. 今日のお題2 受発注 むずかしい (>_<)
  16. 16. 整理 •データ – 注文、発注、商品、などなど •やりたいこと – 注文があった商品を発注先へ納品する – 二重出荷、未出荷などの誤出荷はNG •考えること – 倉庫に商品がなかったらどうなるんだろう? – などなど
  17. 17. やり方 •一番細かい単位でデータを保持 –トランザクションの単位 •すべての履歴を残す
  18. 18. Sample 注文 * 1 明細 商品 個数 値 1 * ※いろいろ割愛 明細を更新する 可能性のある 最少単位で
  19. 19. 使いづらい (>_<)
  20. 20. なにが起こるか •更新はCreateとDeleteだけになる •参照はがっちゃんこしてみればいい
  21. 21. 用法容量を お守りの上 適切にお使い ください
  22. 22. 性能には気 を付けてね
  23. 23. •時間(現在・過去・未来の受注) •空間(倉庫から発送先へ) つまり移動! 時空を超える
  24. 24. TEA •AccountPattern –アナリシスパターン(ISBN:4894716933) •絶版orz •Transaction(トランザクション) •Entry(エントリー) •Account(資源)
  25. 25. 資源 移動の対象となるもの 名前 :商品 商品名:みかん 単位 :箱 個数 :在庫数+入荷数ー出荷数
  26. 26. エントリー 資源をどのくらい変更したか 個数:30 個数:-1 入荷の時 出荷の時
  27. 27. ここまで エントリー 資源 * 1
  28. 28. トランザクション どこからどこへ移動したか 名前:入荷 名前:出荷 入荷は 入荷元から 倉庫への移動 出荷は 倉庫から 出荷先への移動
  29. 29. ここまで エントリー 資源 * 1トランザク ション *1
  30. 30. 倉庫には今いくつみかん箱がありますか? 質問 1 30箱 2 -1箱 3 -3箱 エントリー 26箱 資源 1 入荷 2 出荷 3 出荷 トランザクション
  31. 31. 今日のお題1 つぶやきシステム
  32. 32. つぶやき ツイート 変更 ツイート <Account><Entry> * 1ツイート 変更 <Transaction> 11 ※冗長だね
  33. 33. つぶやき ツイート変更 ツイート <Account><Entry> クソモデルw1 追加 クソモデルw * 1
  34. 34. つぶやき ツイート変更 ツイート <Account><Entry> 天使モデル1 追加 クソモデルw 2 変更 天使モデル * 1
  35. 35. つぶやき ツイート変更 ツイート <Account><Entry> 1 追加 クソモデルw 2 変更 天使モデル 3 削除 * 1 天使モデル
  36. 36. 履歴 ツイート 値 更新日時
  37. 37. ご参考 •オージス総研 アナパタ勉強会のページ –第6章 在庫管理と会計 -前半- http://www.ogis-ri.co.jp/otc/hiroba/others/AnaPatStudy/
  38. 38. まとめ •データモデルはテーブル設計 とは限らない •履歴を残そう •更新を無くそう •必要があればトレーサビリティ にも気を使おう
  39. 39. われわれに よい 学びの場を 与えてくださった しょぼちむはえらい 拍手!

×