要件定義の進め方

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

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

IPAの非機能要求グレードの小項目を理解する(No7/119:端末)

[A.2.1]可用性>耐障害性>端末

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

req-definer.com

ただし、サーバーのそれと異なる点として、サーバーの場合は、端末から接続されているので壊れたら別系統へ速やかに切り替えなければならないが、端末の場合は、文字通り端っこの末尾に存在している機器なので、壊れたら別の機器に交換するだけでよいという点がある。なので、端末の冗長化においては、予備器をどれだけ用意しておくか?というのが議論のポイントになる。

耐障害性(端末)に関して決めるべき項目は2点存在する。

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

以下、順に説明する。

冗長化(機器)

機器の冗長化とは、端末を複数用意することを意味する。サーバーの冗長化と異なり、検討項目はシンプルだ。下記図に、冗長化のイメージを示す。

f:id:req-definer:20220219084912j:plain

端末を冗長化

冗長化コンポーネント

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

耐障害性(端末)に関するまとめ

f:id:req-definer:20220219090730j:plain

[No7][A.2.1]端末

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

  1. 端末をどこまで冗長化(※1)すべきか
  2. 端末の部品(ディスクや電源など)をどこまで冗長化(※1)すべきか

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

結論:非機能要件として、端末の冗長性について合意しよう