ここから本文です

お使いのInternet Explorerは古いバージョンのため、正しく表示されない可能性があります。最新のバージョンにアップデートするか、別のブラウザーからご利用ください。
Internet Explorerのアップデートについて

エンジニアが生き生きと働ける「まっとうなアジャイル開発」を――永和システムマネジメント

4/2(月) 8:00配信

@IT

 デジタルトランスフォーメーション(DX)のトレンドが進展し、業種・業態、B2C・B2Bを問わず「IT」が重要な顧客接点となっている。ビジネスはソフトウェアの戦いに変容し、新たな価値を創造する企画力、開発力が差別化の一大ポイントとなっているのだ。

 このような中、ソフトウェア開発の具体的な方法論として、アジャイル開発に取り組む企業が増えてきた。アジャイル開発は、ソフトウェアがビジネスのコアとなるインターネット企業では当たり前のように行われてきた開発手法だ。それが昨今のDXの流れを受け、製造業などこれまでソフトウェア開発を“なりわい”としない企業へも広がり始めている。

 アジャイル開発は、そうした企業の成長を支え、変革をもたらすドライバーになり得るのか。15年以上にわたってアジャイル開発の手法を使って多くの企業を支援してきた永和システムマネジメントの木下史彦氏は「アジャイル開発を始めた当初は正直これほど浸透するとは思っていませんでした」としつつ、「開発の在り方や組織の方向性を見極めるアプローチの1つとして、アジャイル開発は有効です。“まっとうなアジャイル開発”を目指し、われわれも取り組みを強化しているところです」と話す。

 木下氏は、永和システムマネジメントのアジャイル事業部で事業部長を務め、自社担当事業部の組織運営を行うとともに、アジャイルコーチとしてアジャイルな組織運営を目指す経営者やマネジャー層への提案やアジャイルプラクティスを実践している現場の支援を行っている。木下氏に、アジャイル開発の近年の動向やポイントなどを聞いた。

●製造業で開発費に占めるソフトウェアの割合が半分以上の企業も

編集部 最近のデジタルトランスフォーメーションのトレンドをどうご覧になっていますか。

木下氏 アジャイル開発は、ソフトウェアがビジネスの中心だったWeb企業のようなところから取り組みが始まって、5~6年かけて製造業にまで広がってきました。こうした流れは、ソフトウェアのビジネスに対する重要性が高まっている結果なのかなと思っています。実際、われわれが支援している企業でも、開発費に占めるソフトウェアの割合は全体の半分以上を占めるようになっています。

編集部 それは驚きの数字です。ソフトウェア技術が大きく発展したことも背景にありそうです。

木下氏 はい。これまでハードウェアが中心だった製品もソフトウェアを使うことで新しい可能性がいろいろと出てきました。ユーザーのニーズが高まっていて、例えばクルマなら自動運転の普及によって、単に移動できればよいということではなく、移動中に得られる体験が求められるようになると思います。こうした付加価値の部分をAIやクラウド、制御技術といったソフトウェアで解決していこうという動きが今のトレンドにつながっていると思います。

編集部 製造業ではアジャイル開発にどんな期待があるのですか。

木下氏 イノベーション部門では、はじめからゴールが決まっていなかったり、これまでにない製品を作ることが目的ですので、作りながら考える必要があります。新しいサービスを世に出したい。新しい機能をユーザーの反応を見ながら作る。そういった場合には、アジャイル開発が有効という考え方が浸透してきました。

 さらにここ数年では、イノベーション部門のようなところだけではなく、主力製品を開発している事業部門でもアジャイル開発への取り組みが始まっています。このような場合は製造コストの削減に期待されているケースが多いです。特に、開発費に占めるソフトウェアの割合が無視できるレベルでなくなった昨今では、その傾向が強くなっています。

 しかし、製造業の中でも本当に人命に関わるような開発への採用はまだまだこれからという印象です。とはいえ、ソフトウェアの重要性は高まっていきますから、今後、アジャイル開発の採用は広がっていくと思います。

 弊社もアジャイル事業部では、システム開発とコンサルティング・人材育成の両面から支援を行っています。つまり、われわれがメインで開発するパターンと、われわれが顧客に入って内製化のお手伝いをするという2つのパターンがあります。特に内製化は、製造業のお客さまをはじめ、ニーズが増えていると実感しています。

●一番の鍵を握るのはプロダクトオーナー

編集部 とはいえ、アジャイル開発への期待は高まっているものの、なかなか進まないという声が多いのが現実のようです。実際に企業を支援されていて、何が阻害要因になっていると考えていますか。

