Successfully reported this slideshow.
Your SlideShare is downloading. ×

DB設計を静的解析ツールを作ってみた @まべ☆てっく vol.1

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 16 Ad
Advertisement

More Related Content

Slideshows for you (20)

Viewers also liked (17)

Advertisement

Similar to DB設計を静的解析ツールを作ってみた @まべ☆てっく vol.1 (20)

Recently uploaded (20)

Advertisement

DB設計を静的解析ツールを作ってみた @まべ☆てっく vol.1

  1. 1. DB設計を静的解析する ツールを作ってみた 菅野明洋 @まべ☆てっく vol.1
  2. 2. 免責事項 ❖ 本発表における見解は、 私自身の見解で行っております。 ❖ 所属する会社、団体の見解を反映したものでは ありませんので、ご了承ください。 今回は個人の活動として参加しております
  3. 3. 自己紹介 ❖ 名前 ❖ 菅野 明洋(すげの あきひろ) ❖ 所属 ❖ 株式会社Aiming 大阪スタジオ インフラチーム ❖ 業務内容 ❖ スマートフォン向けゲームのシステムを見守る ❖ 最近は上海に行ってる
  4. 4. 今回発表するもの ❖ 概要 ❖ ER図を静的解析し問題を指摘するツール ❖ 作った目的 ❖ 設計起因による問題の早期発見と 設計レビューの負荷の軽減 ❖ ツールコンセプト ❖ 人の手による機械的作業の低減、 意味のある設計の議論の時間確保
  5. 5. 環境 ❖ OS ❖ Windows10, 7 ❖ プログラム ❖ C,C++ ❖ ライブラリ等 ❖ boost, hunspell, Xerces-C++, SimpleXmlWriter
  6. 6. ツールが出来るまで
  7. 7. ある日(ちょっと昔話) ❖ ある日、DBレビューを していました。
  8. 8. よく有った問題 毎回同じ指摘点がある スペルミス 型設定ミス リレーションシップが無い インデックスが無い ミスの見逃し 毎回報告書書くの面倒
  9. 9. よく有った問題 毎回同じ指摘点がある スペルミス 型設定ミス リレーションシップが無い インデックスが無い ミスの見逃し 毎回報告書書くの面倒 修正は後から出来るけど、 出来れば早いうちに片付けたほうが 開発の巻き戻りが少ない。
  10. 10. 考えた解決策 ❖ そうだ、自動化しよう
  11. 11. できた機能 ❖ 正規表現を用いた命名規則チェック ❖ データ型とDDLオプションのチェック ❖ ER図の論理名、物理名のスペルチェック ❖ リレーションシップの自己参照のチェック ❖ リレーションシップの不足をチェック ❖ インデックスの不足チェック ❖ xlsx形式のレポート出力
  12. 12. 使った結果 ❖ ケアレスミスの検知速度、フィードバックの時間短縮 ❖ 細かい点の確認に数時間要するところ数秒まで短縮 ❖ スペルミスなど細かすぎる点のチェックも有用 ❖ インデックス、リレーションシップの貼り忘れの検知も 偶に役に立った ❖ 機械的作業の軽減により、(肉体的&精神的)負荷が下がり、 設計思想的な部分の議論の時間に割くように出来た。
  13. 13. Demo
  14. 14. そして、OSS化してみた ❖ Source code ❖ https://github.com/asugeno/safer ドキュメントは鋭意作成中 ❖ Binary ❖ https://github.com/asugeno/safer_binary
  15. 15. 将来的にやりたいこと(目標) ❖ 短期目標(直近の作業) ❖ 対応フォーマットの追加 ❖ MySQL Workbench等 ❖ ドキュメントの拡充 ❖ 中期目標(一年以内?) ❖ Mac,Linux対応 ❖ Jenkins対応 ❖ 設定ファイルを生成するGUIツール実装 ❖ JavaScriptによる追加処理の定義機能追加
  16. 16. 最後に 株式会社Aimingでは 各種人材を絶賛募集中です! 一緒にゲームを作りませんか?

×