Más contenido relacionado
チーム開発、継続的デリバリー、アトラシアン製品の連携に関する再利用可能な資料
- 2. 本資料の取り扱いについて
本資料は、「フリー素材」として、そのままでの利用ならびに、改変しての利用も行っていただくことが可能です。
社内でのプロセス改善や開発環境の整備の資料としてまたはその一部として使用したい
社内での開発ツール検討のたたき台として使用したい
社内での Atlassian のツール/サービス (または他のツールなど) の説明や推進に活用したい
社内外での Atlassian のツール/サービス (または他のツールなど) のプレゼンテーションやトレーニング、手順書などで活用したい
その他、各自でコンテンツに対して責任を負う限り、自由に利用できます
クレジットの記載や制限事項について
クレジットの記載は、原則不要です。各自の資料の素材として活用してください。
クレジットを記載する場合は、
長沢智治 (Tomoharu Nagasawa) が作成した資料を活用または、改変していることを明記ください
クレジットの例:
• Source: Tomoharu Nagasawa, http://re-workstyle.com/articles/modern-team-development-material-for-free/
• Source: Tomoharu Nagasawa, re-workstyle.com
• 出典: 長沢智治, re-workstyle.com
• 出典: エバンジェリスト 長沢智治, re-workstyle.com
など、出処と、改変の有無を明記いただければ幸いです。
フィードバックについて
資料ならびに、活動についてのフィードバックを随時受け付けています。
忌憚のないご意見をお聞かせください。例えば、以下のようなものでもいただければ、次のコンテンツや活動に役立たせていただきます。
• 「資料が役に立った」
• 「資料が役に立たなかった。もっと◯◯なものがほしい」
• 「資料の意味がわかりにくかった。もっと◯◯するとわかりやすくなる」
• 「社内資料で使いました」
• 「コミュニティ勉強会で使いました」
• 「上司とチームメンバーへの説明で使いました」
• 「こんなつまらないものを作る時間があるなら、◯◯に力を入れるべき」
お問い合わせについて
本資料は、長沢智治が個人として公開しているものです。したがって、所属するアトラシアン株式会社, Atlassian では本資料についての問い合わせを受け付けておりません。また、内容について
は原則各自利用する方の判断と責任のもとでお願いします。当然、アトラシアン製品/サービスについてのいかなる機能・性能・仕様を本資料で保証するものではありません。
本資料についての使用方法や内容に対するお問い合わせ、本資料をベースとした勉強会での講師依頼などは、作成者である長沢智治にお気軽にご連絡ください。
連絡先:
メール: nagasawa@outlook.com
Twitter: @tnagasawa
Facebook: Tomoharu.Nagasawa
- 5. ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian)
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
要求項目のバックログ化
目的ごとのブランチ作成
ブランチの通知
コミットの通知
目的ブランチでの CI
プルリクエストによるレビューと
master での CI
CI 結果に応じたデプロイ
CI 結果の通知
デプロイ結果の通知
分岐元ブランチの CI 結果の通知
- 6. ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
GitHub
Jenkins
Bamboo
Slack状況の通知
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian + Others の例)
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
👇
- 7. Atlassian Tools を活用した継続的デリバリーの全体像 | 企画と開発成果物の追跡可能性
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
Confluence
JIRA
企画書内の項目の
ステータス
課題のステータス
課題のステータス
- 8. Atlassian Tools を活用した継続的デリバリーの全体像
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
画面ショットでの手順
作業の流れ
- 9. • (自動) バックログ項目の作成
• 新規の課題作成の通知
• 企画書への変更を通知
• 企画書の作成
• 要求項目のバックログ項目化
Atlassian Tools を活用した継続的デリバリー | 要求からの課題 (バックログ項目) の作成
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
Confluence Confluence Confluence JIRA HipChat
Confluence
JIRA
HipChat
Confluence
JIRA
- 10. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
JIRA
• バックログ項目の意思決定
(課題の状態を遷移)
• 課題の状態遷移の通知
JIRA
HipChat
JIRA
JIRA JIRA
HipChat
Atlassian Tools を活用した継続的デリバリー | 課題 (バックログ項目) の意思決定 (状態遷移)
Confluence
• (自動) 課題タグの状態が更新
Confluence
- 11. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
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
- 12. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
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
- 13. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• 課題の状態遷移の通知
• プルリクエスト通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | 依頼
• ブランチを選択
• プルリクエスト作成
JIRA
• レビュー依頼コメント記述
• レビュアーの指定
• コードの内容や CI ビルドの成否など確認
• プルリクエストの作成 (依頼)
Stash
JIRA
HipChat
JIRA
Stash
JIRA
JIRA
• (自動) 課題の状態遷移
• [開発パネル] プルリクエスト
JIRA
JIRA
Stash
- 14. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• レビュー承認を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | レビュー
• プルリクエストを確認・開く
JIRA
• 課題内容やコード内容を確認
• CI の結果を確認
• コードコメントで議論/レビュー
• 承認
Stash
• [開発パネル] 承認情報が追加
JIRA
Stash
JIRA Stash
HipChat
Stash
Stash
Stash
Stash
- 15. 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | コードレビュー (プルリクエスト) | マージと CI と CD
• プルリクエストからマージ
• (自動) マージを検知し CI 起動
• (自動) ビルド・テストを実施
• (自動) ステージング環境にデプロイ
Bamboo
• [開発パネル] マージ済み
• [開発パネル] ビルド済み
• [開発パネル] デプロイ済み
JIRA
Stash
Bamboo
Stash
Stash JIRA JIRA
HipChat
Bamboo
- 16. JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | ワンクリック デプロイメント
• デプロイメントをキック
• 既存デプロイとの相違の確認
• デプロイ
• (自動) デプロイ実行
Bamboo
• [開発パネル] デプロイ済み
JIRA
Bamboo
Bamboo
JIRA
Bamboo Bamboo
JIRA
HipChat
JIRA
- 17. JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | クロージング
• 課題の状態を遷移
• (自動) 企画書の該当箇所のス
テータスが更新
JIRA
Bamboo
Bamboo
JIRA JIRA
HipChat
Confluence
Confluence
- 18. チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian) + eXtreme
ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
要求項目のバックログ化
目的ごとのブランチ作成
ブランチの通知
コミットの通知
目的ブランチでの CI
プルリクエストによるレビューと
master での CI
CI 結果に応じたデプロイ
CI 結果の通知
デプロイ結果の通知
分岐元ブランチの CI 結果の通知
XFD ♪ ♪ ♪
モチベーション向上 警告 / 能動的な通知
チャットからの
自動実行
チャットからの
自動実行
チャットからの
状況把握