Ad Network

あわせて読みたい

  • あわせて読みたい

« Microsoft のiPodキラーはXbox mobile!? | Main | 知的労働者には「組織を移る力」がある »

SEはメニューのないレストランのウェイターか?

060312_105301  一昨日書いた「ソフトウェアの仕様書は料理のレシピに似ている」というエントリーに対して沢山の人からフィードバックをいただいた。このように情報を発信すると、逆により多くの情報が集まり自分にとっても勉強になる、というフィードバックプロセスがあるからブログは楽しくて仕方がない。

 フィードバックの中に「これでSE不要論も再燃か?」などという過激なコメントから、自分自身がSEという立場の方からのものすごく真面目なフィードバックまでが集まったので、これを機会に、ここに私なりに「SE」という職業をどう解釈しているか書いてみようと思う。もちろん、私自身がSEという職業を経験したことがあるわけでなないので、間違っているかも知れないが、その場合は遠慮なく指摘していただきたい。

 私の理解では、SEという職業はレストランに例えればウェイターである。それも、メニューから料理を選んでもらう通常のレストランとは異なり、「客の注文するものなら何でも作る」という個別注文レストランである。

 そんなレストランであるから、客の注文もさまざまである。「豚のしょうが焼き定食」と料理を指定する客もいれば、「今が旬の魚を使った寿司」とか、「ご飯のおかずになるものなら何でもいいけど、コレステロールが気になるから野菜を多くしてね」という漠然とした注文も来る。ウェイターの役目はそれぞれのお客さんに満足してもらうには、何を作るのが一番良いのかを見極めて、キッチンに伝えることである。

 難しいのは、客が必ずしも料理に詳しくはないので、真夏に「生牡蠣が食べたい」などと無理を言って来る客がいることである。そこを相手の自尊心を傷つけずに、「お客様、今は8月なのであいにく生食に適した牡蠣がございません。牡蠣フライではいかがでしょう」などと客を説得しなければならない。そういった仕事をちゃんとせずに、「生牡蠣一人前!」とキッチンに伝えてしまうと、料理人たちからは、「あのウェイターは料理のことが分かっていない」と非難されてしまう。

 優秀なウェイターになると、客の好みや健康状態、季節の食材、キッチンにいる料理人の得意料理、各料理にかかる時間、食材のコスト、などが全て頭に入っているために、客にも喜んでもらえるし、キッチンからは信頼される。そんなレストランの客席はいつも満足げな客で一杯だ。

 これが私の理解する「SEの役目」である。客に満足したソフトウェアを提供するという意味で、SEという職業はものすごく重要ある。ソフトウェアエンジニアとどちらが上か、などということは決してなく、それぞれに「客が何を本当に必要としているのか見つけ出す」、「受けた注文に基づいて作る」というそれぞれに重要な役割を果たすだけのことである。

 ではいったい、日本のIT業界は、どこで階段を踏み外してしまったのだろう?

 ここからは私の仮説である。

 そんな形のレストランも、レストランの数も少ないうちは良かった。しかし、外食をする人の増え、レストランが乱立してくるにつれ、腕の良い料理職人の数が圧倒的に不足してきたのだ(役人たちはこれを「料理危機」と呼んだ^^)。

 その問題を解決するために、いくつかのレストランでは、ウェイターの役目は、客が何を食べたいのかをキッチンに伝えるだけではなく、その料理をどう作ったら良いのか(つまり、レシピ)を書くことまでしなければならないというルールを導入した。そうすれば、料理人の不足を、料理の経験の全くない、バイト君やパートさんで補うことができる、という発想だ。今まで料理を作ったことのないウェイターたちには料理の参考書を与え、これからはウェイターは客からの注文をとるだけではなく、レシピも書かねばならない、と指示を与えたのだ。

 ウェイターたちは与えられた参考書を読んで一生懸命勉強するのだが、やはり実際に自らキッチンに立った経験がないので、どうもおかしなレシピを書いてしまう。そんなレシピを受け取った昔からの料理職人たちは、「こんなシロウトの作ったレシピで料理が作れるか!」と怒ってしまうのだが、ウェイターたちも上からの命令なので「そこを何とか」と頼み込むだけである。そんなことを繰り返しているうちに、腕の良い料理職人たちは怒って次々にやめてしまい、キッチンはレシピ無しでは料理の作れないバイト君とパートさんばかりになってしまう。これは本来なら危機的な事態なのだが、レストランのオーナーは人件費が抑えられると逆に喜んでおり、キッチンで働く人たちは低賃金で長時間労働を強いられているのである。

 少し誇張した書き方になってしまったかもしれないが、これが私なりの解釈である。SEの役目を、本来の「客が何を欲しがっているか、何を作れば喜んでもらえるかをソフトウェアエンジニアに伝える(要求仕様)」ところにとどめておけばよかったのに、ソフトウェアエンジニアの不足を補うために「どうやって作るか(詳細設計仕様)」という所まで踏み込ませてしまったのが間違いの始まりだったのではないだろうか。そのために、ソフトウェアを作ったことのないSEが詳細仕様を書く→ソフトウェアエンジニアが単なるコーダーになり地位と賃金が下がる→労働環境が悪化する→優秀なエンジニアがやめてしまう→やむなくソフトウェアの基礎を身に付けてない人たちを雇う→ますます良いソフトウェアを作るのが難しくなる、という悪循環に陥ってしまったのではないだろうか。

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341c4f9853ef00d83425a8a653ef

