2009.08.28 Friday
フレームワークを持っていることの価値を改めて考えてみたのです
当社で標準的に利用しているフレームワークは、現在、3代目です。
1代目(GSSと呼んでました)は、かなりオリジナルな要素が多かったですが、2代目(「Jairo」と名付けました)から大幅に世の中の流れを取り込みつつ、3代目(Jairo2)になるにあたっては、当社なりの経験(体験)から、当社のターゲットとしているBtoC分野でのWebアプリケーション開発にとってメリットのある要素をフレームワークとして積極的に盛り込ませたものになっています。
フレームワークの有用性についての議論というのは、いろいろあると思いますが、実際に開発に取り組む開発者の視点と、それ以外の職域の方々の視点で、非常に重要度の認識に差が出るものでもあり、なかなかそのギャップを埋めるには努力を要するものであるように思います。
今回は、そのギャップを少しでも埋められる話にできたらと思って、私なりの解釈でフレームワークの有用性(大事にすることの価値)についてまとめたいと思います。
観点は、どちらかというと開発現場のお話ではなく、組織運営的な観点からのお話になっています。
まず、結論からですが、フレームワークというものの有用性を理解し、重要視できている会社と、そうしたものに対する意識があまりなく、都度都度の対応で開発をこなす会社では、一言で言うと「アウトプットに大きな差がでてくる」と思っています。
どの開発会社でも、アプリケーション開発の現場では、おそらくフレームワークについての有用性の認識があるのが普通のことだと思いますが、経営陣や営業部門はもちろん、バックオフィスに至るまでが、フレームワークの有用性をしっかりと捉えて、それを会社として保有し、育て、活用し、強みにできていると認識できているところは、全体から見たら少ないのかもしれない、と感じています。
パッケージソフトやソリューションを「商品」として掲げる会社は、その「商品」の開発現場が「商品」を作るためにフレームワークを活用していることが多いでしょう。しかし、その現場で何を利用していようとも、会社全体でそれを認識している必要はあまり無いことと思います。開発部門以外の部門は、自社で取り扱かっている「商品」このことをまずはしっかり意識(理解)していることに高い優先順位があると思うからです。
ですが、当社を含めた受託開発を基本とした会社では、フレームワークが会社の中にあって、それを意識して組織が運営されているのと、そうでは無いのとでは、大きな差があるように思うのです。
それは、会社が様々な仕事を通じ、時の経過と共に獲得していく「経験や知識」を未来に継承していくことができる具体的な対象があるか無いかの差になってくるのではないかと思うのです。
「学習する組織」という言葉がありますが、自社に標準とするフレームワークを保有し、それを自分たちで育て、活用し、強みにできている(あるいは強みにしようとしている)開発会社は、まさに「学習する組織」に既になっている(無意識のうちにそこに向かっている)ように思うのです。
「学習する組織」の対極にあるのが「管理する組織」ですが、品質や納期をルールを作って管理する努力をいくら優先しても、本質的に組織が経験から学習し、新しい仕事にそれを自発的に活用するフィードバックの仕組み(対象)がなければ、結果として、プロジェクト毎の品質にばらつきが出たり、同じ過ちを何度も繰り返したり、構成メンバーの入れ替わりによって極端にパフォーマンスが落ちたりということを避けきれないように思うのです。
また、組織的な対応力を発揮してトラブルに対処する力が発揮できるのも、標準的に用いるフレームワークが定められている強みになるのではないかと思うのです。現場の中でやりとりされる共通言語があり、状況の共有がスムーズにできることが、トラブルシューティングをする上では非常に重要だと思うからです。
開発を委託する場合の委託先選定プロセスの中に、こうした差を評価して頂ける項目があることが望ましいところではありますが、必ずしも、この差を見極めた上でのパートナー選びが十分にできうるかというと、そうでも無いのが実情かもしれません。見積もり価格が安いことを第一に考えた場合には、こうした観点の価値の比較が抜け落ちる可能性があるように思います。
私たちは、技術的な話を噛み砕いて、エンドユーザ企業様にこうした価値の比較検討が十分にできるよう、分かりやすい説明をしなければならないと思っています。
そして、それをすることが、インターネット産業を産業として成熟したものにするために必要なことで、私たちのミッションの1つなのかもしれないと思っています。
当社にはもう3代目になる、大切に育ててきたフレームワークがあり、それを中心に、組織的に、個々のプロジェクトで個々に得た「経験や知識」を組織全体で共有できるような土台が存在しています。こうした土台のおかげでトラブルシューティングにしても幸いにして組織的なアクションが取れるようになっていると思います。
まだまだその取り組みについては、道半ばですが、こうした土台を利用して価値を組織内に溜め込んでいくことは、当社を選んで頂いたお客様にとって、必ずやベネフィットをもたらすものと信じています。
フレームワークを持っていることの価値を改めて考えてみると、こういうことなんじゃないかなぁと、改めて思いました。
・・・夏が戻ってきた感じですね。週末のBBQが楽しみです。