【技術用語調査】SAFe
きっかけ
開発手法やプロセスの調査をしていて、見知らぬワードが出てきたので、気になって調べた
定義・概要説明
- 用語: SAFe(Scaled Agile Framework)
- 分類: アジャイルフレームワーク(設計概念)
- 主な分野: ソフトウェア開発・プロジェクト管理・エンタープライズアジャイル
- 初出・提唱者: Dean Leffingwell / Drew Jemilo
SAFeは、大規模組織でアジャイル手法を拡張して効果的に実行するためのフレームワーク。複数のアジャイルチームを組織横断的に調整し、企業全体での価値提供を最適化することを目的としている。透明性や継続的改善を促進し、市場変化に柔軟に対応できる仕組みを提供する。
大きな会社でも、みんなで上手にアジャイル開発を進めるための考え方です。
構造・仕組み
7つの主要な考え方(コアコンピテンシー)
※難しい言い回しを自分なりに咀嚼してるので、原文見たほうが安全かも知れない
リーン・アジャイル・リーダーシップ(LPL)
リーダーがみんなのやる気や力を引き出し、チーム全体がうまく動けるように導く。チームと技術のアジリティ(TTA)
複数部署が壁を越えてうまく連携し、仕事を早く正確に進める。アジャイルな製品づくり(APD)
各決定プロセスの中心に顧客を置くことで、価値を生む製品を顧客に提供し続ける。大きなシステムづくり(ESD)
ソフトウェアやネットワークなどの仕様決定や開発、運用などにおいて、リーンアジャイルの原則とプラクティスを適用する。リーン・ポートフォリオ管理(LPM)
成果物の優先順位付けと戦略、予算とガードレールの作成など、管理の実践を評価する。学び続ける文化(CLC)
学び続ける組織、イノベーションの文化、たゆまぬ改善。進化し続ける組織づくり。
4つの構成要素
- Essential SAFe:SAFe 構成の基本的な構成要素。アジャイルを実現する機能の最小限の単位。
- Large Solution SAFe:単一の非常に大規模で組織に対してアジャイルを実現するためのサポートする構成群
- Portfolio SAFe:組織全体として、どのソリューションに投資すべきか、その戦略をどう実現するかをサポートしてくれる
- Full SAFe:全レベルを統合した包括的モデル。大規模向け。
※規模や目的に応じて選ぶ必要がある
Full SAFeが常にベストではない。規模に合わせてどの構成を適用するか考える必要がある。
小規模なのにFull SAFeを適用するのはダメ。
例えるなら、自転車で行ける範囲の店に、ジャンボジェット機で行くようなもの。
店に行くためのコストパフォーマンスが最悪なので、どれを適用するか選択することが最重要になる。
主な用途・ユースケース
単一チームのスクラムやカンバンでは対応できない規模の組織でアジャイルを実践し、リリース頻度や品質を高める際に用いられる。
メリット・デメリット
- メリット
- 迅速な製品リリース:市場に出すまでの時間を短くし、品質もチェックしながら製品を改善できます。
- 変化への柔軟性:顧客のニーズや社会の状況が変わっても、柔軟に対応できる会社になります。
- 連携能力の強化:これまでバラバラだったチーム同士が、連携を取りやすくなります。
- 士気の向上:自分の仕事が会社の目標にどうつながるか分かり、自主性も尊重されます。
- デメリット
関連技術・比較
- 類似技術: LeSS(Large Scale Scrum)、Spotifyモデル
- 対比される概念: 従来のウォーターフォール開発
- 補完し合う技術: DevOps、継続的インテグレーション・デリバリー(CI/CD)
SAFeは企業規模の大きさや複雑さがある場合に適しており、組織文化や成熟度によって導入の成否が分かれます。
注意点・よくある誤解
- SAFeは万能ではなく、組織文化や成熟度に依存
- 過度に細部まで固めすぎるとアジャイルの柔軟性を損なうことも
- バージョンアップが頻繁で最新情報のキャッチアップが必要
所感・まとめ
話を聞いたり、要約見たりすると、すごく万能なツールのように感じたが、実際には組織にどうやって適用するのか考えられる人が旗振りしてやらないと、適用に失敗する気がする。。。
アジャイルと言うと開発チームの話だと思いがちだが、SAFeは組織全体をアジャイル化する話だった。開発チームでも大変なのに、組織全体をアジャイル化するとなると、かなり大変そうだが、海外の大企業では適用しているところがいくつかあるらしい。
正直なところ、うちの会社での適用は、無理だ。アジャイルへの理解がある人が少なく、導入の壁は、ものすごい高い気がする。
アジャイル開発は、やったことはないが、近場で見てきたのだと、大抵はドキュメントそろってないのをアジャイルだからで押し切ろうとしたらするのを見て来たので、本当のアジャイル開発は難易度高い認識でいる。
それで思い出したけど、アジャイル開発失敗すると、大抵の場合は、それはアジャイルではないって言われる。どこかアジャイルじゃないのか説明しろよって心の中で文句言いながら、どういうところがダメだったのかヒアリングさせられて、避難のエスケープゴートにされたのは嫌な記憶。俺を矢表に立たせたリーダーは絶対に許さん。
“大は小を兼ねる”という考え方もあるが、SAFeでは、コストパフォーマンスが悪くなることもあるってのが理解できた。
さすがに、俺が超大富豪でも、近場の店に行くのにジャンボジェット機は使わんな。
これらの判断は、開発プロセスや手法に精通していないと難しく、経験豊富な人にしかできないと感じた。
参考資料・出典
Framework - Scaled Agile Framework
Scaled Agile Framework(SAFe)とは| IBM
アジャイル開発のフレームワーク「SAFe」とは?特徴や導入メリット解説