2018/11/14追記
- これは、「アジャイル宣言」について自分の言葉でまとめたもので、3つのうちの1つです。
- その1)「アジャイル宣言とは?新しい価値観の提示 - Qiita」
- その2)「アジャイル宣言を理解すると、何が美味しいの? - Qiita」(本記事)
- その3)「なぜアジャイル宣言が誕生したのか?何を変えようとしているのか? - Qiita」
- その1)2)3)の順に読むことを想定していますが、それぞれ単独でも読めます。
これは何?
- アジャイル宣言の理解が重要だと思ったので、自分の言葉でこれを説明してみます。
- もう少し詳しく書くと『アジャイル宣言とは、新しい価値観であり、判断基準であり、変わらないもの』であることを説明します。
- 『アジャイル宣言の使い方』についても書いてみます。
- なお、この文書での「アジャイル宣言」とは以下の2つの原文を指します。
アジャイル宣言を理解すると、何が美味しいの?
-
アジャイル宣言とは一言でいうと「新しい価値観の提示」です。これを理解することで『自分たちがやっていることが良い?悪い?方向に向かっているのか?どこに向かえばいいか?を判断できる』ようになります。(現実のシステム開発はそんなに簡単なものではないので「判断できる」と言い切るのは大げさかもしれません。ですが、少なくとも「より良いシステム開発への道しるべ」にはなってくれるはずです)
-
例えば、いろいろなキーワード(スクラム、Docker、CI/CD など)について考えていると「結局何が重要なのか?どれを採用すればいいのか?」まるで、迷路の中で迷子になってしまうような感覚になってしまいます。そんなとき、アジャイル宣言(新しい価値観)という視点に立ち、改めて考え直すことで、迷路から抜け出すキッカケを与えてくれます。
アジャイル宣言の役割/使い方
- ここでは「アジャイル宣言の美味しさが、自分たちのチームにどのようにもたらされるのか?=アジャイル宣言の役割/使い方」について書いてみます。
1.もしも、アジャイル宣言がなかったら?
- より良いシステム開発の為、新しいチャレンジとして自分たちのチームに、スクラムやDockerを導入しても、失敗してしまうかもしれません。
- なぜなら、どんな開発手法や技術を導入するかを判断する為の基準がないからです。
- ちなみに、自分たちのチームが問題を抱えていないなら、変える必要はありません。
2.アジャイル宣言(=新しい価値観)を受け入れられるなら?
- 皆が納得できる基準として、アジャイル宣言(=新しい価値観)を受け入れられれば、自分たちのチームに合った、開発手法、技術を導入を選んで、導入することができます。
- 自分たちのチームに合ったものを導入するわけですから、導入失敗するリスクを減らせます。
3.アジャイル宣言だけが、唯一変わらない
- アジャイル宣言では『チームを取り巻く状況の変化に合わせて、開発手法や技術*も*柔軟に変化させることで、成果を出し続けるソフトウェア開発が実現できる』と考えています。
- 状況も開発手法や技術もあらゆることが変化する前提ですが、そんな中で、唯一変わらないのは、アジャイル宣言(=新しい価値観=判断基準)です。
まとめ
-
アジャイル宣言は『原点』なので『迷ったときに、初心に戻る』ことができそうです。
-
アジャイル宣言を、さらにギュッと圧縮したものとして「モダンアジャイル」という考え方もあるようです。
-
アジャイルを取り巻く環境はこんな感じでしょうか。
<↑より抽象的:概念、理念(時間が経過しても変わらないもの)> モダンアジャイル | アジャイルソフトウェア開発宣言 | アジャイル宣言の背後にある原則 | スクラム、XP などのソフトウェア開発手法 | Docker、Kubernetes、CI/CD、マイクロサービス、 Infrastructure as Code など <↓より具体的:技術要素(時間の経過とともに変化しやすいもの)>
-
『アジャイル・コーチが去ったその後で - 金融とIT英語のアレクシス』より引用
Don’t just do agile, be agile. "アジャイルで開発する、ではなくアジャイルな日常の中で開発せよ"