KAOS (44) 如何に衝突を解決するか (3.1.3-2)

特定の解決策に飛びつく代わりに,普通は他の代替策がないか,探した方が良い.(p.92)

ここでは,幾つかの衝突の解決策を提示している.最初は,これまでの要求抽出技術を使用する.特に,インタビューやグループセッションが効果的としている.インタビューでは,要求の理由を直接問うことができる.グループセッションは,そもそも利害関係者が集まって調整する場所である.ちょっと同語反復的だが,その場は,衝突の解決の場でもあり,もちろん有効である.

上記の他に,衝突解決のための利用できる幾つかの考え方が,ここでの主題である.この方法は,演算子を用いて,要求を操作するという,おもしろいいい方になっている.要求に,演算子を加えて「操作」することで,衝突のない要求に変更するということである(今回の説明は,バイアスが少しあるかもしれない.私自身の方法とラップしている部分があり,偏った説明になっているかもしれない).

境界条件を避ける

以前の図書館システムの例で,2週間以内に返してもらわないと困る,という図書館スタッフの要求と,必要なだけ借りたいという借り手側の要求があった.「2週間」が,ここでの境界である.この境界条件をなくすというのが,ここでの「操作」である.

この「操作」は,次の場合に,有効な解決策となる.必要とする人が図書館に来た時に,貸し出し中で読めないのは困るというのが,スタッフが2週間とする理由だとする(そもそも2週間でも不適切かもしれない.しかし,折衷として期限を切ったとする).いま,境界条件を消したので,誰でも好きなだけ借りることができるようになる.多数の「あの本はないのか?」で,スタッフは攻められることになるかもしれない.

ここで,あきらめないで,更に思考実験を続ける.

どの本が,どれくらい必要とされるかの傾向を見る.貸出が重なる可能性がある本については,同一本を複数用意することとする.そのうち,かつ,一定数は,貸し出ししないこととする(実際に多くの図書館はそうしているに違いない).

これで,上記の問題は解決し,かつ境界条件をどうするかで,悩む必要もなくなる.もっとも,スタッフの期限を切る理由が,別の場所にあれば,別の解決策が必要である.例えば,無期限にすると,誰も返却しなくなるからという理由.要求のもとになる理由を知ることは,いつでも重要である.

衝突している要求文を保持する

ここでの操作としては,要求に対して,新たな内容を付け加える.前述の例であれば,2週間という期限は残す.但し,「待っている人がいなければ,返却した直後に,再度同じ本を借りることができる」という但し書きを加える.図書館に来た人は,最大2週間待たないといけないかもしれない.しかし,もし期限を設定する理由が,「無制限にすると返却されない」ということならば,最大待つ期間は分かり,かつ,借り手の必要なだけ借りるも(新たな読み手が現れない限り)満足する.

衝突している要求文を緩和する

次のような但し書きをつける.「もし,2週間を超えて保持する許可を明示的に得たならば,必要な期間借りることができる」.これは,前述の但し書きと似ている.

操作としては,衝突している文の合成と見なすことができる.

優先度が低い要求を取り下げる

これは,もっとも単純である.優先度が,要求文に付加されていれば,そこで足きりするという操作になる.ただ,利害関係者で優先度が異なるときに,どうやって,適切な優先度を付加するのかという,別の問題を生む.

衝突の原因あるいは対象を特殊化する

これは,要求文に含まれる対象(主語であったり,目的語)を操作する.要求:「ユーザは,本の貸し出し状況を知ることができること」と要求:「学生は,どのユーザが本を借りているかが知ることができないこと」は,衝突する.これは,最初の要求の主語である「ユーザ」を「スタッフユーザ」に特殊化することで,たちどころに解決してしまう.

今回のように,問題解決のときに,書かれている文に対して,操作するというのはきわめて有効な手段である.解決策について,ただ思い悩むより,遙かに生産的である.また,単に解決策だけではなく,課題を見つけるときにも使用できる 1

今回メインの例は,図書館システムであった.読む本は,必ず買うようになってから,図書館には行かなくなった.しかし,よく利用していた時代を思い出すと,少し心が痛む.

(nil)

Notes:

  1. 個人的には,ハザードや脅威を見つけるときに使用している.