料理とシステム開発の意外な関係|企業クライアント戦略|ブログ|Computerworld

header_cwr_head_mid_fl_logo

CW_ウルトラバナー_Topics04

CW_ウルトラバナー_Topics05

CW_ウルトラバナー_Topics06

CW_ウルトラバナー_Topics07

CW_ウルトラバナー_Topics08

企業クライアント戦略

料理とシステム開発の意外な関係

Posted by 小池浩之 ( 2010年07月12日 )


▲15年前に住んでいた名古屋(を新幹線で通過)

みなさん、こんにちは。先々週に引き続き、先週も出張続きですっかり遠足モードの小池です。今回は生まれ育った大阪にも行ったのですが、実はそこで写真を撮り忘れ、慌てて名古屋駅を通過中に撮った写真がこちらです(って、ほとんど無意味かも…)。そこでというのも何ですが、今日は名古屋駅周辺を見て思い出した事をネタにさせていただこうと思います。普段のテーマとは少し離れてしまうかもしれませんが、今回ばかりはご勘弁を。

今から15年ほど前の2~3年間、私は仕事の関係で家族と共に名古屋に住んでいました。その当時働いていたSI企業で、システム・エンジニアとして某通信カラオケ・システムの設計・開発に携わっていたのですが、その会社が名古屋本社ということで、設計・開発に携わるメンバーは名古屋に集められていたわけです。ここでそのシステムの詳細をお話しすることはしませんが、システム自体の規模が大きく要件仕様も厳しかったこともあり、SEとして様々な苦労をした思い出があります。そのせいか名古屋駅周辺の景色を見ると、今でも当時のことを思い出します。

近頃の新人SE研修の内容はわかりませんが、私が新人だった頃はプロジェクト管理の手法を学ぶために何らかのお題が与えられ、必要なタスクをみんなで書き出し、それを並べてクリティカルパス(最長経路)を見極め、プロジェクト全体にかかる最小日数を算出する…といった研修がありました。当時、「結婚から新居への入居まで」というお題をもらって、新人連中であーだこーだと言いながら課題に取り組んだことを思い出します。今でも新人SEさん達は、入社後研修などでこのような課題に取り組んでるのでしょうか?

普段の生活の中でも、何かを行ううえで必要なタスクを洗い出し、それぞれに順番やプライオリティをつけ、クリティカルパスを見極めるという作業を無意識に実施されている方も少なくないのでは? と思うのですが、私が普段の生活でもっともそれを意識するのが料理だったりします。

毎回紹介している「さっと一品」のコーナー(今回はお休み)ではあくまでも一品ごとのレシピを紹介していますが、私が週末に料理をする際には当然ながら3~4品作るわけで、さらにそれらができる限り同時に完成するのが理想なわけです(一部が先にできあがってしまい、食べるときには冷めてるってのは、料理人として可能な限り避けたいと思いますので)。下ごしらえを事前にキチンとしておくのは当然で、使うことができる鍋やフライパン、コンロの火口の数なども考え、さらにそれぞれの料理の性質(加熱時間の長短に始まり、多少冷めても美味しいのか?、とか、その料理をした後に別の料理に使うのは大変かどうか?まで)を考えつつ、手順を決めていきます。たとえコンロが空いていても中華鍋が一つしかなく、その状況で中華鍋を使う料理を3品作ろうとすれば、並行して料理できないので同時に完成することはできない――、そんなことを念頭に料理の段取りを考えています。私には少なくとも「結婚から新居への入居までの段取り」というお題に比べると、「3~4品の料理を同時に完成させるための段取り」のほうが、より具体的に考えられるネタだと思います。

私の場合は、料理が完成した際には自分も一緒に食べたい、飲みたいという事情から、すべての料理が同時にできあがらなければならないのですが、自分が厨房に立ち続け、前菜からメインディッシュ、デザートまでを順番に提供する場合は事情が異なります。適切なタイミングを見計らうという新たな注意点はありますが、何が何でも同時にという要件からは解放されます。

こうした、「優先順位を決め、いかに効率よく仕事を完成させるか」という視点は、システム開発はもちろん、クライアントPC管理にも応用できたりします。

システム開発であれば、8割方の機能は最初から実装が必要でも、残りの2割についてはシステム稼働開始後3ヶ月後でよい場合もあるかと思います。同じようにクライアントPC管理でも、例えば、ソフトウェアの自動配布・更新を実現するような管理エージェントをあらかじめ仕込んでおいたうえでユーザーに配布するようにすれば、 それ以外の管理機能を実現するためのソフトウェアは、システム稼働後にIT部門で十分な検証作業を行ったあとで配布することも可能になるでしょう。

開発や検証作業を無理なスケジュールで進めて全機能を詰め込んでからサービスを開始するのではなく、サービス開始後にユーザーにも開発側にもあまり負担をかけずに機能追加する方法を仕込んでおくことで、無理のないスケジューリングが可能になるように思います。また、全部が用意できる前に一部でもサービスの提供を開始できるというのは、ユーザー側の“待ってる感”を軽減し、心証アップにもつながるように思います。

このあたりも料理とシステム開発プロジェクト・クライアントPC管理の類似点ではないでしょうか? ディナー開始のタイミングでできていなければならないものとそうでないものを見極めて優先順位をつけることで、「何を、どの順序で、いつまでにやらなければならないか」が明確に見えてきます。自分自身で自分の時間をコントロールするって、こういうことではないでしょうか?

この春からコンピュータ業界に入り、システム開発に携わるという新入社員の皆さんには、ぜひ料理をされることをお勧めしたいと思います。料理をする際の段取りを真剣に考えることは、プロジェクト管理やスケジューリングのスキルの向上に役に立つと私は信じています。お試し下さい。

ページの先頭へ戻る