木下氏 幾つかあるのですが、一番の鍵を握っているのはプロダクトオーナーです。顧客と開発チームの間に立ってさまざなやりとりを担うのがプロダクトオーナーですが、プロダクトオーナーがうまく機能しないと、まさにボトルネックのように顧客と開発との間の流れをせき止めてしまいます。うまく機能させるためのポイントは、適切な権限を与えること、適切なマインドセットとスキルセットを持つことです。

 例えばプロダクトオーナーにしかるべき権限が与えられていないと、「プロダクトオーナーに聞いても分からない、分かっていても判断できない」という状況に陥ります。プロダクトオーナーが上司や外部のステークホルダーに承認を求めないと進められない環境では、スピードが落ち、アジャイル開発が回せなくなってしまいます。

 また「開発チームに任せているから作ってよ」といったマインドセットでは、開発チームが顧客のニーズを的確に把握できません。開発と情報共有し、顧客の代表としてその場で意思決定できることが重要です。そのための権限、マインドセット、スキルが求められるのです。

編集部 プロダクトオーナーを確保することすら難しい場合もあると思います。

木下氏 おっしゃる通りです。現場が権限を持つということは、経営に関わる意思決定を現場が行うということでもあります。経営者の強い後押しなしには取り組みが進められないのです。取り組みの中で新しい課題も出てくるので、さらなる権限委譲が必要になる場合もあります。そこから「会社の組織や仕組みを変えていく」という大きな話に発展することも少なくありません。

●アジャイル開発に必要なスキル、マインドセット

編集部 一方、開発チームについてはいかがでしょうか。

木下氏 アジャイル開発を行うスキルを持った開発者が集められないという課題があります。ベンダーに依頼して「○○というスキルを持った人を出してください」と言っても、うまくスキルがマッチしないのです。そこで、求められた開発言語でのプログラミング経験がない人まで集めてきて開発チームを作っているところもあります。そうすると、今度はそうした人を「どうやって育成していくか」が課題になってきます。ユーザー企業の中には、アジャイル開発に取り組んでいることを積極的にアピールすることで、ベンダーなどに頼らず、欲しい人材をピンポイントでスカウトして集めるところも出てきていますね。

編集部 具体的には、どんなスキルが必要になるのでしょうか。

木下氏 われわれが最も重視しているのは「テスト駆動開発」です。アジャイル開発支援のご相談をいただいたときは、まずはテスト駆動開発の研修から実施することが多いです。そこがスタート地点であり、テスト駆動開発の経験者を最初に集めることができれば、比較的早くアジャイル開発を進める体制を立ち上げることができます。朝会やふりかえりといったプラクティティスと比較して、テスト駆動開発のような技術スキルの習得には時間がかかるのです。立ち上げ時にメンバーの半分以上がテスト駆動開発の経験があれば、ペアプログラミングを通して、チーム内でスキルを伝えていくこともできます。

 スキルと並んで大切なのは、やはりマインドセットだと思います。「顧客とどういう接点を持ち、どう作るのか、どう話し合うのか」といったアジャイル開発を推進する全ての要素は、顧客のプロダクト・サービスのことを自分事として考える“エンジニアの態度”の上に成り立っています。

●経営者の思いが現場に届いていない

編集部 プロダクトオーナーの権限の話もありましたが、プロダクトオーナーも現場のエンジニアも、全員が主体性を持つことが重要なのですね。

木下氏 はい。その意味では、現場に任せきりにせず、経営者が積極的に現場に関わっていくことも必要です。以前はアジャイル開発を始めるときに経営者にどう説明するか、どうやって説得するかがテーマになることが多くありました。ただ最近は、経営者もセミナーに参加したり競合他社の取り組みを見たりして、アジャイル開発の効果やメリットをよく理解されています。問題は経営者の思いがうまく現場に届いていない例が多いことです。

 その結果、経営者が考えていることと現場のミドル層やリーダー層が考えていることにギャップが生まれている例も少なくありません。例えば、「経営者は社員のモチベーションアップを期待していたのに、現場はコスト削減を目指していた」ケースもあります。

 ではなぜそうしたギャップが生じてしまうのかというと、経営者が方針を示しただけで現場と一線を引いてしまうことが多いためです。経営者がアジャイル開発に取り組む目的を伝えず、セミナーで聞いてきたからとか競合他社もやっているからということで「うちの会社でもアジャイル開発に取り組むべし」という指示だけど終わってしまう。そうすると、権限を持ったプロダクトオーナーが「権限を本当に行使していいのか」と右往左往したり、経営者に何か協力を求めに行っても動いてくれなかったりということも少なくありません。

編集部 ただトップダウンで命令すればできるものではないということですね。というよりも、ウオーターフォール型のコマンド&コントロール文化から抜けきっていない。現場もプロダクトオーナーも主体性を持つとともに、経営者も進んで関与するスタンスが不可欠なのですね。すなわち、社内の業務慣習や文化を刷新する取り組みだけに、貴社が継続的にサポートすることも必要になってくると。

木下氏 はい。当たり前の話ですが、スクラムマスターやプロダクトオーナーといった役割だけ与えられても、これまでの仕事のやり方を変えられないという場合がほとんどですから、われわれが中に入って普及や教育を進めていきます。チームの全体会議に経営者に来てもらったり、現場の雰囲気を見てもらったり。そうすることで経営だけではなく、現場の雰囲気も変わって、ギャップが解消されていきます。逆に、対等に話ができなかったり、「上に言われたからやる」という雰囲気のままだったりする状況では、プロジェクトはほぼ失敗します。

