狠狠撸

狠狠撸Share a Scribd company logo
第2回罢贵厂ユーザーズ勉强会
                                               ALMを見通した技術?ツール




                                                           2011年12月10日
                                                          株式会社NTTデータ
(その他、記載されている会社名、商品名、又はサービス名は、各社の登録商標又は商標です。)    技術开発本部 ?ALMソリューションセンタ
自己紹介

u??名前          : ?和田 貴久
u??Twitter ?ID : ?@wadatka
u??所属          : ?NTTDATA


u??今の仕事 :
        u??社内向けの开発支援ツールの开発
                     u??Trac, ?Subversion, ?Jenkinsなど
        u??开発支援ツールの導入?普及活動


u??その他の活動
        u??「Jenkins実践入門」を執筆しました。
        u??ちなみに担当は、9章以降

 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION             2
参加目的

u?? ↓について、調査や情報収集してしたい!!
      u?? 「DevOps」や「Continuous ?Integration」や「Continuous ?Delivery」に対す
          る取り組み
      u?? TFSを活用した上記の事例や利用ポイント
      u?? TFSを使ってのAgile开発の実践方法




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                               3
ALM ?Summit ?キーワード



   Team Foundation Server                          User Experience
                 DevOps                                      Burndown chart
                                             Visual Studio
                                                             Cloud
               Product Backlog

 Con$nuous	
 ?Delivery
                                                     Agile
                       ALM
                                                               Contentious ?Questions
                      Scrum
                                                 Continuous Feedback
         Retrospectives
                                                  Sprint planning
                       Kanban Contentious Integration
Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                              4
DevOps

◆ DevOps
  ◆ ソフトウェア?システムなどの开発から运用まで壁をなくし統合的に、コミュニケーシ
  ョン、コラボレーションを行うことで、より高いビジネス価値を生み出すこと。
  ◆ また、これを実現するための一連の考え方やシステムのこと。


                                             DevOps
                         Development                  Operation

    ◆ DevOpsを実践するためのプラクティスとして、「 ?Continuous ?Delivery ?」
    「 ?Continuous ?Feedback ?」などがある。




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                        5
Continuous ?Delivery


Continuous ?Delivery ?とは
??日単位や時間単位でユーザにソフトウェアやプロダクトを提供し続けること
なにがうれしいの?
??新しいアイディアがユーザや运用に受け入れられるかを速いサイクルで試みることができる
??絶えずフィードバックをとり、ユーザも含めた改善プロセスを実施することができる

Continuous ?Delivery ?は、プロダクトやサービスを継続的かつスピーディに提供し続けるため
、新たなビジネスチャンスや価値を生み出す機会を作りだすことができる。
                                                        Daily ?Scrum
                                                          meeting

                                                                              1 ?day

                                                                         Cycles

                                                                       2-4 ?weeks
         Product                               Sprint                                    Product ?increment
         backlog                              backlog                                  (Potentially ?shippable)
 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                                       6
Continuous ?Integration


