アジャイル(2)
皆様こんにちは、株式会社コアブリッジの柳です。
前号では「アジャイル(Agile)」という考え方が提唱されるまでの流れと概要について記しました。
また、今日の日本のシステム開発に関する特徴(=課題)として「計画性と高品質を重視する」「外部委託比率が高い」を挙げました。
アジャイルを一言で言うと、「変化に適応し、価値を提供し続ける」です。この中には「関係者間で密に連携して先に進める」「無駄なものを作らない」「短期間の反復を繰り返し学習と変更対応を可能にする」ということが含まれます。
トヨタ生産方式と似ているところがありますね。それもそのはず、アジャイルはトヨタ生産方式の影響を受けています。
今回は、アジャイル宣言という思想(哲学)に基づいた開発方法や、上記課題への対策について触れていきます。
アジャイルに基づく方法論
先述の通りアジャイルとは”思想”であり、方法論ではないため、実践するには何らかのプロセス(Process)化(手順や規則等を決める)が必要です。
アジャイルに基づく開発方法には様々あります。アジャイルを実現するために作られたものもあれば、別個に生まれたのだが結果的にアジャイルの思想と合致している、というものもあります。
私自身の古い話で恐縮ですが、20年以上前の極めて困難な某システムの開発(業界でも有名だったらしい…)において、従来の進め方では土台無理という厳しい現実に置かれて、今で言う”アジャイル”とほぼ同様の手法を編み出して対処していました。そうせざるをえなかったのです。人間は突き詰められた状況になれば、本当に必要なことのみを自ずと選択するようになるし、皆同じようなことを考えるということなのでしょう(逆に言えば、必要に迫られないと変わらない、ということにもなるのですが…)。
アジャイルの実践行為
「2〜4週間単位の作業を繰り返す(“反復”と呼びます)」「やる事一覧を作成し、優先順位をつけて並べ、直近の作業分は詳細化する」「毎日(同じ時間に)15分間の小会議を行う」「成果物ができたら関係者(特に顧客)に見せてフィードバック(feedback)をもらう」「各反復が終わるごとに”振り返り”を行い、成果と課題を明確にする」
これらを繰り返します。その際に大事なことは「現実性」です。「優先順位付け」「実際的な見積もり」「反復開始条件と反復終了条件の明確化」「萎縮しない環境作り」など、書いてみると当たり前のことですが、従来型の進め方よりもより実際的というか”現場”的です。筋論と強制で無理なことをやろう/やらせようとしても、一つの反復が終わる、わずか2〜4週間後にはその無理が露呈してしまうのですから。
いいことばかりではない
アジャイルの長所を並べていると、魔法のように思えてしまいますが、良いことばかりではありません。
要は「管理がしにくい」のです。正確には、管理の手法やノウハウ(know-how)が固まっていない、というべきかもしれません。
従来法は最初に計画をがっちりと立てて「いつ誰が何をやる」が明確になっているため、分業しやすいうえ、状況を追いかけるのも比較的容易です。アジャイルは真逆の方法を取るため、「いつ何ができあがるか」が分かりません(確定されません)。「変化に対応する」がために、状況は常に変わっている(=状況把握も大変)し、期限内に出来上がるものが状況によって変わりうるわけです。
また、アジャイルは、作業を行う人の「自律性」を重んじます。指示を出す人・受ける人でチーム(team)が構成されるのでなく、自ら積極的に幅広く作業を行なっていく自己組織化チーム(self-organizing team)が前提です。理想的な話ではあるのですが、現実にはそのような人ばかりでチームが作れるわけでもありません。
結果、小規模な開発には向いていますが、大規模なものには現状としては不向きと言えます(大規模プロジェクトへの適用は、色々な試みがなされてまいます)。
外部委託の際にも悩ましく「いつまでにこれとこれをやってほしい」ということが明示できないため、止むを得ず「この期間で、できるところまでをお願いする」としている現場も少なくありません。
ハイブリッド(Hybrid)
短所を補う、あるいは長所の「いいとこ取り」をするために、従来型とアジャイルを混ぜて実施する、という方法もあります。先に挙げた、私の古い例がそれでした。従来方式でシステムの必須部分をガッツリと作り込んだ後、細かな機能の追加をアジャイルで反復実現しました。その逆の、アジャイルの一部の中に従来型を組み込む、というやり方も可能です。
日本のITの課題に対して
「計画性と高品質を重視する(ために柔軟性に欠ける)」「外部委託比率が高い」という課題は、アジャイルを適用すれば解決するという単純かつ安易なものではありませんが、従来型に固執してきた故に起きていることは想像に難くありません。
しっかりとした計画と高品質は決して悪いことではなく、むしろ理想的ですが、それが許されない状況下で過剰なことを行っても無駄になるということを認め、腹を括って変えていく必要があります。新しいやり方に変えていくには大きな勇気が伴いますが、それをせずに従来と同じことを漫然と続けているのならば、思考が停止し、意思も判断力も責任感も欠如していることに他なりません。結果、他者依存性が強まり、外部委託に逃げるということにつながります。「システムのことはシステム屋がすべてやってくれる」という妄想から脱却し、「自分のことは自分たちでやっていく」という意思と責任が文字通り不可欠です。昨今声高に叫ばれる”DX(Digital Transformation)”は、これなしには実現はできません。
今号は以上です。
では、また次回お会いしましょう。
※本文中の情報、状況、数値等は執筆時点のものです