SlideShare a Scribd company logo
1 of 18
Download to read offline
モダンなチーム開発を支える
ツールチェーンによる
継続的デリバリー基盤
Tomoharu Nagasawa
Evangelist at Atlassian
再利用可能版
本資料の取り扱いについて
本資料は、「フリー素材」として、そのままでの利用ならびに、改変しての利用も行っていただくことが可能です。
 社内でのプロセス改善や開発環境の整備の資料としてまたはその一部として使用したい
 社内での開発ツール検討のたたき台として使用したい
 社内での 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
チーム開発のツールチェーンを活用した継続的デリバリーの全体像
ビジネス視点:
ソフトウェア開発視点:
開発成果物:
開発ツール: 要求管理 プロジェクト管理
DVCS Client
DVCS
CI / 自動ビルド 自動デプロイ
アイデア ビジネス価値
企画 計画 開発 ビルド デプロイ
企画の醸成 現実的な計画と追跡 DVCS を活用した
開発
継続的
インテグレーション
継続的
デプロイメント
通知システム
チャットと通知
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian)
ビジネス視点:
ソフトウェア開発視点:
開発成果物:
開発ツール: Confluence JIRA
SourceTree
Stash
Bamboo Bamboo
アイデア ビジネス価値
企画 計画 開発 ビルド デプロイ
企画の醸成 現実的な計画と追跡 DVCS を活用した
開発
継続的
インテグレーション
継続的
デプロイメント
HipChat
チャットと通知
ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian)
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
要求項目のバックログ化
目的ごとのブランチ作成
ブランチの通知
コミットの通知
目的ブランチでの CI
プルリクエストによるレビューと
master での CI
CI 結果に応じたデプロイ
CI 結果の通知
デプロイ結果の通知
分岐元ブランチの CI 結果の通知
ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
GitHub
Jenkins
Bamboo
Slack状況の通知
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian + Others の例)
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
👇
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
JIRA
HipChat
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 JIRA
HipChat
Bamboo
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | ワンクリック デプロイメント
• デプロイメントをキック
• 既存デプロイとの相違の確認
• デプロイ
• (自動) デプロイ実行
Bamboo
• [開発パネル] デプロイ済み
JIRA
Bamboo
Bamboo
JIRA
Bamboo Bamboo
JIRA
HipChat
JIRA
JIRA
企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
実施決定
開発開始
ブランチ作成
開発実行
コミット/プッシュ
課題作成
レビュー/マージ
プルリクエスト
ビルド (CI)
デプロイ
• ビルド結果を通知
• デプロイ結果を通知
HipChat
Atlassian Tools を活用した継続的デリバリー | クロージング
• 課題の状態を遷移
• (自動) 企画書の該当箇所のス
テータスが更新
JIRA
Bamboo
Bamboo
JIRA JIRA
HipChat
Confluence
Confluence
チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian) + eXtreme
ソフトウェア開発視点: 企画 計画 開発 ビルド デプロイ
企画の醸成
現実的な
計画と追跡
ブランチ
レビュー
継続的
インテグレーション
継続的
デプロイメント
Confluence
JIRA
Stash
Bamboo
Bamboo
HipChat状況の通知
通知 / レポート
凡例
手順や処理の流れ
アクション
通知
要求項目のバックログ化
目的ごとのブランチ作成
ブランチの通知
コミットの通知
目的ブランチでの CI
プルリクエストによるレビューと
master での CI
CI 結果に応じたデプロイ
CI 結果の通知
デプロイ結果の通知
分岐元ブランチの CI 結果の通知
XFD ♪ ♪ ♪
モチベーション向上 警告 / 能動的な通知
チャットからの
自動実行
チャットからの
自動実行
チャットからの
状況把握

More Related Content

More from 智治 長沢

誰でもできるプレゼン講座
誰でもできるプレゼン講座誰でもできるプレゼン講座
誰でもできるプレゼン講座智治 長沢
 
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo智治 長沢
 
スクラム概要とチーム開発環境の要点
スクラム概要とチーム開発環境の要点スクラム概要とチーム開発環境の要点
スクラム概要とチーム開発環境の要点智治 長沢
 
複雑さに挑む!カンバンによるプロジェクト マネジメント
複雑さに挑む!カンバンによるプロジェクト マネジメント複雑さに挑む!カンバンによるプロジェクト マネジメント
複雑さに挑む!カンバンによるプロジェクト マネジメント智治 長沢
 
プレゼン基礎講座 2016.11
プレゼン基礎講座 2016.11プレゼン基礎講座 2016.11
プレゼン基礎講座 2016.11智治 長沢
 
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98智治 長沢
 
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6智治 長沢
 
モダンな開発現場になるためのお作法としてのツール活用
モダンな開発現場になるためのお作法としてのツール活用モダンな開発現場になるためのお作法としてのツール活用
モダンな開発現場になるためのお作法としてのツール活用智治 長沢
 
Evangelist Journey 2015
Evangelist Journey 2015Evangelist Journey 2015
Evangelist Journey 2015智治 長沢
 
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援智治 長沢
 
Business value pipeline with atlassian products
Business value pipeline with atlassian productsBusiness value pipeline with atlassian products
Business value pipeline with atlassian products智治 長沢
 
継続的デリバリーを支える開発環境
継続的デリバリーを支える開発環境継続的デリバリーを支える開発環境
継続的デリバリーを支える開発環境智治 長沢
 
AiiT enPiT ビジネスアプリケーションセミナー資料
AiiT enPiT ビジネスアプリケーションセミナー資料AiiT enPiT ビジネスアプリケーションセミナー資料
AiiT enPiT ビジネスアプリケーションセミナー資料智治 長沢
 
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsakaビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka智治 長沢
 
