Submit Search
Upload
Bitbucketを活用したコードレビュー改善事例
•
3 likes
•
5,967 views
K
Kosuke Ito
Follow
2016/9/27 第19回 Tokyo Atlassian ユーザーグループ
Read less
Read more
Technology
Slideshow view
Report
Share
Slideshow view
Report
Share
1 of 37
Download now
Download to read offline
Recommended
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
AWSではじめるMLOps
AWSではじめるMLOps
MariOhbuchi
SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい
真吾 吉田
動画配信の基礎知識
動画配信の基礎知識
Daiyu Hatakeyama
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
Hironobu Isoda
JCBの Payment as a Service 実現にむけたゼロベースの組織変革とテクニカル・イネーブラー(NTTデータ テクノロジーカンファレンス ...
JCBの Payment as a Service 実現にむけたゼロベースの組織変革とテクニカル・イネーブラー(NTTデータ テクノロジーカンファレンス ...
NTT DATA Technology & Innovation
脆弱性管理の自動化への取り組み
脆弱性管理の自動化への取り組み
Takuya Tezuka
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
Preferred Networks
Recommended
DockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga
AWSではじめるMLOps
AWSではじめるMLOps
MariOhbuchi
SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい
真吾 吉田
動画配信の基礎知識
動画配信の基礎知識
Daiyu Hatakeyama
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
オンライン広告入札システムとZGC ( JJUG CCC 2021 Spring )
Hironobu Isoda
JCBの Payment as a Service 実現にむけたゼロベースの組織変革とテクニカル・イネーブラー(NTTデータ テクノロジーカンファレンス ...
JCBの Payment as a Service 実現にむけたゼロベースの組織変革とテクニカル・イネーブラー(NTTデータ テクノロジーカンファレンス ...
NTT DATA Technology & Innovation
脆弱性管理の自動化への取り組み
脆弱性管理の自動化への取り組み
Takuya Tezuka
Kubernetesによる機械学習基盤への挑戦
Kubernetesによる機械学習基盤への挑戦
Preferred Networks
MLOps入門
MLOps入門
Hiro Mura
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
Docker超入門
Docker超入門
VirtualTech Japan Inc.
DatadogでAWS監視やってみた
DatadogでAWS監視やってみた
tyamane
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
Dockerイメージの理解とコンテナのライフサイクル
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
Shuyo Nakatani
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話
NipponAlgorithm
Docker入門 - 基礎編 いまから始めるDocker管理
Docker入門 - 基礎編 いまから始めるDocker管理
Masahito Zembutsu
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造
Etsuji Nakai
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
Tomohiro Nakashima
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Agile開発でのテストのやり方~私の場合~
Agile開発でのテストのやり方~私の場合~
Mineo Matsuya
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発
政雄 金森
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
マジセミ by (株)オープンソース活用研究所
More Related Content
What's hot
MLOps入門
MLOps入門
Hiro Mura
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
Docker超入門
Docker超入門
VirtualTech Japan Inc.
DatadogでAWS監視やってみた
DatadogでAWS監視やってみた
tyamane
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
Dockerイメージの理解とコンテナのライフサイクル
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
Shuyo Nakatani
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話
NipponAlgorithm
Docker入門 - 基礎編 いまから始めるDocker管理
Docker入門 - 基礎編 いまから始めるDocker管理
Masahito Zembutsu
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造
Etsuji Nakai
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
Tomohiro Nakashima
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Agile開発でのテストのやり方~私の場合~
Agile開発でのテストのやり方~私の場合~
Mineo Matsuya
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
NTT DATA Technology & Innovation
What's hot
(20)
MLOps入門
MLOps入門
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Docker超入門
Docker超入門
DatadogでAWS監視やってみた
DatadogでAWS監視やってみた
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
Dockerイメージの理解とコンテナのライフサイクル
Dockerイメージの理解とコンテナのライフサイクル
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
画像をテキストで検索したい!(OpenAI CLIP) - VRC-LT #15
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
DockerとPodmanの比較
DockerとPodmanの比較
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
FastAPIのテンプレートプロジェクトがいい感じだった話
FastAPIのテンプレートプロジェクトがいい感じだった話
Docker入門 - 基礎編 いまから始めるDocker管理
Docker入門 - 基礎編 いまから始めるDocker管理
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
広く知ってほしいDNSのこと ―とあるセキュリティ屋から見たDNS受難の10年間―
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
Agile開発でのテストのやり方~私の場合~
Agile開発でのテストのやり方~私の場合~
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
乗っ取れコンテナ!!開発者から見たコンテナセキュリティの考え方(CloudNative Days Tokyo 2021 発表資料)
Similar to Bitbucketを活用したコードレビュー改善事例
ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発
政雄 金森
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
マジセミ by (株)オープンソース活用研究所
継続的デリバリーとサービス仮想化で変わる、エンタープライズアジャイル開発
継続的デリバリーとサービス仮想化で変わる、エンタープライズアジャイル開発
Takashi Watanabe
OSSではじめるオープン・スタンダードのクラウド @201304
OSSではじめるオープン・スタンダードのクラウド @201304
Shinichiro Arai
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
Amazon Web Services Japan
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
Amazon Web Services Japan
企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーション
Osaka University
ERPのデータをフロントシステムでどう活かすか
ERPのデータをフロントシステムでどう活かすか
Ryuji Enoki
20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは? by 株式会社インサイトテクノロジー 益秀樹
20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは? by 株式会社インサイトテクノロジー 益秀樹
Insight Technology, Inc.
Cloud Native市場動向およびRancher Labsが提供するKubernetes Everywhere戦略について
Cloud Native市場動向およびRancher Labsが提供するKubernetes Everywhere戦略について
Junji Nishihara
20161111 java one2016-feedback
20161111 java one2016-feedback
Takashi Ito
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
Takahiro Imanaka
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
アトラシアン株式会社
【17-D-6】「ソフトウェアの収益増大のためのセキュリティソリューション」小池康幸氏
【17-D-6】「ソフトウェアの収益増大のためのセキュリティソリューション」小池康幸氏
Developers Summit
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
Amazon Web Services Japan
Okinawa Open Daysでの講演(OpenStackトレーニングなど)
Okinawa Open Daysでの講演(OpenStackトレーニングなど)
Satoshi Konno
20131212 morphlabs okinawa_presentation
20131212 morphlabs okinawa_presentation
saktomshu
いまさら聞けない Amazon EC2
いまさら聞けない Amazon EC2
Yasuhiro Matsuo
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティス
Amazon Web Services Japan
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev ops
裕貴 荒井
Similar to Bitbucketを活用したコードレビュー改善事例
(20)
ハイブリットクラウド環境におけるモダンアプリケーション開発
ハイブリットクラウド環境におけるモダンアプリケーション開発
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
継続的デリバリーとサービス仮想化で変わる、エンタープライズアジャイル開発
継続的デリバリーとサービス仮想化で変わる、エンタープライズアジャイル開発
OSSではじめるオープン・スタンダードのクラウド @201304
OSSではじめるオープン・スタンダードのクラウド @201304
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
AWS における Microservices Architecture と DevOps を推進する組織と人とツール
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーション
ERPのデータをフロントシステムでどう活かすか
ERPのデータをフロントシステムでどう活かすか
20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは? by 株式会社インサイトテクノロジー 益秀樹
20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは? by 株式会社インサイトテクノロジー 益秀樹
Cloud Native市場動向およびRancher Labsが提供するKubernetes Everywhere戦略について
Cloud Native市場動向およびRancher Labsが提供するKubernetes Everywhere戦略について
20161111 java one2016-feedback
20161111 java one2016-feedback
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
DevOps時代到来!Engine YardのPaaSで変わるシステムの開発と運用のあり方
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
2019年9月18日開催AWS Japan × Atlassianセミナー_セッション2「AmazonカルチャーとDevOps」
【17-D-6】「ソフトウェアの収益増大のためのセキュリティソリューション」小池康幸氏
【17-D-6】「ソフトウェアの収益増大のためのセキュリティソリューション」小池康幸氏
20211109 JAWS-UG SRE keynotes
20211109 JAWS-UG SRE keynotes
Okinawa Open Daysでの講演(OpenStackトレーニングなど)
Okinawa Open Daysでの講演(OpenStackトレーニングなど)
20131212 morphlabs okinawa_presentation
20131212 morphlabs okinawa_presentation
いまさら聞けない Amazon EC2
いまさら聞けない Amazon EC2
AWS Well-Architected Security とベストプラクティス
AWS Well-Architected Security とベストプラクティス
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev ops
Recently uploaded
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Recently uploaded
(10)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Bitbucketを活用したコードレビュー改善事例
1.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by Bitbucket を活用したコードレビュー改善事例 2016/09/27 ウルシステムズ株式会社 伊藤 昂祐
2.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 1 自己紹介 いとう こうすけ 伊藤 昂祐 kosuke.ito@ulsystems.co.jp ウルシステムズ株式会社 https://www.ulsystems.co.jp/ インターネット広告事業会社の開発支援中 社内では、アジャイル推進活動中 認定スクラムマスタ スノボとスープカレーを愛する
3.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 2 アジェンダ 1. プロジェクト紹介とインターネット広告の進歩について 2. Bitbucket を活用したコードレビュー改善事例
4.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 3 プロジェクト紹介とインターネット広告の 進歩について
5.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 4 プロジェクト紹介 クライアント – ソネット・メディア・ネットワークス株式会社様 主な事業内容 – DSP事業 Logicad を提供 RTBを活用した広告配信最適化 機械学習・人工知能を活用したDMPによる広告配信精度の向上 プロジェクト支援概要 – DSP/RTBシステム開発支援 – 使用しているAtlassian製品は Confluence, Jira, Bitbucket
6.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 5 いろいろなインターネット広告 バナー広告 検索連動型 広告 アプリ広告 動画広告 ネイティブ広告
7.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 6 インターネット広告の進歩 Webサイト運営者 広告主 商品を世の中に広めたい 多くの見込み客に広告を出 したい 自社メディア(Webサイト) で収益をあげたい 広告業界における双方の欲求
8.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 7 インターネット広告の進歩 純広告 AD 広告代理店 Webサイト運営者 広告主 広告主が期間・Webサイトを選び、広告を掲載する
9.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 8 インターネット広告の進歩 アドネットワーク 広告代理店 広告主 多数のWebサイト上で広告配信する仕組み Webサイトの特性に合わせたターゲティングも可能 AD AD Webサイト運営者 AD Webサイト運営者 Webサイト運営者 アドネットワーク
10.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 9 インターネット広告の進歩 アドエクスチェンジ 広告代理店 広告主 アドネットワーク同士で広告枠を融通する AD Webサイト運営者 アドネットワーク AD AD AD アドエクスチェンジ アドネットワーク
11.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 10 インターネット広告の進歩 SSP・DSP・RTB 広告代理店 広告主 SSP(Supply Side Platform) – 広告枠の価値を最大化 DSP(Demand Side Platform) – 広告主の利益を最大化 RTB(Real Time Bidding) – リアルタイムで広告の競争入札する仕組み AD Webサイト運営者 アドネットワークAD AD AD AD AD アドエクスチェンジ DSPSSP RTB
12.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 11 RTBの流れ AD ID=XYZ SSP事業者 DSP3 DSP2 DSP1 WebサイトA WebサイトA に、XYZさんが来ました。 誰か広告を出したい方いませんか? 1円 2円 3円 WIN PVから広告表示まで 0.1秒(100ミリ秒)で広告オークショ ンが行われる
13.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 12 インターネット広告の進歩 DMP 広告代理店 広告主 AD Webサイト運営者 アドネットワークAD AD AD AD AD アドエクスチェンジ DSPSSP RTB データマネジメントプラットフォーム オーディエンスデータを蓄積・分析して広告配信に活用 DMP
14.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 13 DSP/RTB事業のシステム開発を行うにあたって 業界は急速に進歩していて、新機能を素早く開発することが 求められている 広告配信は24時間365日行われているため、可用性が高く高 品質なシステムが求められている RTB入札の性能要求が厳しく、継続的な性能改善が求められ る
15.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 14 Bitbucket を活用した コードレビュー改善事例
16.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 15 コードレビューの目的は、ただコードの誤りを修正 するだけではありません。重要なのは、チーム全員 に同じ知識を共有させること、またコーディングに おいて全員が守るべきガイドラインを確立すること です。コードレビューを成功させるために最も有効 な方法は、レビューを楽しいものにすることです。 by Mattias Karlsson 「プログラマが知るべき97のこと」より
17.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 16 プロジェクトの前提 背景 – SVN から Git へ移行を行い、その後の運用についての話です リポジトリ管理 – Bitbucket(Git) を使用 チーム – チームは 5±2人で運用 – チームの Git 経験者はゼロに近い状態 – リリース周期は 1週間~1ヶ月 – アジャイルなチームを目指したフラットな組織
18.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 17 ブランチ戦略 要求 – プロダクトの安定稼動が出来ること – 新規機能の開発を活発に行えること – バグ発生時にバージョンを容易に戻せること – 機能開発中にバグ修正を差し込めること ※ A Successful Git Branching Model より http://nvie.com/posts/a-successful-git- branching-model/ git-flow の採用 – 相反する要求を満たすブランチの運用 – メジャーリリース・マイナーリリースが混在する プロダクトに有効 – Github Flow や GitLab Flow と比較すると多少 複雑で慣れるまで時間がかかる
19.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 18 SouceTree とは https://ja.atlassian.com/software/sourcetree Atlassian 社が提供 Gitクライアントツール コマンドライン不要。GUIでリポジトリの運用可能
20.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 19 SouceTree の運用 リポジトリ操作がボタンひとつで簡単に出来る コミットツリーの参照が可能 「Git Flow」ボタンにより、git-flow に従った操作を行うよう助ける
21.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 20 SouceTree を使って良かったこと コマンドを使用することなく Gitリポジトリの 操作が容易に出来る 開発スピードを落とすことなく、git-flow の 導入と学習を進めることが出来る
22.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 21 リポジトリ管理 https://bitbucket.org/ Atlassian 社が提供 Gitリポジトリ管理ツール
23.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 22 当初のコードレビューのやり方 プルリクエ ストの作成 開発者 対面レビュー プルリクエス トのマージ 承認 レビュワー 修正が必要か コードの修正 必要 不要 開発者 説明 指摘
24.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 23 プルリクエストの作成 タイトル 説明 レビュアー タイトル・説明の入力・依頼するレ ビュアーの選択を行いプルリクエスト を作成する
25.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 24 プルリクエストの作成 説明 レビュアー タイトル プルリクエスト駆動の開発でコードレビュー が必須に
26.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 25 コードレビューの実施 インラインディスカッション – インラインコメント・メンションを使用した コミュニケーション – マークアップシンタックス コードの近くにフィードバックを書 くことで、レビュー効率アップ 横並び差分表示も可能
27.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 26 コードレビューに関する情報の表示 JIRAの課題ワークフローにレビュー中のステータスを追加 タスクかんばんの列に「レビュー中」を 追加。レビューステータスを可視化 開発ブランチの状態をひとまとめ に表示。すぐに状況の認識が可能
28.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 27 プルリクエストのマージ マージ方法 マージ条件の設定 承認者の人数・タスクの解決・ビルドの成功 を条件に設定することが出来る。 →開発者の独断で判断でマージすることを防 止する。 ブランチパーミッション 特定のブランチに対して、削除・変更を防 ぐ設定を行うことが出来る。 → git flow で開発者に許可されていない操 作を事前に防止する。
29.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 28 Bitbucket(Git)の開発作業に慣れてきたころ、 コードレビューにいくつかの問題が・・・
30.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 29 こんなコードレビューはイヤだ 何を確認すれば良いかわからない クソコードが大量発生する なかなかレビューされない レビューのコストが高すぎる コードの誤りを指摘するだけになっている
31.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 30 タイトル・説明の記載をルール化する プルリクエストの改善 1. 対面レビューは必要か • 要 or 不要を記載 • 重要度やコードの複雑度によって開発者が判断 • 直接説明したほうが、はやいものも要と判断 2. 緊急度 • 高中低 or レビュー期限をブランチ特性から記載 3. 対応内容 • プルリクエストの単位を小さくする • プルリクエストの目的を明確にする • レビューの観点を明確にする • 関連リンクを記載 説明 1. WIP(Work In Progress)の活用 2. RFC(Request For Comment)の活用 タイトル
32.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 31 コードレビューの改善 対面レビューは必要なものだけに限定して行う その代わりにインラインディスカッションの質を上げる – 誤りの指摘を書くだけではなく、気づきや質問も記載するよう啓蒙 – 意見募集の書き込み – 新しい実装方法を提案と「いいね!」の使用 – 修正・調査が必要なコメントにはタスクの作成
33.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 32 改善による変化 何を確認すれば良いかわからない →プルリクエストの説明改善でレビューポイントが明確に クソコードが大量発生する →WIP・RFC でリスクを事前につぶせるように なかなかレビューされない →プルリクエストを小さくすることでレビューが容易に レビューのコストが高すぎる →必要最低限の対面レビューをすることコスト削減 コードの誤りを指摘するだけになっている →気付きや質問を書き込むことで徐々に議論が活発に →議論の中から、知識の共有や新しいアイデアが出るように
34.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 33 現在のコードレビューのやり方 プルリクエ ストの作成 対面レビュー が必要か 開発者 対面レビュー 机上レビュー プルリクエス トのマージ 承認 レビュワー 修正が必要か コードの修正 必要 必要 不要 不要 開発者 チーム全体で双方向的 コミュニケーション 重要なものに限定して、 対面レビュー レビューに必要な情報を明確に して、円滑なレビュー実施へ
35.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 34 プラグイン連携 Slack notifications plugin – Bitbucket のイベントを Slack に通知する Webhook to Jenkins for Bitbucket – Bitbucket のイベントを Jenkins に通知する ビルド・デプロイ・ 自動テストの実行 イベントの通知結果通知
36.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 35 Slack への通知 応答性の向上 チームが知るべき情報の通知 – 障害Alert – チームの予定 – ビルドデプロイ・自動テストの結果 – タスクのイベントを通知
37.
ULS Copyright © 2011-2016
UL Systems, Inc. All rights reserved. Proprietary & Confidential Powered by 36 ありがとうございました
Download now