チーム開発、継続的デリバリー、アトラシアン製品の連携に関する再利用可能な資料...
DESCRIPTION
http://re-workstyle.com/articles/modern-team-development-material-for-free/ にて、この資料の pptx をダウンロードできるようにしています。TRANSCRIPT
Atlassian Tools を活用した継続的デリバリー
Tomoharu Nagasawa
Evangelist at Atlassian
再利用可能版
本資料の取り扱いについて
本資料は、フリー素材としてそのままでの利用ならびに、改変しての利用も行っていただくことが可能です。例:
• 社内でのプロセス改善や開発ツール環境の整備の資料として使いたい• 社内でのアトラシアンのツールやサービスの推進に使いたい• 社内外でのアトラシアンのツールやサービスのプレゼンテーションやトレーニング、手順書で使いたい
使用にあたって、許諾、連絡は基本的には、不要ですが、忌憚のないフィードバックをいただけると幸いです。
また、本資料の内容について、アトラシアン株式会社、Atlassian では、問い合わせを受け付けておりませんし、内容については各自の判断での使用をお願いします。いかなる、機能、仕様を保障するものではありません。
本資料について、使用方法や内容について問い合わせが必要な場合は、作成者である長沢智治にご連絡ください。
連絡先:メール: [email protected]: @tomohnFacebook: Tomoharu.Nagasawa
Atlassian Tools を活用した継続的デリバリーの全体像
ビジネス視点:
ソフトウェア開発視点:
開発成果物:
開発ツール: Confluence JIRASourceTree
StashBamboo Bamboo
アイデア ビジネス価値
企画 計画 開発 ビルド デプロイ
企画の醸成 現実的な計画と追跡 DVCS を活用した開発
継続的インテグレーション
継続的デプロイメント
HipChat
チャットと通知
ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
Atlassian Tools を活用した継続的デリバリーの全体像
Atlassian Tools を活用した継続的デリバリーの全体像 | 企画と開発成果物の追跡可能性企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
Confluence
JIRA
企画書内の項目のステータス
課題のステータス
課題のステータス
Atlassian Tools を活用した継続的デリバリーの全体像
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
画面ショットでの手順
作業の流れ
• (自動) バックログ項目の作成
• 新規の課題作成の通知
• 企画書への変更を通知
• 企画書の作成
• 要求項目のバックログ項目化
Atlassian Tools を活用した継続的デリバリー | 要求からの課題 (バックログ項目) の作成
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
Confluence Confluence Confluence JIRA HipChat
Confluence
JIRA
HipChat
Confluence
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
JIRA
• バックログ項目の意思決定
(課題の状態を遷移)
• 課題の状態遷移の通知
JIRA
HipChat
JIRA
JIRA JIRA
HipChat
Atlassian Tools を活用した継続的デリバリー | 課題 (バックログ項目) の意思決定 (状態遷移)
Confluence
• (自動) 課題タグの状態が更新
Confluence
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• [開発パネル] ブランチを作成
• ブランチの作成を通知
• 課題の状態遷移の通知
JIRA
HipChat
Stash
JIRA
JIRA
Atlassian Tools を活用した継続的デリバリー | 課題 (バックログ項目 or サブタスク) のブランチ作成
Stash HipChatJIRA JIRA
• Git ブランチの作成
(Git Flow ベース)
(ブランチ元のビルドの成否を識別)
Stash
• (自動) 課題の状態を遷移
• [開発パネル] Git ブランチ情報
JIRA
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• コミットを通知
HipChat
Stash
Atlassian Tools を活用した継続的デリバリー | 開発作業と完了 (Git checkout, commit, push) と CI
Stash JIRA
• Git チェックアウト
Stash
SourceTree JIRA
HipChat
• 開発と Git コミット&プッシュ
SourceTree
• (自動) Git プッシュを検知
• (自動) CI の実行
Bamboo
• [開発パネル] コミットとビルド結果
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• 課題の状態遷移の通知
• プルリクエスト通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | 依頼
• ブランチを選択
• プルリクエスト作成
JIRA
• レビュー依頼コメント記述
• レビュアーの指定
• コードの内容や CI ビルドの成否など確認
• プルリクエストの作成 (依頼)
Stash
JIRAHipChat
JIRA
Stash
JIRA
JIRA
• (自動) 課題の状態遷移
• [開発パネル] プルリクエスト
JIRA
JIRA
Stash
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• レビュー承認を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | レビュー
• プルリクエストを確認・開く
JIRA
• 課題内容やコード内容を確認
• CI の結果を確認
• コードコメントで議論/レビュー
• 承認
Stash
• [開発パネル] 承認情報が追加
JIRA
Stash
JIRA Stash
HipChat
Stash
Stash
Stash
Stash
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | マージと CI と CD
• プルリクエストからマージ
• (自動) マージを検知し CI 起動
• (自動) ビルド・テストを実施
• (自動) ステージング環境にデプロイ
Bamboo
• [開発パネル] マージ済み
• [開発パネル] ビルド済み
• [開発パネル] デプロイ済み
JIRA
Stash
Bamboo
Stash
Stash JIRA JIRAHipChat
Bamboo
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | ワンクリック デプロイメント
• デプロイメントをキック
• 既存デプロイとの相違の確認
• デプロイ
• (自動) デプロイ実行
Bamboo
• [開発パネル] デプロイ済み
JIRA
Bamboo
Bamboo
JIRABamboo Bamboo
JIRA
HipChat
JIRA
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な計画と追跡
ブランチレビュー
継続的インテグレーション
継続的デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始ブランチ作成
開発実行コミット/プッシュ
課題作成
レビュー/マージプルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | クロージング
• 課題の状態を遷移
• (自動) 企画書の該当箇所のス
テータスが更新
JIRA
Bamboo
Bamboo
JIRA JIRA
HipChat
Confluence
Confluence