メソッド屋のブログ

米マイクロソフト Software Development Engineer 牛尾の日記です。ソフトウェア開発の上手なやり方を追求するのがライフワーク。本ブログは、個人の意見であり、所属会社とは関係がありません。

ユーザ企業の方々がベンダに期待すること

下記の記事がいつ書かれたものかはよくわからないけど、たまたま見つけた。

要求開発もやってる身だし、読んでいてなんか感じるものがあったので、コメントしてみる。


スーパーCIOに聞くIT戦略 第5回「ベンダーに対する思いについて」


他人の「視点」ってなんだかんだいってなかなか得難いもので、わたしもそれなりにそれを得るための技術を勉強したりしている。
例えばNLP等の技術もあるし、ペルソナシナリオ法や、ステークホルダ分析もそうだけど、それらの「手法」だけでうまくいくとは限らない。やはり生の「お客様」の声を聞くと、自分の想像なんかたかが知れていると思うことが多い。

ユーザーが何をしたいかきちっと示すことは大変重要なことですが、細かな仕様まで出せなんて言っているのはオーダーメードの世界ではほとんどソフトウエアの業界だけだと思います。例えば、皆さんがご自分の注文住宅を建てるときにそんな細かい仕様を出して注文しますか。しませんよね。こんな広さで、家族が何人いて、予算はこのくらい、土地の大きさはこれだけなどと条件を示します。そうすると、この土地にはこういう規制がかかっているから、このぐらいの大きさの家までが建つとか、それならこんな間取りにしたらどうですか。お好みの外装、内装はどうですかということを提案し続けて、合意形成が取れた段階で契約に入るわけです。それができていないところが気にかかります。

自分のようなエンジニアからすると、「ソフトウェアは建築とは違うし、複雑なものだから」と思ってしまうけど、とにもかくにも「使う方」「発注する方」はこんなことを望んでいるという「要求」として把握する必要があるかと思う。自分たちだって、家電を買う時に、技術的な都合とか、内部のプロセスがどうであるとか、そんなことはどうでもいい。ただし、「こうあってほしい」とかは思うはずだ。作る方からすると、いろいろ思うことはあるけど、一旦「視点」を移動してみると違った景色が見えそうだ。

ソフトウェア的な都合を一切置いておくと、確かに「こんな細かい仕様を出せなんてソフトだけや」と思うのは無理からぬことですね。

要するに、はっきり言ってしまうとプロフェッショナルでないと思うのです。なぜそんなになってしまったか。それは熾烈な競争をしていないからです。日本語と日本の商習慣に守られた日本の国内でしかビジネスをしてきていないから、なかなかそういったものにさらされる機会がないのです。だからこそ、発注側がきっちりと要求を出すことが大事だと言い続けています。しかし、本音のところはそういうユーザーニーズを汲み取った上でサービスを提供するのがベンダーではないかと思っています。

 教科書的にいうと「要求工学」的に考えると、結局のところ「要求」なんてほっといても出てこないんだ〜、ちゃんとステークホルダの話を聞いて、コミュニケーションを密にとらんとロクなもんはできませんでという「理屈」はそうですし、実際そうした方がいいでしょう。

 しかし、ユーザニーズとしては「くみ取ってくれ」というのがあるし(きっと、ソフト発注してるのに、業務やってる人の工数割けないとかあるかも)、また現場なら特に「派生開発」の場合なんか「要求を聞けない」ケースは実際の現場では良くあること。

 エンジニアリングは結局現場で役立たんと意味ないわけだから、そういう現場に対応するには、現場でもいろいろ工夫してやっている。これからは、そういうニーズや現場に対応する時に役立つ方法なんてものがあってもいいかもしれない。