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
- 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
- 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
- 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