Scrum Ga!e"ng Tokyo

              2012

  継続的デリバリー

    グロースエクスパートナーズ(株)
               和智 右桂
JavaEE勉強会 所属             Yukei Wachi

 グロースエクスパートナーズ株式会社 勤務
    http://www.gxp.co.jp/index.html

      和智 右桂
 ネコ好き
               IT アーキテクト
                           @digitalsoul0124
 Digital Romanticism
         http://d.hatena.ne.jp/digitalsoul
                               Photo by @digitalsoul0124 All rights reserved.
アジェンダ

•
問題提起
•継続的デリバリーとは?
•継続的デリバリーのために
•まとめ
                          スライド中で使用されている画像について、
       その著作権の全部または一部は、 クレジットに示した著者によって保留されています。

                          Photo by @digitalsoul0124 All rights reserved.
問題提起
パッケージ




                              フレームワーク
  Strongest Structure http://www.flickr.com/photos/lorimer-gilman_truss/8082281466/ by Alexander O.D. Lorimer
スクラムとは?
プロダクトバックログ




   どうやって作る?
   Aimee's "HoneyDo" List http://www.flickr.com/photos/mccready/3981209751/ by mccready
出荷も可能な成果物




   どうやって作る?
     package! http://www.flickr.com/photos/halfbisqued/2353845688/ by lemonhalf
エンドユーザーに




  どうやって届ける?
   Green Christmas Stocking http://www.flickr.com/photos/chiropractic/6449449295/ by planetc1
継続的デリバリー
   とは?
コードを  一行だけ変更したとして、
それを

本番にデプロイ
するまで、
どのくらいかかるだろうか?



         3D Character and Question Mark http://www.flickr.com/photos/crystaljingsr/3914729343/ by 姒儿喵喵
一ヶ月?

二週間?

                          一週間?
       Road through black lava http://www.flickr.com/photos/23072179@N00/528371775/ by palestrina55
リリースまでに何がある?

概要設計                          受入テスト



   基本設計                   結合テスト



          詳細設計        単体テスト



                 実装
プロセス                                                                            リリース
          品質指標
                                                            リリースリハ
 リグレッションテスト
                                         受け入れテスト
データ移行     インテグレーションテスト
        結合テスト
   単体テスト

 ユニットテスト

コードレビュー
           Niagara Falls http://www.flickr.com/photos/marionostrum/3560632622/ by Mario Alejandro Sánchez Martínez
チーム

 運用チーム




         ユーザ




開発チーム
リリース
                  cd /xxxx
   pwd
              ls -l

                mv xxx xxx_mmdd



オペレータ
         再監    リリース手順書
信頼でき、
予測可能で、
可視化され、
自動化された
プロセスに

        Car Factory Assembly Line http://www.flickr.com/photos/tobiasmik/2367859809/ by TobiasMik · WhatWeDo
継続的デリバリー
継続的デリバリーの
   ために
象を一頭食べるには
どうしたらいい?




   一度に一口づつ
フィーチャを差し込める
アプリケーションの構造




    アーキテクチャ
分割したものは




統合しなければならない
パフォーマンスチューニング            R               デプロイ不可
                  プレリミナリー
                                                   デプロイ可
    バグフィックスを        リリース
                  新機能        R
     ひとつマージ                                R       リリース
                          再マージ


R     R                   統合ブランチ
            バグフィックスを
                          再マージ
             ひとつマージ

               新モジュール                  R




               新規顧客向けカスタムバージョン                 R
異なるバージョンを管理し




         継続的に
 インテグレーションを行う
       tangles http://www.flickr.com/photos/snigl3t/458809534/ by snigl3t
まとめ
・スクラムは自分たちの文化に合わせて
 適用する必要がある
・継続的デリバリーとは実装された価値を
 スムーズにエンドユーザーに届ける手法
・継続的デリバリーには高度なガバナンスが必要
 「どう分解し、どう統合するか?」
 ・フィーチャを差し込めるアーキテクチャ
 ・バージョン管理と継続的インテグレーション
ありがとうございました!
         Photo by @digitalsoul0124 All rights reserved.

SGT技術トークス 継続的デリバリー