システム開発は「芸術」だ!

今までいろいろな人とシステム開発をしてきましたが、その中にプログラムの実装プロセスを「製造」と表現される方がいらっしゃいました。
私はこの表現が大嫌いです。
実際に使われる方はそういう意識は無いのかもしれないのですが、「製造」という言葉のニュアンスには、決められたやり方に従って、管理されたプロセスを重ねると、自動的にモノができあがるという感覚があります。イメージとしては、工場でベルトコンベアに乗って部品が運ばれながら、製品が次々にできあがってゆく様な雰囲気でしょうか。
そこには、本来のシステム開発が持っている「クリエイティビティ」が、全く感じられません。
システムを開発することは、人が行う知的で創造的な活動の、最も高度なレベルなものの、ひとつではないかと思います。しかも、単独のメンバーではなく、複数のエンジニアが協力し合って創り上げてゆくわけですから、人と人のコミュニケーションの要素が大きく関わっています。さらに、コストや開発納期といった、多くの現実的制約もあります。
私の持論ですが、システム開発は映画を作るプロセスと非常に似ているのではないでしょうか。監督以下それぞれが欠かせない役割を担った多くのスタッフや俳優が、その力を結集し、一つの作品を仕上げてゆく。できあがる作品は「派手」ですが、それを作るメンバーのそれぞれの仕事はひとつひとつは地味で、地道な作業を根気よく続けなければならない。全体の枠組み自体は監督が抑えているものの、各メンバーがそれぞれの創造性を発揮して、そのことが結果としての映画のレベルを高めてゆく。公開納期に間に合わせるためにへとへとになりながらも、作品ができあがった満足感をみんなで共有できる。
これはまさに、ものづくりの楽しさそのものですね。システム開発も、多少無理があるかもしれませんが、本質的には同じです。
でも、システム開発の現場は、こうした「創造の楽しさ」を忘れがちです。開発納期に追われ、プロジェクト管理の手法によって「がんじがらめ」に固められ、労働集約的に「何人月」という単位で投入されて作業する......。ちょっと待ってください、システム開発はもっと「自由」で「創造力をかき立てる」もののはずです。
映画のDVDには特典ディスクにその作品の「メイキング」を納めたものがたくさんありますが、レンタルで借りて観られる方が多いせいか、映画を趣味にしている方以外は、観たことがない方が多い様です。そこで、私は開発チームのメンバーに、忙しい中でも時間を作って、こうしたメイキング映像を見せるようにしています。なぜならその中に物づくりの楽しさが、端的に表現されているからです。
開発メンバーはこれらの映像を見て、映画を作るのがとても大変なこと、俳優だけでなく、沢山の独自の技術を持った裏方の協業によってできあがることを知ります。そして何よりも、制作スタッフが大変な作業をこなしながらも、自分の持てる創造力を最大限につぎ込んで、「生き生きと」仕事をしている姿にびっくりするのです。
どんなシステム開発案件や、開発実務にも、物づくりの楽しさを見いだせるはず。必ずや自分の創造力を込められるポイントがひとつや二つはあるはずです。
私はシステム開発に関わる全ての方に、常に「クリエイティビティ」を忘れずにいて欲しい、本当の意味で開発を「楽しんで」欲しいと心から願っています。