Listed below are links to weblogs that reference SEはメニューのないレストランのウェイターか?:

» ネタ from NE(ねとわーくえんぎにあ)日記
Life is beautiful: ソフトウェアの仕様書は料理のレシピに似ている Life is beautiful: SEはメニューのないレストランのウェイターか? どうでもいいけど料理の写真(あ、料理だったんだ)が激しくキモイ。 読むどころじゃない。 ... [Read More]

» ソフトウェアの仕様書は料理のレシピに似ている from Cagylogic
PG->SE->PMという出世コースが実は強制的なJob Changeを引き起こしており、コックが出世すると強制的にウェイターになってしまうような不思議な状況が日本ではおきており、それが根本的におかしいんじゃないかと思っている。 根本的に、日本ではIT産業は土木建築業と同じような発展の仕方をしており、発注側と設計士、ドカタという見られ方をしている。とても、ウェイターとコックという関係には程遠く、ましてやソムリエとシェフという信頼関係には縁の無い世界になっている。逆にそのような信頼関係ができているとこ... [Read More]

» ウェイターの嘆き from 衝動的行動技術者之記録
中島さんのblogはSIerの問題点を鋭く指摘しています。 [Read More]

» システム開発のメタファ from 眠る開発屋blog
システム開発のメタファ。レストラン建設業界園芸医者製造業映画製作なるほど。 ただしどこまでいってもシステム開発はシステム開発にしか過ぎない。 どれとも同じぐらい近いが同じぐらい離れている。 そのまままるごとを受け入れるようになるのはあとどれくらい時間がかかるのか。 ところで仕様書とは何か。 「こうしたい」「こうすべき」というユーザ、開発者の考えを整理して明文化したものだ。 ただし「整理」と「高い生産性」「高い保守性」とは別物だということは理解すべきだと思う。 下手をすれば、「整理」... [Read More]

» ソフトウェアエンジニアはシェフだったはずなのに from ごんざれふ
料理本があればシェフは要らない、と叫ぶ声はあまり聞いたことが無い。しかし完璧な詳細設計書があればプログラマーなんて誰でも同じだ、という信仰は(誰も口に出してはいわないだろうが)はびこっているように思う。... [Read More]

» ファーストフードと手料理 from とりとめもなく日記的雑記
『Life is beautiful』にまたまた激しく興味深いエントリーが。 S... [Read More]

» [その他]SEはメニューのないレストランのウェイターか? from tmtm日記
「ソフトウェアの仕様書は料理のレシピに似ている」の続き。 SEという職業はレストランに例えればウェイターである。それも、メニューから料理を選んでもらう通常のレストランとは異なり、「客の注文するものなら何でも作る」という個別注文レストランである。 良いたとえだ。 客に満足したソフトウェアを提供するという意味で、SEという職業はものすごく重要である。ソフトウェアエンジニアとどちらが上か、などということ�... [Read More]

» もっと言ってやってください !! の続き from 不定期雑記
続き。その後中島さんのblogでは「SEはメニューのないレストランのウェイターか [Read More]

