最近のアジャイル事情
10年以上仕事している人ならば分かると思うのですが、開発に馴れてくると大概のものは1週間で出来てしまいます。下手なユーザーストーリーを設定すれば別ですが、新人よりも分析能力が高いので、そもそも1週間以上かかるようなユーザーストーリーなんてほとんど設定しません。10年以上のキャリアを持つ人が、1週間以上もかかるストーリーなんて粒度が粗すぎます。
アジャイルの本質は変化なので、お客様に提示するまでの時間を極力短くし、ユーザーからのフィードバックを頻繁に得ようとします。それ故に速さを求め続け、お客様の要求を引き出した時点で、分析/設計/実装/運用の想定が殆ど終わっている状態になりますから、大概の事は「来週お持ちします」で終わりです。後はフィードバックを繰り返すだけです。
殆どの事が1週間以内に終わるので、自然とお客様から「もっと細かく報告してくれ」と言われるようになります。細かくと言ってもマイクロマネージメントの話しをしているのではありません。ユーザーストーリーはある程度の長さを持ちますから、それを細かくしたサブストーリーの進行状況をお客様は聞きたいわけです。
その理由をお客様に聞いたところ、「仕事が速すぎるのでこちらの要求が間違っていないか心配になる」だそうです。何週間もかかっている遅き時代では、仕様を変更したい時に直ぐに声を掛けられます。しかしながら、今の様に日単位のアジャイルでは、1週間後には完成しているのでストップが出来ないのです。これは仕様の確認作業が原因で起こる事象です。
システムを発注する側のお客様はその道のプロですが、情報技術については素人です。ですから、何を要求したいのか分からない状態です。従って、実際に試してみてようやく判断しています。アジャイル化により速さが増すと、お客様の確認作業が間に合いません。そこで、今何を発注しているのか詳細に把握したくなるわけです。
ただし、お客様に報告する情報は簡潔でなくてはなりません。ただでさえ、ついていけない速さになりつつあるので、情報の洪水に溺れてしまわないように、情報量を制御せねばなりません。お客様が知りたい抽象度、かつ知りたいであろう情報を察して報告するセンスが求められます。
例えば、システムの仕様について憂慮するべき点が見つかる場合もあります。その場合、お客様は極力早期に検討するために、一刻も早くその情報を知りたいと願います。大概の場合、ユーザーストーリーを練る段階で分かりますが、ユーザーストーリーの整合性を図るために、複数のユーザーストーリーを予め作る作業があります。その段階で判明した仕様の不備、もしくは検討課題が発生する場合もあります。また、所詮人間がする事ですから、やってみて初めて気付く事もあります。そうした例外情報こそお客様は知りたいのです。その他にも「業務そのものが変更された」なんて場合もあります。世の中は「人間にとっては想定外」で出来ているのです。神様でなければ100%の未来予知はできません。ですから、想定外が起こる事を想定しておくのは当然なのです。
こうした出来事から私は、今や開発は速くて当たり前であり、システムを受け入れる側のお客様に対して如何にきめ細かいサービスをするのかが求められているのだと考えました。システム開発もサービスの一種です。我々開発者は、お客様がより快適に感じるサービスの提供を、目指さなくてはならないのではないでしょうか?