昨日、夜自宅付近で震度3の地震がありました。
震源がかなり近かったようで、自宅では突然ドーンと言う感じで縦揺れがあったそうです(私はまだ帰宅しておりませんでした)。
妻が
「地震!」
と叫んだ瞬間、ものすごい勢いでHannaがテーブルの下に滑り込んだそうです。
Hannaは保育園で毎月避難訓練をしています。決まり切った訓練であっても、やっていると瞬間的に体が動くようになるのですね。
一般的にソフトウェアの開発会社の仕事というのは、パソコンに向かって一日中キーボードを叩いて、プログラムを書くように思われることが多いですが、実際は大分違います。
ソフトウェア会社の下請けで、かなり完成度の高い仕様書をもらって作業をする場合以外は、プロジェクト全体の作業の中で、所謂プログラミングという仕事の占める割合は低いです。
うちの場合も、プロジェクトによっては半分以上が細かい具体的な仕様を決めるまでの資料づくりや検討・打合せであることがあります。
つまり、下請けでないシステム開発会社はプログラミング技術だけでなく、お客さんとのコミュニケーション能力が必要です。
特に「要件定義」と呼ばれるお客さんの要望を具体的な仕様にするための作業は、最も重要で難しい作業です。
先日、ソフトウェア開発支援ツールを作っているメーカーのセミナーの資料(セミナーに申し込んだのですが、直前に用事できて受講できず資料だけもらいました)にもその事が書いてありました。
書いてあることについては、以前から感じていたことではありますが、大手メーカーのちゃんとした調査で、数値が示されていると、自分の考えていたことが正しかったと確認できて安心します。
また、うちだけが特別悩んでいることではなくて、大手も含めほとんどのソフトウェア開発会社が同じ問題で悩んでいるということが分かって安心できます。統計から考えると、うちの成績はよい方であることもわかりましたし・・・。
また、要件定義に失敗(プロジェクトの失敗)の原因についても、その資料によると(私の意見ではなくて資料に書いてあることです)
などが上げられています。かなり賛同できます・・・
ただ、だからといって「お客さんの出す要件が曖昧で、ちゃんと確認してもらえなかったからシステムはできませんでした」とは言えないのが辛いところです。
お客さんに合わせて、打合せや確認資料の作成、現場での調査や確認作業の手伝いなど、どこまでやれば正しい要件を引き出すことができるのかを考え、プロジェクトを成功に導くのがプロとしての努めだと思います。
ただし、それには余分なコストがかかることをお客さんには認識していただきたいと切に願います。
「御社の作った○○サイトよりも規模が小さいから、そのときの費用よりは安くしてよね」
というのは成り立たないのです。コストに係わるのはプログラミングだけでなく、むしろ要件定義やその確認などのコスト、および、その漏れリスクの方なのです。
お客さんの意識が「プログラミング会社に作らせる」という意識であるとプロジェクトは失敗する可能性が高いです。あくまでも「プログラミング会社と一緒に作る」という意識で頂く必要があると思います。
・・・って、かなり偉そうなことを書いてしまいました。 お客さんごめんなさい。
■関連リンク
先日、Hannaが友達のお母さんに教えてもらったらしい(恐らく絵本か何かのお話?)のですが、言うことを聞かない悪い子の家には、サンタさんではなくて、ヨンタさんという人が来るのだそうです。
サンタさんはおもちゃを持ってきてくれるのだけど、ヨンタさんはおもちゃを持って行ってしまうのだそうです。「だから、いい子にしてないとダメだよ」という話なのですが、 それを聞いた日の夜Hannaからの質問、
「ヨンタさん、おもちゃを持ってっちゃうってことは、泥棒? 泥棒っていけないんだよね? 泥棒が来たら父ちゃんがやっつけてくれるんだよね?」
確かに、人のものを持っていってはいけないし、そう言う人は泥棒だ。しかも、以前、「うちに泥棒が入っても父ちゃんがやっつけてやるから心配しなくていい」とHannaに言ったことがある。警察に捕まえてもらう、とも言った。
Hannaには、ヨンタさんを使って、いい子でいさせることは期待できなさそうです。
ある知人の家では、(子供が小さい頃)「昨日、お父さんが飲みに行ったら、たまたま隣の席にサンタクロースが来ていて、話し込んだ。「お宅の子はよい子にしてますか?」と聞かれた。来週もまた一緒に飲みに行く約束をした。と言う話で、1ヶ月くらいは聞き分けのよい状態をキープしていたと聞きました。
こういう嘘が通用するのも後何年なのか分かりませんが、ちょっと楽しいです。