» [IT業界]日本のIT業界は本当におかしいもの・・・(´・ェ・`) from 俺メモなDiary
SEはメニューのないレストランのウェイターか?http://satoshi.blogs.com/life/2006/03/se.html ソフトウェアの仕様書は料理のレシピに似ているhttp://satoshi.blogs.com/life/2006/03/post_8.html 知的労働者には「組織を移る力」があるhttp://satoshi.blogs.com/life/2006/03/post_9.html 一日でも早く上記の事を理解して欲しい・・・。>IT業界の経営者層 デスマーチでどん... [Read More]

» [企業] SEという職種 from メモ日記
SEという職種は本当に必要か。 今の会社はある程度技術本位の姿勢を見せているが、時代の流れからSIer的な部分をより多く取り入れようとしている。しかし、それは右にならえなやり方でしかないように感じる。 技術本位の姿勢を大事だと考えているなら、他の企業がやっていないような技術本位のアプローチもあるのではないか。ものすごく大雑把な言い方をするなら、SEの仕事の善し悪しというのは結局のところ人間性の問題が大きいのだから。人としてきちんと対応しようを心がけるならば、SEの仕事のかなりの部分はカバーでき... [Read More]

» [徒然]レストラン開発モデル、もしくは厨房開発モデル? from なにぱんの.NET で C# な日記
Life is beautifulさんの((この方の書くエントリーは、どれも「わかりやすい」と思わず言いたくなるようなものばかり。こんな文章をかけるように、私はなりたい。)) ソフトウェアの仕様書は料理のレシピに似ている SEはメニューのないレストランのウェイターか? 知的労働者には「組織を移る力」がある と、そのトラックバックやコメント類から、 満足せる豚。眠たげなポチ。さんより 優れたハッカーによるSIは本当に理想図なのか 産業としてのSIerについて語りたいのか、プログラミングスタイルに... [Read More]

Comments

夏モード

こちらも自分の考えていた仮説とほぼ同じでおどろきです。想像ですが、今の日本の業務系ソフトウェア業界は、ファミリーレストランのチェーン的な企業がほとんどを占めているのでしょうね。ただしオーダーメイドのソフトウェアを作るのは、レトルトカレーをあたためるよりも難しいのではないかと思いますが…。

Dora

前のエントリーにコメントさせて頂いたDoraです。

現状把握は概ね正しいもののように思います。

次回エントリー

 「こうすれば日本のSEは救われる!」

を楽しみにしております!?

yas

こんにちは。SE になる前は SE と言えば「Sound Effect」と思っていた(音楽業界にいる人なら SE が Sound Effect なのは当たり前)、自称 SE です。レストランの例はわかりやすかったです。私は日本では 、SE は家を建てるときに図面を広げて設計図を書く 「建築家」、プログラマ(コーダー)は大工さんだと思っています。これはメタファとしてはベタですが、就活のときに某航空会社で SE をしてる人に OB 訪問したときに聞きました。建築家は必ずしも釘の打ち方などは知らないかもしれません。もちろん、知っていた方が良い建物ができるに決まっていますが、とても小さな家を自分で立てるならまだしも、ビルを立てるときは実際に建築家が釘を打つことはないでしょう(ただし家が設計書通りにできているか、水漏れはないか、ドアはきちんと閉まるか、耐震になっているか^^;などはチェックします)。日本での業界の構造自体はまったく建設業に似ていると思います。私はアメリカで働いてみて、ソフトウェアエンジニア(まぁ、日本で言ういわゆるプログラマ)は一定の地位があり、日本と違うことに確かにカルチャーショックを受けました。

#ちなみに私も文系出身ですが、文系だからこそ、理系のマスターやドクターの人に負けじと今までがんばってこれたと思っています。

ふじさわ

はじめまして。いつも楽しく拝見しています(が、コメントするのは初めてです)。

個人的な感覚ですが、今回のテーマを料理でたとえるのは難しいかなぁと感じました。ぼくの考えでは、SIの本質的な困難さは伝言ゲームの難しさです。顧客がどういうものを欲しがっているのか、それをどう作ればいいのか、たくさんの人間がかかわることで伝言ゲームになり、まとまらなくなるのが本質的な難しさだと考えています。

料理はまだ、かかわる人間の数が少ないですし、形のあるものを作ります。顧客の好みも、その方の見た目(お歳や国籍、服装、注文の仕方、予算、そもそもお店に足を運んでいただいていること)などである程度判断できます。そのため、なにをどう作るべきかが比較的明確ではないでしょうか? 一方でSIでは、顧客サイドだけでもさまざまな人が利害を対立させつつ、あいまいな要求を出してきます。また開発サイドでも、さまざまなスキルレベルや文化的背景を持った人(JavaやCOBOLやCや汎用機、UNIXやWindows。そして業務知識や目的意識を持った人など)が集まっているので、伝言ゲームはより困難になります。

仕様書を作ろうという考えには、そういった背景があるんじゃないかなぁと。伝言ゲームをうまくこなし、作るべき目標を全員で共有できるよう、明文化しようという意図があるのではないかと想像します。伝言ゲームで、顧客サイドと開発サイドをつなぐSEは重要だと考えます。しかし、優秀なSEがいるだけではシステム開発の困難さが緩和されにくいとも想像します。仕様書は1つの解決策ですが、仕様変更が頻発する場合は役に立ちません(そして、悲しいことにそういうケースがかなり多いです)。

ということで、うまいたとえは出てこないのですが、SEは「メニューのないレストランのウェイター」というのは、ちょっと違うような気がしました。また、長くなってきたこともあり議論を端折ってしまいますが(スミマセン)、本質的な問題はそもそもソフトウェア業界がゼネコン体質にあることのような気がします。

Satoshi

 ふじさわさん、「伝言ゲームの難しさ」に関しては、大規模なソフトウェアを作る時には常に感じます。関わってくる人の数が増えれば増えるほど、一人一人の作業効率が落ちて行くという現象はどこでも見られることだと思います。それにゼネコンのような階層構造が関わってくるとますます非効率になるんですね。

 それを解決するには、大きなソフトウェアを一気に作るのではなく、小さなソフトウェアを複数、それぞれ別々に少人数で作り、それを粗結合(それも、ものすごく粗くてシンプルなもの ― APIとも呼べない、RSSフィードぐらいシンプルなもの)で結びつける、という作り方をするしかないのではないか、と思っている私です。この話は、コメント欄でするには奥が深い話なので、別途しようかと考えています。

Maki

<< 大きなソフトウェアを一気に作るのではなく、小さなソフトウェアを複数、それぞれ別々に少人数で作り、それを粗結合で結びつける

Satoshiさんのご意見に賛成です。
いま、ソフトウェア開発で起きている問題とは、まさに、これまで日本企業が強みにしてきた『すり合わせ』に置き換えられるのではないか。かつて、汎用機システムを構築していた頃、大規模システムの設計チームには、すべてを理解・把握した『スーパーSE』の存在があった。彼らは、「お客様の要望」「業務の流れ」「システム設計」「ネットワーク設計」「モジュール設計」「マニュアル設計」「テスト仕様書」、また、お客様の良きアドバイザー・相談相手であると同時に、若きエンジニアたちの指導者であったと思う。ソフトウェア開発は才能だけではなく、根気やチームワークが大切だ。かつて、ソフトウェア開発環境を確保するため、テストランには深夜の作業が絶えず続くこともあった。時には、恋愛や結婚など、プライベートな話題も、夜明けまでお酒を飲みながら話し合った。間違いなく、そこに暗黙ながらも『すり合わせ』が機能していただろう。その後、IT(情報技術)では、大きな波が幾つか押し寄せてきた。ひとつは、クライアント・サーバシステム(CS)だ。自分にとって、CSはシステム・アーキテクチャの大革新といった技術面よりも、知らない世界(OS)との遭遇であったと記憶している。また、もう一つには、ERPアプリケーションの出現である。ERPではパラメタ設定が大きな意味を持ち、ゼロからのシステム開発が激減することになった。その結果、「スーパーSE」や「すり合わせ」がいままで以上に難しくなってしまった。さらに、最近、OSS(Open Source Software)まで加わろうとしている。

このような複雑なシステム環境では、モノシリックな構造よりも粗結合が求められてくるだろう。まるで、COBOLのプログラムから複数のサブルーチンをリンケージ・セクションから、個々の小さなソフトウェア(Module)を適宜に呼び出すように・・・。SOA(サービス指向アーキテクチャー)が目指しいるのも、このような流れに近いものになるのではないかと・・・。

ν即

夢のない話で申し訳ありませんが、外食で客観的に大きな利益を出しているのは良い料理人が良い料理を出す店ではなく、マクドナルドとかそういうのだったりはしませんか?

slightly

はじめまして。
色々な観点からの分析と楽しい文章を日々楽しませて頂いております。
今回のレストランの例えも良い発想をわかりやすく文章にしておられてとても勉強になりました。
SEという話ではないですが、プロトタイピングしてお客様に実際に見てもらえるのはソフトウェアの強みですよね(しかも何回も)。
料理だと出来上がる頃にはお客さんも満腹かもしれません(笑)。

とみた

typo
「ものすごくで重要ある」→「ものすごく重要である」

Post a comment

This weblog only allows comments from registered users. To comment, please Sign In.