WF開発とアジャイル開発の比
       較
目次

1.はじめに
2.WF(ウォーターフォール)開発って?
3.アジャイル開発って?
4.まとめ~WF開発とアジャイル開発の比較~
1.はじめに
ソフトウェア開発について
• ソフトウェア開発・・・ユーザーの要求をソフ
  トウェア製品に変換する作業


ホームページ      ユーザーの欲しい!を形にする
  Twitter
 Facebook
  ブログ

            各種プロセスを経てプロ
            グラマーがソフトウェア
            を開発
ソフトウェア開発のプロセス
                   要求定義


開発を複数の段階に分割        外部設計

モデル化する!!
                   内部設計

                   プログラミン
                      グ
・WF(ウォーターフォール)開発
                    テスト
・アジャイル開発
                     導入
2.WF(ウォーターフォール)開発っ
         て?
WFとは
ウォーターフォール開発
・全体的な見通し
                    普及率が高
・スケジュール管理            い!!
・資源配分管理
              1年間で作るっ
              て分かってるか
              ら管理面がしや
                すい!!
WFのプロセス

    要求定義                      しっかりとしたスケジュー
                              ルが組まれている!各工程
           外部設計               を順を追って進める。

                  内部設計
                         プログラミン
時                          グ
間
                                  テスト

                                        運用
                  逆戻りができな
                  い

                    開発段階
WFのチーム構成
• ユーザーと開発者のコミュニケーション
→機会が尐ない
• 仕様書が明確
→ 専門分野でのチーム構成


                   マ
                   ネ
     テス   アナリス     ー
     ター    ト       ジ
                   ャ
                   ー
      デザイナー   プログラマー
WFのメリット
• スケジュール管理が容易
→ 全体像が把握しやすい
• 明確な仕様書
→ 作業の円滑化
• 進歩管理が容易
• 段階ごとの作業管理
WFのデメリット


• 初期段階での要求定義
• 要求変化への対応が困難
  → ビジネス環境の変化へ対応が困難
• 問題発見時の労力
• 期待と実際のシステム相違の可能性
現代のWF開発の問題点
                            近年の
                            変化状況




ビ         開発期間より
ジ         も変化状況の
ネ
ス          方が早い
環
境        システム      システム完成          これまで
         開発期間
                                   の変化状
                                   況
 環予
 境測
 変可
 化能
 量な

                     時間
IPAの調査
ビジネス環境とソフトウェア開発の
       関係
   ビジネス環境
              外部ビジネス環
   とシステム開     境
    発の関係っ
     て?        ビジネス戦
               略

                    IT戦略
                内
要求の早期固定(WF)     部          要求
                状
       リス       態
       ク            システ
外部、内部のビジネス環
境の変化への対応ができ
                    ム開発
ない!!
→ ビジネス環境変化す
る
WF開発の問題点
環境が変われば
  欲しいものも変わる・・・
1年もかけて作られたものを見たら
  想像と違う・・・
  1年の間にこの機能はいらなくなった・・・
最後まで作ったのに
  問題点が見つかった・・・
じゃあどうする?
環境は変わっていくもの!!
要望も変わっていくもの!!
                 解決策は?

・短期的なフィードバック
・顧客とのコミュニケーション


    戻れないWF開発から
  繰り返すアジャイル開発へ!
3.アジャイル開発って?
アジャイル開発とは
 ビジネス環境
  の変化が
 激しい・・・    アジャイル開
           発

           ★要求への対応
          ★ユーザーとの協調
           ★問題の早期発見


  最後になっ
    て
  問題が!
アジャイル開発のプロセス
・短期的なフィードバック、要求定義
・繰り返される反復
 → 要求変化への柔軟性

           第1イテレーション(反     第2イテレーション        第3イテレー
           復)                               ション

           要求定義             要求定義            要求定義             第nイテレー
                                                             ション
                  プログラミン
   企画             グ
                                   プログラミン
                                   グ
                                                   プログラミン
                                                   グ              ・・
ストーリーリスト
            テス
            ト
                             テスト             テスト
                                                                  ・・
作成

1、ホームページ
   作成                                   リリース
2、プロフィール
                           リリー                              リリー
   作成                      ス                                ス
3、利用規約作成             顧客          開発者               ※1イテレーション=1~2
4、オンライン                                            週間程度の短期間
 ショップ作成
   ・                 リリースの段階でユーザ
   ・                 と話し合い要求定義を行
   ・
アジャイル開発の特徴

• 要求の固定を前提としない
  → ビジネス環境の変化、要求変化への
対応
• 定期的なフィードバック
• コミュニケーションを重視
• 顧客の参画度合いが強い
• プログラム重視
アジャイル開発のチーム構成

•   はっきりと区別しない役割分担
•   チームで成果責任を果たそうとする態度
•   積極的に関わる顧客の存在
                   ビジネス
•   成果責任と権限委譲      ソリュー
                    ション
•   自己組織化     WIN!
                   システム  WIN!
                        HAPPY!
                HAPPY!    目的      目的

                            信頼・協調・尊
                            重
    顧客と共に開発す             ビジネス側        開発側

    る!!
アジャイル開発に適した領域

• ビジネス要求が変化する領域
• リスクの高い領域
→ ・不確実な市場
   ・技術的難易度
• 市場競争率の高い領域
→ ・TTM(time to market)の短縮が必要
アジャイル開発のメリット

•   要求変化への柔軟な対応
•   期待と成果物の不一致の防止
•   問題点の早期発見
•   開発を進めながらの成長
•   優先的な機能から開発、運用
•   エンジニアのモチベーションの保持
アジャイル開発のデメリット



• スケジュール管理が困難
• 長期的な開発の見通しが困難
• 開発者への高いスキルの要求
4.まとめ

~WF開発とアジャイル開発の比較
        ~
WF開発とアジャイル開発の比較

 特徴


WF開発・・・品質・スケジュール管
理重視
アジャイル開発・・・スピード・柔
軟性重視
WF開発とアジャイル開発の比較
  プロセ
         リリース
   ス




        アジャイル開
イテレー
ション(反
        発
  復)
         WF開発

          時間
WF開発とアジャイル開発の比較
 顧客と
 の距離

WF開発・・・積極的な関わりが尐
ない傾向
アジャイル開発・・・短期的な顧
客とのコミュニケーション
WF開発とアジャイル開発の比較
 管理


WF開発・・・スケジュール管理や全体の
見通しが立ちやすい
アジャイル開発・・・長期的なスケ
ジュール管理やドキュメント上での管理が
困難。
WF開発とアジャイル開発の比較

 柔軟性

WF開発・・・要求変化への対応、仕様漏
れや問題が発覚時の対応が困難。
アジャイル開発・・・要求変化への柔軟
な対応、仕様漏れや問題の早期発見。
WF開発とアジャイル開発の比較
適正領域        技術・市場に 高
            おけるリスク
                       アジャイ
                        ル開発

                          ビジネス環
                          境の変化量

 小                         大




     WF開発

                  低
開発モデルは使い分ける!

長期的に開発を進めるWF開発
や繰り返しのアジャイル開発
         大切なの
         は・・・




 状況により使い分けるこ
 と!
最後に・・・
コミュニケーションの必要性
                 美容室と似てい
                   る?
今日はパーマ
かけてくださ
             過程          結果
  い           あっ!        思い通
            もうちょっと弱め      り!
             にかけて!!


         コミュニケーションのとれ
         る人


         コミュニケーションのとれな
         い人


           ・・・
ご清聴ありがとうございまし
た

ウォーターフォールとアジャイル開発の比較