2014年8月2日土曜日

アジャイル開発

 某DB授業でグループ作業をするんだけど、そのグループ作業の方法とかそこら辺が把握できていないと色々と死にそうだから書いておく。

 アジャイル開発にはXP、RUP、スクラム…etcと色々とあるらしいけど、アジャイル開発全体の目的は「コミュニケーションコスト増大のリスクを避ける」ってことなんだよね。まぁぶっちゃけなにができて欲しいかっていうと

[8/2投稿直後に訂正]
すっげー誤解。つーか手書きメモに書いていた内容が死んでてマジ大草原。

アジャイル開発全体の目的って決定してた。「アジャイルソフトウェア開発宣言(価値)」ってググってくれれば幸せになれると思う。お言葉に甘えて http://agilemanifesto.org/iso/ja/ からコピペ

------------------------以下コピペ------------------------

アジャイルソフトウェア開発宣言




私たちは、ソフトウェア開発の実践
あるいは実践を手助けをする活動を通じて、
よりよい開発方法を見つけだそうとしている。
この活動を通して、私たちは以下の価値に至った。
プロセスやツールよりも個人と対話を、包括的なドキュメントよりも動くソフトウェアを、契約交渉よりも顧客との協調を、計画に従うことよりも変化への対応を、
価値とする。すなわち、左記のことがらに価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。


Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas



© 2001, 上記の著者たち
この宣言は、この注意書きも含めた形で全文を含めることを条件に
自由にコピーしてよい。 

------------------------以上コピペ------------------------

原文は上記URLで見ると凄く良いと思う。まぁつまり、

・メンバー間の意思疎通
・問題の全部理解
・動くブツ作って

って事らしい。僕の理解も相当浅いってはっきりわかんだね。

 アジャイル開発の特徴として「1つの開発サイクルを小さくする(1サイクルの要求が小さい)」ってのがあるけど、その理由がやっぱり上記リストアップとか上記宣言に行き着くのかなぁ…。

ちなみに「1つの開発サイクルが小さい」ってのは、「一発でブツを作るなタコ!」ってことなんだよね。ウォーターフォール開発プロセスと比較すると

[ウォーターフォール]
要求分析→設計→実装→テスト(ブツ一部のテスト)→結合(ブツ全体のテスト)

[アジャイル]
要求分析→設計→実装→結合→
→要求分析→設計→実装→結合→
→要求分析→設計→実装→結合→
…→全体テスト

みたいな。一スパンに作ってるものが小さいのがアジャイル開発ってそれいちばん言われてることだから。


こんなこと書いてて分かったけど開発プロセスについて全然わかってねーなと痛感。なんじゃこりゃー



0 件のコメント:

コメントを投稿