私はこれまでオブジェクト指向やその周辺技術をお客様の開発現場に導入するための支援、例えば、UML を使ったモデリング技術の指南、RUP をベースにした開発プロセスの策定・適用の支援、といった仕事に携わってきました。
組込み分野に限らず、様々な業種のお客様と一緒に仕事をさせていただいてきましたが、「コンサルタント」という肩書きのもと、どういう立ち位置で仕事に当たれば良いかを折に触れて考えてきました。
一般的なコンサルタントのイメージというのは、「第三者的な視点から現場の問題を発見し、解決に向けた助言をする人」というものではないでしょうか。確かに、現場の人たちが自分たちの状況を冷静に客観的に眺めることは難しいものです。そのため、外部・中立の立場から現場の課題を整理して提示し、従来の開発のやり方を見直すきっかけを与えることは、コンサルタントの重要な役割であると思います。
ただ、工学的な技法を開発現場に導入し定着を図る、単なる「知っている」を超えて「使える」にまでお客様のレベルを引き上げる、ということが主要な仕事である我々にとっては、実務者や当事者としての視点・意識を持ち続けることがより重要だと考えます。
例えば、モデリング技法を伝える場面では、お客様が解くべき具体的な問題に即して技法を適用して見せる。開発プロセスの策定を支援する場面では、敷こうとしているレールを自分でも走れるかを問う、また実際に走ってみる。コンサルタントが率先して実践し、また実践の中から自分たちなりの知を掴もうとする、そういう姿勢を示さなければ、お客様に納得感を持っていただくことは難しいのではないかと思っています。
個々の現場の状況・文脈はどれ一つとして同じものはありません。そのため、これまでの経験から得られたノウハウを活用できる場面も少なくないとは思いますが、コンサルタントにとっても一つ一つの現場がチャレンジの場になります。引いた目を持ちながらもお客様に可能な限り寄り添う存在として、お客様の抱える問題の解決に向けて「共闘」させていただきたいと思います。