自宅サーバのインフラ設計書を公開します
自宅サーバのインフラ設計書を公開します。
Design paper of the home server(抜粋)
昨夜にTwitterで公開したら予想外に反響があったので、ちゃんとエントリに残すことにしました。クラックされるおそれがあるので、細かい部分は公開できないことをご了承ください。
内容はこんな感じ。
- 要件概要
- 機器仕様
- ネットワーク設計
- ソフトウェアスタック設計
- 共通基盤設計
- サーバ詳細設計
上記にバックアップ設計や運用管理まわり*1を加えれば、インフラの設計書はだいたいこんな感じではないかと思います。
インフラの要件定義は難しい
一方で、インフラの要件定義は十分に標準化が進んでおらず、会社やチームによって文化がかなり違います。特に受託開発(SI)の場合は、お客様の中にインフラに詳しい人がいなくて調整に苦労することも多いと思います。費用と可用性のトレードオフの部分はなかなか伝わりづらく、運用に入ってからしばしば問題になるのが実情です。
要件定義では、IPA/SECが公開している非機能要求グレードの資料が参考になります。システム基盤の非機能要求に関するグレード表(03_hikinou_grade_2010416.pdf)の4ページ目に概要が書いてあります。大項目を抜粋します。
- 可用性
- 性能・拡張性
- 運用・保守性
- 移行性
- セキュリティ
- システム環境・エコロジー
中にはよく分からない記述もあるので、飛ばして自分なりの解釈で進めるとよいかと思います。細かいことは経験者に聞くのが一番です。
要件定義の資料は抽象的で分かりにくいので、勉強会でも取り上げにくいテーマと思います。自宅サーバという身近なシステムを例にすることで、少しは取っつきやすくなるのではないでしょうか。
冒頭で公開した設計書は要件定義の部分がすっぽり抜け落ちているので、気が向いたらちゃんと書く予定です。
*1:運用設計をさぼってるのバレバレですな。