株式会社ジェーエフピー

SCADE

SLPと他の手法との比較

電気ポットの「企画要求仕様」(リスト1)を題材にします。以下の5項目の要求が書かれています。

リスト1 企画要求仕様

PR01: 電気ポットの容量は2リットルとし、10度Cから沸騰するまでの時間は、15分以内とする。
PR02: 電源コンセントをつなぐと、直ちに作動し、ヒータで加熱を始め、沸騰に達したら、90度Cに保温する。
PR03: 再沸騰ボタンが押されたら、再沸騰を始める。
PR04: 水が加えられ、温度が低下したら、再沸騰を始める。
PR05: 保温中であれば、お湯を注ぐことができる。

分析者は、まず、「企画要求仕様」をそのままSCADEで記述したもの(図1)を作りました。

図1 「企画要求仕様」をそのままSCADEで記述したもの

続いて、分析者は、企画要求仕様を以下のように詳細化しました。(実際の開発では、発注者の了承を得る必要があります。)

  • 【PR01】はハード仕様であり、ヒーターの最低必要熱量を指定している。リスト2の計算により、ヒーターはだいたい900W以上のものから単価の安いものを選定することになる。
  • 【PR02】は、ヒーター加熱の条件を与えている。空焚きや噴きこぼれ防止のために、ポットのすべての動作において、10 cc≦水量≦2000 ccの制限を与える。水温<85℃ の条件で沸騰状態に入ることにする。水温=100℃ で保温状態に遷移する。保温状態では、91℃≦水温 でヒーターオフ、水温≦89℃ でヒーターオン。
  • 【PR03,PR05】はそのまま。
  • 【PR04】は自動再沸騰の条件を与えている。「水が加えられた」の判定はしない。新たに水位センサーを増やすことは故障率とコストを増大させるため、純粋に温度センサーだけで判定させる(【PR02】の水温<85℃)。

リスト2 ヒーターの最低必要熱量

(100‐10) [℃]×2000 [CC] = 180 [Kcal]
180 [Kcal]×4.2 [J/Cal] = 756 [KJ]
756 [KJ] ÷ (15 [min])×60 [sec]) = 840 [W]

これをもとに、分析者は詳細化された仕様をSCADE形式で記述しました。(図2)

図2 詳細化された仕様をSCADEで記述したもの

このSCADE記述から、以下の状態遷移図が得られます。

図3 状態遷移図