●「ソフトウェアを作っていく」ことは「人を作っていく」こと

編集部 実際にプロジェクトを進めるときのポイントは何でしょうか。

木下氏 1つは、開発チームと顧客との間で直接話をする機会を多く作ることです。最終的にはプロダクトオーナーが判断するわけですが、その前に、実際に「自分たちがどういうものを作るか」「何を解決しようとしているのか」などをしっかりと伝えられるようにします。

 また、開発チームのリーダーだけではなく、メンバーも顧客との打ち合わせに参加して、顧客の欲しいものを理解していきます。細かい例になりますが、朝会やふりかえり、プランニングのときに、ファシリテーターを持ち回りにするといった簡単なことをやるだけでも、全員が主体的に関わっていこうという意識が芽生えてきます。

編集部 開発が進むと、抵抗勢力との闘いや部門間での連携も課題になると思います。どう対処すればいいのでしょうか。

木下氏 人を巻き込んでいくことが解決の糸口です。われわれはよく「ぜひチームに入ってきてください。一緒にやりましょう」と話を持ち掛けています。例えば、製造業では、品質管理部門に重厚長大なプロセスが残っている場合がよくあります。品質管理部門の人にとっては品質が最優先事項かもしれませんが、製品の価値を最大化するという視点で見た場合はそうとは一概に言えないことが多いです。

 チームに参加することで、部門間の壁を取り除き、他のプロジェクト関係者が何を考えているかを知るきっかけになります。品質管理部門を例にあげましたが、チームに入ってもらうメンバーは会社によってさまざまです。

編集部 いわば関係者全員の主体性の醸成が重要なのですね。

木下氏 そうですね。特に現場のエンジニアは、自分のことだけではなく、「チームにどんな問題があるか」をきちんと言えることがとても重要です。チームの中に課題を見つけたのに、「これは自分の範囲じゃないから言わなくてもいい」ではなく、自ら手を上げてチームの問題として一緒に解決策を探っていく。実は、コーチという立場で現場に入っていて、経営者にレポートして最も喜ばれるのは「Aさんの声が大きくなった」「Bさんの発言する回数が増えた」といった個人の主体性に関することなんです。

 経営者は生産性やコストのような数字しか見ていないというのもよくある誤解です。私が出会った経営者の多くは、チームの雰囲気が会社全体の雰囲気を変えることにつながると気付いていらっしゃいました。ソフトウェアを作っていくことは人を作っていくことです。ソフトウェアはまだ機械によって自動的に生み出せるものではありませんから。そして人を育てていくことは企業の大きな資産になります。最近も、チームはまだ具体的なプロダクトを生んでいなかったのですが、人の成長や変化を経営者の方が見て「変わったね」と満面の笑みを見せられたことがありました。

●エンジニアが生き生きと働ける「まっとうなアジャイル開発」を

木下氏 その意味で、何より大切なのは自分たちの現場に合わせて、自分たちの目的のために、さまざまな方法を試し、自分たちのものにしていくことだと思います。もちろんアジャイル・スクラムの標準的な方法論やフレームワークもありますが、アジャイル開発やスクラム開発の採用はゴールではなく、スタートなのです。開発のやり方をより良くし、現場をより活性化し、自分たちの目指すゴールに納得して当事者意識を持って取り組む。そうした体制や文化を形作る方法として最適なのがアジャイル開発だと考えています。

 最も重要なことは楽しむことです。「アジャイル開発の研修を2日間受けたから大丈夫」ではなく、そこで学んだ方法論を現場に合わせて、自ら工夫していくことが大切です。よって弊社が支援する際も、決まったやり方を押し付けるのではなく、自分たちで考えて気付くこと、自分たちか試行錯誤しながら工夫していくこと、自分たちが見つけたやり方で楽しんでやっていくことを大事にしています。

編集部 アジャイル開発のポイントは「エンジニアがいかに生き生きと働くことができるか」にあるように感じます。

木下氏 そうですね。われわれは「まっとうなアジャイル開発」と呼んでいます。「何が“まっとう”か」というと、いろいろあるのですが、「現場が楽しくなかったら“まっとう”じゃない」といった思いは強いです。疲弊しながら開発して、開発する目的もかなえられないなら不幸です。チームに関わる全員が自分たちのプロダクトを作っているという意識を持って、自律的に生き生きと働くことができれば、アジャイル開発はさらに広まっていくでしょう。

 永和システムマネジメントは、試行錯誤しながら15年以上アジャイルに取り組んできましたが、まだまだ課題やアジャイルに対する誤解も多いと感じています。エンジニア、そして、企業が生き生きと“まっとう”にソフトウェア開発に取り組んでいけるよう、これからも支援したいと思います。

最終更新:4/2(月) 8:00
@IT