要件定義の進め方

システム開発の大炎上を防ぐために、上流工程(前工程)に位置する「要件定義」について、考えていくブログです。

要件定義書の作り方
PDCAサイクルではなく、PDCサイクルを回そう
あるべきV字モデルについて整理した
スコープを決めてから、QCDの議論をしよう

IPAの非機能要求グレードの小項目を理解する(No8/119:ネットワーク機器)

[A.2.3]可用性>耐障害性>ネットワーク機器

今回は、耐障害性(ネットワーク機器)について紹介する。耐障害性(ネットワーク機器)とは、サーバーにおける耐障害性と同様、ネットワークがどのくらい障害に耐えられるのかを示す度合いのことを指す。サーバーにおける耐障害性については、下記参照。

req-definer.com

ただし、サーバーのそれと異なる点として、サーバーはネットワーク上の端っこに位置する機器であるのに対し、ネットワーク機器は、サーバーと端末の間に位置している機器なので、壊れたときの影響は非常に大きく(全端末、全サーバーへ影響する)、即座に復帰が求められるという点がある。なので、ネットワーク機器の冗長化においては、壊れた場合の影響度はどのくらいか?故障をどこまで供すべきか?というのが議論のポイントになる。

耐障害性(ネットワーク機器)に関して決めるべき項目は2点存在する。

  1. 冗長化(機器)
  2. 冗長化コンポーネント

以下、順に説明する。

冗長化(機器)

機器の冗長化とは、ネットワーク機器を複数用意することを意味する。ネットワーク機器とは、コンピュータネットワーク上で、ホストのデータを仲介送信する機器のことを指す。下図にネットワーク機器の例を示す。あるホストからあるホストに情報を送信する際、ネットワーク機器を仲介してデータを送信する経路が多ければ多いほど、経路は冗長で、障害に強いことを意味する。

ネットワーク機器の冗長化

冗長化コンポーネント

コンポーネント冗長化とは、ネットワーク機器内部の部品を複数用意することを意味する。コンポーネントとは筐体を構成する部品(ディスク、電源、FAN、ネットワークカード等)のことだ。よくある例は、ディスクの冗長化(RAID - Wikipedia)だ。部品の冗長化に関しても色々なパターンが存在するので、メリットデメリットを見極めて冗長化の検討をする必要がある。

耐障害性(ネットワーク機器)に関するまとめ

[No8][A.2.3]ネットワーク機器

 

今回は耐障害性(ネットワーク機器)について紹介した。顧客との会話におけるポイントは、ネットワーク障害が発生した時のために、どこまで備えをすべきか?である。以下を顧客とベンダで会話しておこう。

  1. ネットワーク機器をどこまで冗長化(※1)すべきか
  2. ネットワーク機器の部品(ディスクや電源など)をどこまで冗長化(※1)すべきか

※1 筐体を複数用意することを意味する

結論:非機能要件として、ネットワーク機器の冗長性について合意しよう