そのやり方では生産性は上がらない!
システム開発における生産性の位置づけ
ここまで述べてきた通り、システム開発における生産性はさまざまで、一朝一夕で手に入るものではありません。しかし、常に高い生産性を要求されることも事実です。生産性が低ければそれだけコストが余分にかかることになり、利益にも影響します。
そういうった中では、生産性をどのように位置づけするかが重要になります。新しい生産性を獲得するのにもコストがかかるので、どの程度新しい技術を導入して高い生産性を獲得するのか、逆にどの程度は現状維持のままいくのか、その都度判断する必要があるためです。
筆者は生産性向上は、小さい範囲からスタートすることと継続的に取り組むことが大切だと考えています。小さい範囲からスタートするというのは、新しいものに乗せ換えれば生産性が向上するというような安易な気持ちを持たずに、適用しては効果をみるという試行錯誤が大切だということです。開発者もプロジェクトマネジャーも会社や現場によって違います。メンバーに浸透させる啓発活動も必要になります。そうした中で、決め打ち的にソリューションを適用してもうまくいかないことが多いのではないでしょうか。
もう1つは継続性です。思いつきで実施せずに継続的に生産性向上について考える機会と実施する機会が必要です。忙しさに追われてしまうとついつい新しい取り組みがおろそかになり、結果として時代に取り残されることになりかねません。継続的に取り組むことで、以前に検討したものを再検討する機会も得られます。
生産性向上を獲得するには
生産性向上にはプロジェクトメンバーたちが積極的に自分たちの作業の効率化を考えることが効果的です。そして、その機会を会社やリーダーが理解して認めることが大切です。個人活動ではなく、チームの活動として取り込んでいかなければなりません。具体的にはどんなことでしょうか。
勉強会の開催は、そうした取り組みの1つとして効果的です。日常業務に追われていると、業務知識に詳しくなっても、生産性向上のようなところまでは気がまわらないものです。勉強熱心な人は休日でも勉強しているかもしれませんが、会社側がそれを期待しても大抵はうまくいかないでしょう。きっちりと時間をとって、新しいことにチャレンジする機会が確保されていることが必要です。会社で勉強会のような時間をとって、生産性向上に使えるものがないかメンバー間で確認しあい、期待できそうであれば実務への導入を検討することができます。
またカンファレンスに参加するのも有意義です。ほかの人がどうしているか、という情報が得られます。生産性を向上するには現場の声が大切です。特に成功した例だけでなく、どういった導入が失敗になるか、生の声を聞くことができます。すべて参考になることはないかもしれませんが、適用できそうなことがあれば、検討材料になります。
そしてもう1つ大事なのがトライしてみるということです。やってみないとわからないことは思いのほか多くあります。世の中で高い生産性をうたっているものでも、導入してみて失敗することもたくさんあります。しかし、それを恐れていては、現状維持にしかならず、より高い生産性を獲得ことは難しくなります。
現状維持というのはあまり好ましい状況ではありません。なぜなら、自分たちは変わらなくても周りは変わってゆくからです。失敗するかもしれない、という点は常に頭の片隅に置いておく必要がありますが、項目を決めてトライしてみることも大切です。
さて生産性という言葉をたくさん使ってきましたが、システム開発において生産性だけを考えていれば良いのでしょうか。そのほかのファクターについても考えみましょう。