STERFIELD

2012/12/06

アジャイルソフトウェア開発という手法

アジャイルソフトウェア開発という手法

昔から言葉だけは聞いたことがあったのですが、友人経営者がアジャイルサムライという本を推薦していたので、読んでみました。

以下、アジャイル開発とは何か簡単にまとめます。

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

そもそもアジャイルという単語自体を調べると以下であることが分かります。

アジャイル(agile) は「俊敏な」という意味。

ソフトウェア開発プロセスのうち、良いものを素早く無駄なく作ろうとするものの総称。

従来の、後戻り不可能なウォータフォール型開発と対比して使われることがある。

  • アジャイル開発の価値
    • プロセスやツールより人と人同士の相互作用を重視する。
    • 包括的なドキュメントより動作するソフトウェアを重視する。
    • 契約上の交渉よりも顧客との協調を重視する。
    • 計画に従うことよりも変化に対応することを重視する。

ZDnetJAPANさんの文章を引用させていただくと下記になります。

ウォーターフォールモデルを採用した場合には、ユーザーは開発の終盤にならなければシステムを利用して仮説の検証を行うということができず、そのためほとんどの機能を作り終えた後で変更要求が頻発して対応しきれなくなり、最終的に満足度の低いシステムになってしまう可能性が高いと言えます。

それに対して、アジャイル開発では開発プロジェクトの期間を短期間(1週間〜6週間)に区切り、この間に開発工程を一通り行って、部分的に機能を完成させます。そしてこの「短く区切られた期間で動くアプリケーションを開発する」という作業を繰り返すことによって、段階的にシステム全体を仕上げていきます。このような開発スタイルは反復型(イテレーション)開発と呼ばれていますが、開発期間の早い段階からユーザーが動くソフトウェアを目で見て確認できます。

  • 3つの真実
    • プロジェクトの初めに全ての要求を集める事はできない。
    • 集めたところで、要求はどれも必ず変わる。
    • やるべき事は必ず、当初の予定や予算より多い。
  • アジャイルでは役割分担がはっきりとは分かれていない。
  • アジャイルチームの特徴
    • きっちり区別しない役割分担
    • 継続的な開発工程
    • チームで成果責任を果たそうとする態度
  • インセプションデッキ
    • 我々はなぜここにいるのか?プロジェクトの意図、背景を理解
  • エレベーターピッチを作る
    • エレベーターで会った重要人物に30秒でアイデアを伝える
  • パッケージデザインを作る
    • プロダクトの顧客へのアピールは何か
  • やらない事リストを作る
    • なにがプロジェクトのスコープ外か?内か?
  • ご近所さんを探せ
    • 予め関係しそうな人達に根回しする

 まとめ

ウォーターフォール型の、いわゆるシステム開発のフレームワークは納めているつもりではおりましたが、弊社のようにライトなWebサービスの受託開発などでは、実態にそぐわないパターンが多いと感じていたところに、このアジャイルソフトウェア開発はまさに現代の手法だと感じました。

参考サイト

http://d.hatena.ne.jp/keyword/%A5%A2%A5%B8%A5%E3%A5%A4%A5%EB

http://japan.zdnet.com/sp/sp_06sp0130/20248727/

Author Profile

著者近影

YUJI MEZAKI代表取締役副社長

代表取締役副社長をやっています。 越境ECとWebマーケの営業担当しています。 なんでもカリカリにチューニングして生産性あげるのが好きで勉強したビジネスフレームワークの記事多め。 趣味はPC自作で会社のWindowsデスクトップはほぼ自分が組みました。 1985年生/2008年早大卒/

SHARE

合わせて読みたい