DevOps時代の開発環境と現場体験 [#cmdevio2015]
DevOps時代の開発環境と現場体験 [#cmdevio2015]DevOps時代の開発環境と現場体験 [#cmdevio2015]
DevOps時代の開発環境と現場体験 [#cmdevio2015]智治 長沢
 
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]ワークスタイルを変革する情報基盤 [ITpro EXPO A651]
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]智治 長沢
 
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk  JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk 智治 長沢
 
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi 企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi 智治 長沢
 
これからの開発現場が持つべき最低限の開発フロー #hokunet
これからの開発現場が持つべき最低限の開発フロー #hokunet これからの開発現場が持つべき最低限の開発フロー #hokunet
これからの開発現場が持つべき最低限の開発フロー #hokunet 智治 長沢
 
Going Right! Software Delivery with Atlassian Solution
Going Right! Software Delivery with Atlassian SolutionGoing Right! Software Delivery with Atlassian Solution
Going Right! Software Delivery with Atlassian Solution智治 長沢
 

More from 智治 長沢 (20)

誰でもできるプレゼン講座
誰でもできるプレゼン講座誰でもできるプレゼン講座
誰でもできるプレゼン講座
 
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo
【基調講演】 あなたの欲しいのは DevOps ですか?それともビジネスの成功ですか? #devopsdaystokyo
 
スクラム概要とチーム開発環境の要点
スクラム概要とチーム開発環境の要点スクラム概要とチーム開発環境の要点
スクラム概要とチーム開発環境の要点
 
複雑さに挑む!カンバンによるプロジェクト マネジメント
複雑さに挑む!カンバンによるプロジェクト マネジメント複雑さに挑む!カンバンによるプロジェクト マネジメント
複雑さに挑む!カンバンによるプロジェクト マネジメント
 
プレゼン基礎講座 2016.11
プレゼン基礎講座 2016.11プレゼン基礎講座 2016.11
プレゼン基礎講座 2016.11
 
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98
これだけ DevOps - Sapporo ComCamp 2016 #JCCMVP #clrh98
 
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6
ビジネス駆動開発からソフトウェア駆動ビジネスへ #devsumiB 19-B-6
 
モダンな開発現場になるためのお作法としてのツール活用
モダンな開発現場になるためのお作法としてのツール活用モダンな開発現場になるためのお作法としてのツール活用
モダンな開発現場になるためのお作法としてのツール活用
 
Evangelist Journey 2015
Evangelist Journey 2015Evangelist Journey 2015
Evangelist Journey 2015
 
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
アジャイル実践における開発環境の変化〜要求の捉え方、プロジェクト運営、ツール支援
 
Business value pipeline with atlassian products
Business value pipeline with atlassian productsBusiness value pipeline with atlassian products
Business value pipeline with atlassian products
 
継続的デリバリーを支える開発環境
継続的デリバリーを支える開発環境継続的デリバリーを支える開発環境
継続的デリバリーを支える開発環境
 
AiiT enPiT ビジネスアプリケーションセミナー資料
AiiT enPiT ビジネスアプリケーションセミナー資料AiiT enPiT ビジネスアプリケーションセミナー資料
AiiT enPiT ビジネスアプリケーションセミナー資料
 
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsakaビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
 
DevOps時代の開発環境と現場体験 [#cmdevio2015]
DevOps時代の開発環境と現場体験 [#cmdevio2015]DevOps時代の開発環境と現場体験 [#cmdevio2015]
DevOps時代の開発環境と現場体験 [#cmdevio2015]
 
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]ワークスタイルを変革する情報基盤 [ITpro EXPO A651]
ワークスタイルを変革する情報基盤 [ITpro EXPO A651]
 
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk  JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
JIRA collaboration without walls [JIRAが引き出す現場力] #JiraServiceDesk
 
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi 企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi
企画-計画-開発-ビルド-デプロイ 価値のパイプラインできてますか?【字幕つき】 #kansumiA2 #devsumi
 
これからの開発現場が持つべき最低限の開発フロー #hokunet
これからの開発現場が持つべき最低限の開発フロー #hokunet これからの開発現場が持つべき最低限の開発フロー #hokunet
これからの開発現場が持つべき最低限の開発フロー #hokunet
 
Going Right! Software Delivery with Atlassian Solution
Going Right! Software Delivery with Atlassian SolutionGoing Right! Software Delivery with Atlassian Solution
Going Right! Software Delivery with Atlassian Solution
 

チーム開発、継続的デリバリー、アトラシアン製品の連携に関する再利用可能な資料

  • 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
  • 3. チーム開発のツールチェーンを活用した継続的デリバリーの全体像 ビジネス視点: ソフトウェア開発視点: 開発成果物: 開発ツール: 要求管理 プロジェクト管理 DVCS Client DVCS CI / 自動ビルド 自動デプロイ アイデア ビジネス価値 企画 計画 開発 ビルド デプロイ 企画の醸成 現実的な計画と追跡 DVCS を活用した 開発 継続的 インテグレーション 継続的 デプロイメント 通知システム チャットと通知
  • 4. チーム開発のツールチェーンを活用した継続的デリバリーの全体像 (Atlassian) ビジネス視点: ソフトウェア開発視点: 開発成果物: 開発ツール: Confluence JIRA SourceTree Stash Bamboo Bamboo アイデア ビジネス価値 企画 計画 開発 ビルド デプロイ 企画の醸成 現実的な計画と追跡 DVCS を活用した 開発 継続的 インテグレーション 継続的 デプロイメント HipChat チャットと通知
  • 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 ♪ ♪ ♪ モチベーション向上 警告 / 能動的な通知 チャットからの 自動実行 チャットからの 自動実行 チャットからの 状況把握