一部機能を切り出して、他の機能は既存のままだとしても、その既存はなんなのかはっきりさせましょう
例えば、今までA、B、C、D、E という機能が無制限に利用できたという認識で、
という要件が登場しました。
ここで曲者なのが「C、D、Eは既存通りです」というところ。
「A、Bは手が入るのでテストの対象となりますが、C、D、Eは既存通りということで、これらはテスト対象外です」
とか言われたりします。
いやいや、何かの手違いでC、D、Eにも制限かけてしまってたらどうするのよ?
既存部分を一部切り崩して残りの部分には変更がないように見えても、やっぱりそれは既存部分から一部除いたという変更になりますよね?
さらに、C、D、Eはホントに利用制限かかってませんか?
実は、認識違いや仕様漏れ、別プロジェクトによる手が加わってて、Dに既に利用制限かかってたりしませんか?
「既存通り」というあいまいな記述はせず、
その既存通りがどのような定義かをはっきりさせましょう。
でないと、開発進めていって、
「アレ、ここ違うんじゃない」
となり、ヤバ目の仕様漏れや手戻り発生・・・。
リスケできればいいけど、それができなければデスマ・・・。
「既存通り」を調べるのは大変で、一見何の効果ももたらさないようですが、
その調査は見えないところで重要な役割を果たしているのではないでしょうか?
例えば、今までA、B、C、D、E という機能が無制限に利用できたという認識で、
「今回A、Bにユーザごとに利用制限を設けます、C、D、Eは既存通りです」
という要件が登場しました。
ここで曲者なのが「C、D、Eは既存通りです」というところ。
「A、Bは手が入るのでテストの対象となりますが、C、D、Eは既存通りということで、これらはテスト対象外です」
とか言われたりします。
いやいや、何かの手違いでC、D、Eにも制限かけてしまってたらどうするのよ?
既存部分を一部切り崩して残りの部分には変更がないように見えても、やっぱりそれは既存部分から一部除いたという変更になりますよね?
さらに、C、D、Eはホントに利用制限かかってませんか?
実は、認識違いや仕様漏れ、別プロジェクトによる手が加わってて、Dに既に利用制限かかってたりしませんか?
「既存通り」というあいまいな記述はせず、
その既存通りがどのような定義かをはっきりさせましょう。
でないと、開発進めていって、
「アレ、ここ違うんじゃない」
となり、ヤバ目の仕様漏れや手戻り発生・・・。
リスケできればいいけど、それができなければデスマ・・・。
「既存通り」を調べるのは大変で、一見何の効果ももたらさないようですが、
その調査は見えないところで重要な役割を果たしているのではないでしょうか?
※コメント投稿者のブログIDはブログ作成者のみに通知されます