2016年11月7日月曜日

【SQL Server】開発環境構築(ER図作成にSSMSを使用)

◆概要
 SQL Serverでの開発の流れをまとめる。その際、SSMS(Microsoft SQL Server Management Studio)でER図を作成することを前提とする。

◆設計の流れ
主題とは離れるが、設計の全体像は【設計】設計・開発・試験の流れと設計書

◆開発環境・試験環境構築の方針
 ER図作成・単体試験・結合試験・総合試験をそれぞれ別のSQL Serverインスタンスとする。
場合によっては、もっとたくさん環境が必要かもしれないし、少ない場合もある。
(結合試験無しとか、総合試験無しとか、お客さん試験環境有りとか、運用環境有りとか)
ただし、環境を増やすと保守コストがかかるので注意が必要。

◆環境(DB)
  • 開発メンバのPC(DB開発者のみでも良い。アプリケーション開発者は必要に応じて。)
    • ER図作成用インスタンス
    • アプリ開発用インスタンス
    • 単体試験用インスタンス(ほとんどの場合アプリ開発用と同一でいい)
  • 結合試験PC
    • 結合試験用インスタンス
  • 総合試験PC
    • 総合試験用インスタンス(実機を1セットは必須。ESXiなどのVMで複数セット作っておくと並列で試験できる。しかし、保守コストがかかる。)
◆環境(アプリ)
  • Visual Studio Pro以上が最低1台欲しい。DBインスタンスからC#コードの変換がかなり楽。Expressでもできると思うが、GUIではできず、結構面倒臭いと思う。Community版は未調査。欲を言うとより高価なEditionのFakesや自動テストコード作成機能も欲しい。
◆環境構築手順
  1. SQL Server&SSMS(SQL Server Management Studio)インストール
  2. ER図作成用インスタンス作成
  3. ER図作成&DDLを手動で書かずにテーブル作成
  4. DDL文をエクスポート(SQL Server Management Studio)
  5. DDL文をSVNやGitへ登録
  6. (必要に応じて)開発用DBインスタンス作成
  7. DBからC#コード生成DBからC#コード更新(上書き)
  8. 単体試験環境/結合試験環境/総合試験へ反映
  • 一度構築完了したら、その後、1,2,6は不要。
  • 設計では3を実施。
  • 開発では、4,7。ただし、設計漏れ・設計ミスがあったら、3,4,7を行う。
  • 試験では、8のみ。ただし、テーブル設計ミスなどのバグがあったら3,4,7,8を行う。
※ ER図作成をSQL Serverで行うなら、上記と思われる。
 (SQL Serverは初めて使用するので、手探りで手順を確立中。)

◆基盤作業
 基盤作業も平行して作業を進める。
  • フェイルオーバの要否でかなり工数が違ってくる。手順自体はさほど大変でなくても負荷かけた状態でフェイルオーバする試験などは負荷をかける準備が大変。
  • バックアップの方式(差分バックアップの有無)、圧縮の有無、容量設計、…
◆基盤手順


0 件のコメント:

コメントを投稿