Continuous ?Integrationとは
??1日に何度もビルドを実行し、ソフトウェアをインテグレーションしたときに発生する様々な
早期検出し、フィードバックサイクルを短くしてソフトウェア开発の品質と生産性を向上させ
る仕組み
なにがうれしいの?
??手戻りを減らして品質を維持できる
??いつでも誰でもどこでも実行可能なソフトウェアを作成できる

                                                       Daily ?Scrum                   Build
                                                         meeting                      Test
                                                                             1 ?day

                                                                        Cycles

                                                                      2-4 ?weeks
        Product                               Sprint                                            Product ?increment
        backlog                              backlog                                          (Potentially ?shippable)

Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                                               7
Continuous ?Feedback


         Continuous ?Feedbackは、プロダクトやサービスの开発?运用フェーズを問わず
         、プロダクトのモニタリングや活動のモニタリングの結果を开発項目などとして
         开発サイクルにフィードバックすること。

         ??Feedback ?on ?Design ?(Storyboard)
         ??Feedback ?on ?Priorities ?(Backlog)
         ??Feedback ?on ?Usability
         ??Feedback ?on ?Code ?(Code ?Review, ?Unit ?Tests)
         ??Feedback ?on ?Builds ?(Continuous ?Integration/Exploratory ?Testing)
         ??Feedback ?on ?Working ?Software ?(Feedback ?Manager)
         ??Feedback ?on ?Deployed ?Software ?(PreEmptive)




                                             Product    Product ?backlog
Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                        8
DevOpsとAgile

 Agile开発                                     Daily ?Scrum
                                               meeting
                                                                  1 ?day

                                                             Cycles

                                                            2-4 ?weeks
 Product                           Sprint                                    Product ?increment
 backlog                          backlog                                  (Potentially ?shippable)




           従来のAgile开発のサイクルに
           运用サイクルを統合し、相互に
           リリース?フィードバックを実践




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                            9
ALM ?Integration ?Tools




                                                …




                                                    …


                                                        …
Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                  10
Application ?Lifecycle



                                                                  Diagnosing ?Issues ?in ?
                                                                  Production




                                                      Daily

       开発                                    Sprint           Monitor            运用




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                   11
スプリント计画




                                                      Daily

       开発                                    Sprint           Monitor   运用




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                   12
プロダクトバックログ管理

◆ プロダクトバックログの管理
  ◆ Team ?Web ?Access(Share ?Point, ?TFS) ?& ?PPT( ?Storyboarding ?)
  ◆ 文字だけではなくビジュアル化された情報をRequirementにリンク



                                              Requrementとドキュメントがリンク




 デザインドキュメントをWebで管理
                                                                  Requrementとリンク作成




 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                          13
プロダクトバックログ作成



                                                          Storyboarding
                                   Share ?Point




                                                  Requirement




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                14
スプリント计画

◆ スプリント计画
  ◆ タスク、リソース、期間、優先度、進捗を一元管理
                             スプリント计画(Product ?Backlog)




                                                         メンバーとチームのキャパシティ(CAPACITY)




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                           15
开発




                                                      Daily

       开発                                    Sprint           Monitor   运用




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                   16
タスク管理

◆ Tracking ?Progress                                         タスクの共有(Task ?Board)
  ◆ 日々のタスク状況の更新
  ◆ チームのタスク消化状況の共有

                          タスク確認、作業ログ( ?Visual ?Studio)




                                                         タスク消化状況確認( ?Burndown ?Chart ?)




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                17
Exploratory ?Testing

Test ?Manager




                                        Exploratory ?Testing

                                                               Web ?Browser




 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                   18
バグ登録


                                             New ?Bug




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION              19
Continuous ?Integration

◆ ビルドとテスト
  ◆ コミット単位、あるいは日次など一定周期での自動ビルド?自動テストを実施
  ◆ 継続的に短いサイクルで実施することでバグ発生時の対処が容易に!




                                         Lab ?Center   Testing ?Center




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                               20
运用



                                                                  Diagnosing ?Issues ?in ?
                                                                  Production




                                                      Daily

       开発                                    Sprint           Monitor            运用




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                   21
Diagnosing ?Issues ?in ?Production

◆ Diagnosing ?Issues ?in ?Production
  ◆ IntelliTraceのPowerShellコマンド利用してエラーデータを収集
  ◆ トレース情報からのデバッグでエラー箇所の特定が容易

          Web ?Browser




                                              エラー発生
                                                                   エラー発生時のトレース情報を収集
                                                      PowerShell




 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                           22
Debugging ?with ?IntelliTrace ?Files

   IntelliTrace ?Files




                                                             Visual ?Studio




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                    23
Continuous ?Feedback

◆ Continuous ?Feedback
  ◆ 运用時で新規开発?拡張機能になる情報をプロダクトバックログとして常に開
  発フェーズに提供する。




Feedback ?Manager
开発要件として、フィードバックする
情報を作成、投入可能
? ?概要
? ?操作?手順
? ?キャプチャ




 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION   24
DevOps



                                                                  Diagnosing ?Issues ?in ?
                                                                  Production




                                                      Daily

       开発                                    Sprint           Monitor            运用




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                                   25
Continuous ?Delivery




                                                       Daily

        开発                                    Sprint           Monitor   运用

