エンジニアがポートフォリオを作るということ

Takaaki@インフラエンジニアのポートフォリオ

ユーザ用ツール

サイト用ツール


engineer:design


システム設計の流れ(要件定義・外部設計・内部設計)

要件定義(requirement definition)

要件定義とは、クライアントがシステムに求めている機能をまとめて、システムの仕様や範囲を決めることです。
クライアントの要望を詳しくヒアリングし、要件定義書を作成します。

情報提供依頼書(RFI : Request for Information)

発注側企業がSIerやベンダーに対して、会社情報や実績、提供可能なサービスの情報などの提示を求める書類


提案依頼書(RFP : Request for Proposal)

発注側企業のIT担当者や情報システム部門の担当者が、SIerやシステムベンダーに対してシステム構築・リプレイスを依頼する際に、自社システムに必要な要件や実現したい業務(解決したい課題とあるべき姿)などを示す書類です


要件定義書(requirement definition document:RDD)

発注側が作成し、システムに求める細かな仕様や機能について開発側に伝える文書です。
ただ、開発会社がヒアリングと確認を行いつつ作成することも多いです。

  • システム導入の目的と目標
  • システムの概要/システムの構想
  • システム概念図
  • ハードウェア要件
    • 冗長化
    • スケールアップ
    • スケールアウト
    • オートスケール
  • ソフトウェア要件
    • OS指定(Linux)
    • DBMS指定 (Oracle)
    • ミドルウェア指定(Apache)
    • 開発言語 (Java)
  • ネットワーク要件
    • 回線の冗長化
  • システム導入後の業務フロー
  • 機能要求
  • 非機能要件
    • 可用性要件
      • サービス稼働率
        • 99.5%以上 可用性の高いシステム
        • 99% 以上 可用性の一般的なシステム
        • 95% 以上 可用性の低いシステム
      • RTO(Recovery Time Objective)・・障害が発生してから何時間で復旧させるのか
      • RPO(Recovery Point Objective)・・障害が発生した際に、どの時点のバックアップまで戻すのか
      • 障害通知時間
    • バックアップ要件
    • 性能要件
      • 通常時平均応答時間(3秒以内)
      • ピーク時平均応答時間(5秒以内)
      • 同時接続数
    • 拡張性要件
      • ハードウェアの拡張性
        • スケールアップ
        • スケールアウト
        • オートスケール
    • セキュリティ要件
      • 通信の暗号化機能(SSL/TLS)
      • 不正侵入防止機能(IDS/IPS)
    • 運用要件
      • 運用時間 (店舗、インターネット)
      • 監視時間
    • 監視要件
      • 何を可視するか
    • 保守要件(システム監視体制)
      • サポート提供時間
      • OSのバージョンアップ
      • ミドルウェアのバージョンアップ
      • 故障や老朽化によるハードウェア交換
    • 共通
      • ログ要件
    • 特記事項
      • 費用に関わる要求事項


外部設計(External Design)

基本設計は、システムを外から見たとき何を作るか(WHAT)を定めるもの。

要件定義書に従ってシステムの構成を具体的に設計していく
外部設計ではレビュワーにクライアントも参加する。

基本設計書 (Basic Design)

どのようなシステム、ネットワークを構成すれば、システムの構築を実現できるかをまとめた図です。

業務フロー ユーザーがどのような手順(フロー)で業務を進めるのか
業務の開始から完了までの各プロセスを記号や図形で示して矢印で結ばれていることが一般的です。
機能一覧 構築するシステムの機能を一覧化
システム構成図 * ネットワーク構成図
* ハードウェア構成図
* ハードウェア一覧
* ソフトウェア構成図
* ソフトウェア一覧
画面レイアウト
帳票レイアウト
テーブル定義
ER図
バッチ設計 どんな情報をどんなタイミングで入出力するのかを決める
インターフェース どのように外部システムと連携させるのかを設計するのが、インターフェース設計です。
連携先や連携方法、連携時の参照データなどをまとめます。


内部設計(Internal Design)

詳細設計は基本設計で決められた動きを、どうやって実現するか(=内部設計、How)を決めるもの。

内部設計にはエンジニアが携わります。
エンジニアのみを対象にした資料だと考えて問題ありません。
内部設計では、外部設計の結果を実際に構築、プログラミングできるように、システム内部に特化した詳細な設計を行います。

詳細設計書 (Specific Design)、内部設計書

  • ホスト名
  • ドメイン名

環境定義書、パラメータシート


参考


engineer/design.txt · 最終更新: 2024/11/04 by kurihara

ページ用ツール