user
Shun Namiki

Freelance full-stack Endigneer @ Shibuya, Japan

Published on Nov-20th, 2018 ( 2 min read )

「アジャイル開発宣言」を自分用に整理

ある人が「うちはアジャイルな開発なので〜・・・・」的なことを発言していることを聞き、「あれ?テストコードがないレガシーコードによる実装でもアジャイルな状態って言って良いのか?」「そもそもアジャイルの定義ってなんだっけ?」となったので原理主義的にアジャイル開発宣言の読み直しついでに自分用の簡単なチートシートを作っておく。

またそれとは別に「アジャイルとは?」的なことで色々調べたが、こちらの結論は、アジャイルの定義は明確にはないので人によって捉え方も違うみたい。なので別にレガシーコードな状態でもアジャイルと呼んでもよさそう。少なくとも自分は好きではないが。

アジャイル開発宣言

No これよりも →→→ こっち
1 プロセスやツール →→→ 個人と対話
2 包括的なドキュメント →→→ 動くソフトウェア
3 契約交渉 →→→ 顧客との協調
4 計画に従うこと →→→ 変化への対応

左記のことがらに価値があることを認めながらも、私たちは右記のことがらにより価値をおく

12原則のまとめ

概要を自分の言葉で出来る限り少ない文言で更にまとめた。

とはいえ、抜粋自体が「これ以上削れないヨ!」となるほど十二分にキレイにブラッシュアップされたものだと思うので概要は抜粋を思い出すためのKeyとしての位置づけ、くらいに考えてこう。

No 概要  抜粋
1 顧客満足を
最優先
顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供します。
2 仕様変更を
歓迎
要求の変更はたとえ開発の後期であっても歓迎します。変化を味方につけることによって、お客様の競争力を引き上げます。
3 スモールな
スタート&スパン
動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリースします。
4 共同開発 ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなければなりません。
5 意欲と信頼 意欲に満ちた人々を集めてプロジェクトを構成します。環境と支援を与え仕事が無事終わるまで彼らを信頼します。
6 Face to Face 情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで話をすることです。
7 進捗は実物主義 動くソフトウェアこそが進捗の最も重要な尺度です。
8 継続的な開発 アジャイル・プロセスは持続可能な開発を促進します。一定のペースを継続的に維持できるようにしなければなりません。
9 設計は慎重に 技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます。
10 シンプルを選ぶ シンプルさ(ムダなく作れる量を最大限にすること)が本質です。
11 自己組織化 最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出されます。
12 振り返りと改善
=レトロプロスペクティブ
チームがもっと効率を高めることができるかを定期的に振り返り、それに基づいて自分たちのやり方を最適に調整します。

※ No9の概要がちょっと意味が違う気もするが、気の利いた一言が思いつかなかったので

arrow_back

Previous

Varnish / Fastlyとは

Next

Application Delivery Network ( ADN ) とは
arrow_forward