? ?パッケージソフト
  ? ?バイナリパッケージの公開
? ?Webサービス
  ? ?Cloud上へのデプロイ
  ? ?ホストマシンへのデプロイ

Continuous ?Delivery

 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION                                   26
まとめ


         ?? ソフトウェア?システム开発のフォーカス範囲が开発サ
            イクルから运用を含めたサイクルへ拡大
         ?? 运用?开発の統合のためには、考え方などの文化と
            実現するためのツールの両方が不可欠
         ?? 次期Team ?Foundation ?Serverは、运用までをカバー
            するソフトウェアのライフサイクル全体を見通した機能
            を追加




Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION         27
Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION

More Related Content

TFSUG 2 technique

  • 1. 第2回罢贵厂ユーザーズ勉强会 ALMを見通した技術?ツール 2011年12月10日 株式会社NTTデータ (その他、記載されている会社名、商品名、又はサービス名は、各社の登録商標又は商標です。) 技術开発本部 ?ALMソリューションセンタ
  • 2. 自己紹介 u??名前 : ?和田 貴久 u??Twitter ?ID : ?@wadatka u??所属 : ?NTTDATA u??今の仕事 : u??社内向けの开発支援ツールの开発 u??Trac, ?Subversion, ?Jenkinsなど u??开発支援ツールの導入?普及活動 u??その他の活動 u??「Jenkins実践入門」を執筆しました。 u??ちなみに担当は、9章以降 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 2
  • 3. 参加目的 u?? ↓について、調査や情報収集してしたい!! u?? 「DevOps」や「Continuous ?Integration」や「Continuous ?Delivery」に対す る取り組み u?? TFSを活用した上記の事例や利用ポイント u?? TFSを使ってのAgile开発の実践方法 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 3
  • 4. ALM ?Summit ?キーワード Team Foundation Server User Experience DevOps Burndown chart Visual Studio Cloud Product Backlog Con$nuous ?Delivery Agile ALM Contentious ?Questions Scrum Continuous Feedback Retrospectives Sprint planning Kanban Contentious Integration Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 4
  • 5. DevOps ◆ DevOps ◆ ソフトウェア?システムなどの开発から运用まで壁をなくし統合的に、コミュニケーシ ョン、コラボレーションを行うことで、より高いビジネス価値を生み出すこと。 ◆ また、これを実現するための一連の考え方やシステムのこと。 DevOps Development Operation ◆ DevOpsを実践するためのプラクティスとして、「 ?Continuous ?Delivery ?」 「 ?Continuous ?Feedback ?」などがある。 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 5
  • 6. Continuous ?Delivery Continuous ?Delivery ?とは ??日単位や時間単位でユーザにソフトウェアやプロダクトを提供し続けること なにがうれしいの? ??新しいアイディアがユーザや运用に受け入れられるかを速いサイクルで試みることができる ??絶えずフィードバックをとり、ユーザも含めた改善プロセスを実施することができる Continuous ?Delivery ?は、プロダクトやサービスを継続的かつスピーディに提供し続けるため 、新たなビジネスチャンスや価値を生み出す機会を作りだすことができる。 Daily ?Scrum meeting 1 ?day Cycles 2-4 ?weeks Product Sprint Product ?increment backlog backlog (Potentially ?shippable) Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 6
  • 8. Continuous ?Feedback Continuous ?Feedbackは、プロダクトやサービスの开発?运用フェーズを問わず 、プロダクトのモニタリングや活動のモニタリングの結果を开発項目などとして 开発サイクルにフィードバックすること。 ??Feedback ?on ?Design ?(Storyboard) ??Feedback ?on ?Priorities ?(Backlog) ??Feedback ?on ?Usability ??Feedback ?on ?Code ?(Code ?Review, ?Unit ?Tests) ??Feedback ?on ?Builds ?(Continuous ?Integration/Exploratory ?Testing) ??Feedback ?on ?Working ?Software ?(Feedback ?Manager) ??Feedback ?on ?Deployed ?Software ?(PreEmptive) Product Product ?backlog Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 8
  • 9. DevOpsとAgile Agile开発 Daily ?Scrum meeting 1 ?day Cycles 2-4 ?weeks Product Sprint Product ?increment backlog backlog (Potentially ?shippable) 従来のAgile开発のサイクルに 运用サイクルを統合し、相互に リリース?フィードバックを実践 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 9
  • 10. ALM ?Integration ?Tools … … … Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 10
  • 11. Application ?Lifecycle Diagnosing ?Issues ?in ? Production Daily 开発 Sprint Monitor 运用 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 11
  • 12. スプリント计画 Daily 开発 Sprint Monitor 运用 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 12
  • 13. プロダクトバックログ管理 ◆ プロダクトバックログの管理 ◆ Team ?Web ?Access(Share ?Point, ?TFS) ?& ?PPT( ?Storyboarding ?) ◆ 文字だけではなくビジュアル化された情報をRequirementにリンク Requrementとドキュメントがリンク デザインドキュメントをWebで管理 Requrementとリンク作成 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 13
  • 14. プロダクトバックログ作成 Storyboarding Share ?Point Requirement Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 14
  • 15. スプリント计画 ◆ スプリント计画 ◆ タスク、リソース、期間、優先度、進捗を一元管理 スプリント计画(Product ?Backlog) メンバーとチームのキャパシティ(CAPACITY) Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 15
  • 16. 开発 Daily 开発 Sprint Monitor 运用 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 16
  • 17. タスク管理 ◆ Tracking ?Progress タスクの共有(Task ?Board) ◆ 日々のタスク状況の更新 ◆ チームのタスク消化状況の共有 タスク確認、作業ログ( ?Visual ?Studio) タスク消化状況確認( ?Burndown ?Chart ?) Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 17
  • 18. Exploratory ?Testing Test ?Manager Exploratory ?Testing Web ?Browser Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 18
  • 19. バグ登録 New ?Bug Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 19
  • 20. Continuous ?Integration ◆ ビルドとテスト ◆ コミット単位、あるいは日次など一定周期での自動ビルド?自動テストを実施 ◆ 継続的に短いサイクルで実施することでバグ発生時の対処が容易に! Lab ?Center Testing ?Center Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 20
  • 21. 运用 Diagnosing ?Issues ?in ? Production Daily 开発 Sprint Monitor 运用 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 21
  • 22. Diagnosing ?Issues ?in ?Production ◆ Diagnosing ?Issues ?in ?Production ◆ IntelliTraceのPowerShellコマンド利用してエラーデータを収集 ◆ トレース情報からのデバッグでエラー箇所の特定が容易 Web ?Browser エラー発生 エラー発生時のトレース情報を収集 PowerShell Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 22
  • 23. Debugging ?with ?IntelliTrace ?Files IntelliTrace ?Files Visual ?Studio Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 23
  • 24. Continuous ?Feedback ◆ Continuous ?Feedback ◆ 运用時で新規开発?拡張機能になる情報をプロダクトバックログとして常に開 発フェーズに提供する。 Feedback ?Manager 开発要件として、フィードバックする 情報を作成、投入可能 ? ?概要 ? ?操作?手順 ? ?キャプチャ Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 24
  • 25. DevOps Diagnosing ?Issues ?in ? Production Daily 开発 Sprint Monitor 运用 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 25
  • 26. Continuous ?Delivery Daily 开発 Sprint Monitor 运用 ? ?パッケージソフト   ? ?バイナリパッケージの公開 ? ?Webサービス   ? ?Cloud上へのデプロイ   ? ?ホストマシンへのデプロイ Continuous ?Delivery Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 26
  • 27. まとめ ?? ソフトウェア?システム开発のフォーカス範囲が开発サ イクルから运用を含めたサイクルへ拡大 ?? 运用?开発の統合のためには、考え方などの文化と 実現するためのツールの両方が不可欠 ?? 次期Team ?Foundation ?Serverは、运用までをカバー するソフトウェアのライフサイクル全体を見通した機能 を追加 Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION 27
  • 28. Copyright ?? ?2011 ?NTT ?DATA ?CORPORATION