アジャイルの思想を組織に浸透させる意外な?メリット
みなさん、こんにちは。
はるです。
近年、DXがトレンドとなり、多くの会社がDXを推進していくために様々な取り組みをしていると思います。
そんな中、DXとよくセットで聞く言葉が「アジャイル開発」という言葉です。20年以上前から存在する有名なものですが、どちらかというと思想というより開発手法と認識されている方が多いのではないでしょうか。
それも納得です。アジャイル開発という概念が浸透し始めた頃は「新しい開発手法」という意味合いが強く反映された形で普及していたように思います。みなさんがパッと「アジャイル開発とは?」と聞かれると、「システム開発を小さな単位に分け、設計から実装、テスト、リリースを繰り返しながらプロジェクトを進めること」という内容が思いうかぶかと思います。
では、そもそも「アジャイル開発」とは何なのでしょうか。
自分もまだまだ勉強し始めたばかりですが、それでも感じること・思うことがたくさんあったので、自分なりに書いてみようと思います。
まず「アジャイル開発」という単語が生まれたのは2001年で、従来の開発手法に比べてもっと軽量で迅速な手段を多くの方々が試行錯誤した結果、それらには多くの共通点があることに合意し「アジャイルソフトウェア開発宣言」と「アジャイル宣言の背後にある原則(通称”12 の原則”)」が提示されたことが始まりです。
以下に「アジャイルソフトウェア開発宣言」と「アジャイル宣言の背後にある原則(通称”12 の原則”)」を紹介しておきます。
アジャイルソフトウェア開発宣言
私たちは、ソフトウェア開発の実践あるいは実践の手助けをする活動を通じて、よりよい開発方法を見つけだそうとしている。
この活動を通して、私たちは以下の価値に至った。
プロセスやツールよりも個人と対話を、
包括的なドキュメントよりも動くソフトウェアを、
契約交渉よりも顧客との協調を、
計画に従うことよりも変化への対応を、
価値とする。すなわち、左記のことがらに価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。
(引用URL:https://agilemanifesto.org/iso/ja/manifesto.html)
アジャイル宣言の背後にある原則
私たちは以下の原則に従う:
・顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供します。
・要求の変更はたとえ開発の後期であっても歓迎します。変化を味方につけることによって、お客様の競争力を引き上げます。
・動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリースします。
・ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなければなりません。
・意欲に満ちた人々を集めてプロジェクトを構成します。環境と支援を与え仕事が無事終わるまで彼らを信頼します。
・情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで話をすることです。
・動くソフトウェアこそが進捗の最も重要な尺度です。
・アジャイル・プロセスは持続可能な開発を促進します。一定のペースを継続的に維持できるようにしなければなりません。
・技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます。
・シンプルさ(ムダなく作れる量を最大限にすること)が本質です。
・最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出されます。
・チームがもっと効率を高めることができるかを定期的に振り返り、それに基づいて自分たちのやり方を最適に調整します。
(引用URL:https://agilemanifesto.org/iso/ja/principles.html)
つまり、アジャイル開発とは開発手法を示すものでもありますが、類似した開発手法に共通した価値観と行動原則に名前がついたものであり、概念的・思想的な側面も多く持ち合わせています。
ここでもう一度「アジャイル開発とは?」という問いを考えてみると、「より良い解決手法を探している状態」というような表現がしっくりくるのではないかと思います。
このアジャイル開発が持っている価値観が近年のVUCA時代において、マネジメントや組織戦略、DX推進などと親和性が高いことが、最近開発以外の場面でもよく聞くようになっている理由だと思います。
アジャイルの思想を取り入れる大きなメリットとしてよく言われるのが、「意思決定や価値提供が早くなる」や、「変化に対応した軌道修正が容易」、「課題やフィードバックを取り入れ、改善することができる」などかなと思います。(他にもたくさんありますが)
上記は実際にアジャイルの思想や開発手法を取り入れる上で素晴らしいメリットになるポイントです。ただ、実際にアジャイルを取り入れようと思うと、色んな考え方や手法を勉強しなくてはいけない、どうやって進めていけばいいかわからない、お客さんの仕事を受注する場合の契約がややこしい(既存の方法だとうまくいかない部分がある)など、なかなか重い腰が上がらない部分がありますよね。
しかし!
自分がアジャイルのことについて学習し、実際に実践していく中でアジャイルの根本にある、以外と気付かない?メリットがあるなと思うようになりました。そして、それは非常にスモールなスタートができる内容だと思います。
アジャイルの思想を理解する意外な?メリット
まず、前述でアジャイル開発は「アジャイルソフトウェア開発宣言」と「アジャイル宣言の背後にある原則(通称”12 の原則”)」が提示されたことが始まりだと書きました。
そして、それを一言で置き換えると「より良い解決手法を探している状態」だと説明しました。
一体これは何のためにこのような価値観を提示し、それを反映した進め方を試行錯誤しているのでしょうか。それは、サービスやプロダクトの「社会的価値・費用対効果の最大化」のためです。
アジャイルの思想や手法はこの「社会的価値・費用対効果の最大化」を強く意識するようなものになっていると感じます。
「社会的価値・費用対効果の最大化」は言われてみれば当たり前です。すべてのサービスは社会に価値を提供すること、またそれにより効果(色々な側面での利益)を得ることを目的に作られています。アジャイル開発とよく対比される開発手法のウォーターフォール開発手法でも同じです。
でも、なぜか今までの主流のやり方だとその事が忘れられたり、認識していても意識されなかったりします。
なぜなのでしょうか。これは「アジャイルソフトウェア開発宣言」を再度見直すとしっくりきます。
プロセスやツールに目が行きすぎるあまりチームや顧客との対話がなおざりになったり、包括的にドキュメントを正しく作ろうとするあまり実際のサービスやプロダクト自体の内容が置き去りになったり、契約や計画を遵守することに目線が行きすぎて、関係者と共にサービスの社会的価値を最大化すること・共創することを忘れたりするわけです。
つまり、今まで正しさ・効率を強く意識し、最適化を追求し過ぎたあまり、ビジネスプロセスが過度に標準化し選択肢がなくなることで「思考停止状態」になりそうであったところに警鐘を鳴らしたのがアジャイルの思想だと思います。
アジャイルソフトウェア開発宣言でも「左記のことがらに価値があることを認めながらも」と言っているように、プロセスやツール、包括的なドキュメント、契約交渉や計画ももちろん大切なことなのですが、行き過ぎは禁物ということですね。
では、どのようにアジャイル開発や思想浸透をスモールに始めるのでしょうか。
それは、「アジャイルソフトウェア開発宣言」と「アジャイル宣言の背後にある原則(通称”12 の原則”)」の理解と浸透です。
手法やスキルは後で良いと思います。まずはアジャイルマインドの理解から始め、それをチームや組織に浸透させていけば良いと思います。アジャイルマインドを理解するだけで、きっと今までと同じ仕事をしていても、違う視点が見えてくるはずです。「ここはこういう手順だと決まっていたけれど、こんな改善ができるのでは?」「前の会議で、進め方が決定していたけれど現状を考えると変えた方がいいのでは?」みたいな感じです。これも、いきなり既存のやり方を大きく変えることは無理だと思いますので、可能なレベルで、少しずつでいいと思います。
このような思想が浸透してくれば、自然と一人一人の当事者意識やエンゲージメントが高まり、チームや組織全体により良くしていこうという意識が芽生えたり、活気のある雰囲気が醸成されるのではないかと思います。
このような、当たり前なのになぜか忘れられたり、意識されなかったりする「社会的価値・費用対効果の最大化」を思い出させ、仕事のやりがいを向上させてくれるのがアジャイル思想の意外な、気付きにくい?メリットではないでしょうか。
時代的にも取り入れて損のない思想・手法だと思いますので、ぜひ少しずつ「アジャイル的に」取り入れ、チームや組織に浸透させてみてはどうでしょうか。
ご一読ありがとうございます。
それでは。