Top Banner
超初心者向け! Visual Studio + git で始めるアジャイル開発 2015年08月29日(土) 16:00-16:50 ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡 Microsoft MVP for Visual Studio ALM @fullvirtue Copyright © fullvirtue. All rights reserved.
66

超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Jan 14, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

超初心者向け!Visual Studio + git で始めるアジャイル開発

2015年08月29日(土) 16:00-16:50

ふくあず ~夏の終わりはDeveloper祭り 2015~Japan Azure User Group福岡

Microsoft MVP for Visual Studio ALM @fullvirtue

Copyright © fullvirtue. All rights reserved.

Page 2: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

本日の概要本日のセッションの概要について確認していきます。

Copyright © @fullvirtue. All rights reserved. 2

Page 3: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

本日の概要(1/1)

本セッションについて(1/1)

概要

– 「gitって何?アジャイルって何?」分散型バージョン管理システム(git)における、プルリクエスト主体のアジャイルなチケット駆動開発について、実案件での経験を踏まえてお話します。

対象者

– 分散型バージョン管理システム(git)について知りたい方

– アジャイルについて知りたい方

– チケット駆動開発について知りたい方

Copyright © fullvirtue. All rights reserved. 3

超初心者向け!Visual Studio + git で始めるアジャイル開発

Page 4: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

おことわり(1/4)

今回の資料について(1/4)

今回の資料は、以下を参考にしています。私自身のオリジナルはほとんどありませんので、ご了承ください。

– デザイナのためのGit入門

» http://www.slideshare.net/dsuket/git-16343460

– サルでもわかるGit入門

» http://www.backlog.jp/git-guide/

– 知らないと現場で困るバージョン管理システムの基礎知識

» http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html

– バージョン管理とは : 集中型 vs. DVCS

» http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/

Copyright © fullvirtue. All rights reserved. 4

Page 5: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

おことわり(2/4)

今回の資料について(2/4)

今回の資料は、以下を参考にしています。私自身のオリジナルはほとんどありませんので、ご了承ください。

– A successful Git branching model

» [Eng]http://nvie.com/posts/a-successful-git-branching-model/

» [日本語訳] http://keijinsonyaban.blogspot.jp/2010/10/successful-git-branching-model.html

– キャスレーの社内開発で利用するgitのブランチモデルとかPull Requestの簡単な解説とか

» http://www.casleyconsulting.co.jp/blog-engineer/git/キャスレーの社内開発で利用するgitのブランチモ/

Copyright © fullvirtue. All rights reserved. 5

Page 6: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

おことわり(3/4)

今回の資料について(3/4)

今回の資料は、以下を参考にしています。私自身のオリジナルはほとんどありませんので、ご了承ください。

– Agile vs. Waterfall, Revisited

» http://www.commonplaces.com/blog/agile-vs-waterfall-revisited

– 新人エンジニアが知っておきたいアジャイル開発

» http://www.slideshare.net/schoowebcampus/ss-30477398

– アジャイルソフトウェア開発宣言

» http://agilemanifesto.org/iso/ja/

– アジャイル開発の現在・過去・未来

» http://www.publickey1.jp/blog/10/post_121.html

Copyright © fullvirtue. All rights reserved. 6

Page 7: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

おことわり(4/4)

今回の資料について(4/4)

今回の資料は、以下を参考にしています。私自身のオリジナルはほとんどありませんので、ご了承ください。

– PMBOKの「10の知識エリア」

» http://consulting-skill.com/pmo/pmbok.html

– Scrum概要 #tfsug

» http://www.slideshare.net/Ryuzee/scrum-tfsug

– ウォーターフォールモデルの起源に関する考察ウォーターフォールに関する誤解を解く

» http://barrel.ih.otaru-uc.ac.jp/handle/10252/5163

Copyright © fullvirtue. All rights reserved. 7

Page 8: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved.

本日のアジェンダ(1/1)

8

アジャイル開発とは

バージョン管理とGit

Visual Studio + Git で始めるアジャイル開発

まとめ

Page 9: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved.

本日のアジェンダ(1/1)

9

アジャイル開発とは

バージョン管理とGit

Visual Studio + Git で始めるアジャイル開発

まとめ

Page 10: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とはアジャイル開発について、簡単におさらいしていきます。

Copyright © fullvirtue. All rights reserved. 10

Page 11: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(1/11)

アジャイル開発とは

いきなりまとめますが

アジャイル開発とは

提供したい価値を「小さく」「素早く」届けるための仕組み

小さい失敗を重ねて大きく成功するための考え方

実際のプロジェクトに適用するには

現在のプロジェクトで出来ていないことを課題として見える化し、一つずつ改善する

Copyright © fullvirtue. All rights reserved. 11

Page 12: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(2/11)

アジャイル開発とは

ポイントを1つに絞ると

アジャイル開発を円滑にすすめるためには

『プロジェクトの現状の見える化』をどれだけ継続的に出来るかが重要

Copyright © fullvirtue. All rights reserved. 12Nonaka Scrum Creating Knowledge with Users – 平鍋健児 - http://www.slideshare.net/hiranabe/nonaka-scrum-creating-knowledge-with-users

Page 13: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(3/11)

近年のソフトウェア開発のニーズ(1/1)

Copyright © fullvirtue. All rights reserved. 13

スピード重視

初期ユーザーを獲得するため早期に市場に出したい

スモールスタート

事業初期にかかる初期投資額はなるべく下げたい

フィードバック

開始後に出るニーズや経験を反映していきたい

スケールアウト

事業が軌道に乗るに従って拡大をしていきたい

要件が不確定で小規模なため、これまでの開発は非効率

新人エンジニアが知っておきたいアジャイル開発 http://www.slideshare.net/schoowebcampus/ss-30477398

Page 14: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved. 14

Page 15: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved. 15

Page 16: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

ユーザーストーリーとは http://www.slideshare.net/Ryuzee/ss-8332120

アジャイル開発とは(6/11)

どちらの作り方を選びますか?(1/1)

Copyright © POStudy (プロダクトオーナーシップ勉強会). All rights reserved. 16

Page 17: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(7/11)

アジャイルソフトウェア開発宣言–4つの価値(1/1)

私たちは、ソフトウェア開発の実践あるいは実践を手助けをする活動を通じて、よりよい開発方法を見つけだそうとしている。この活動を通して私たちは以下の価値に至った。

– プロセスやツールよりも個人と対話を、

– 包括的なドキュメントよりも動くソフトウェアを、

– 契約交渉よりも顧客との協調を、

– 計画に従うことよりも変化への対応を、

価値とする。すなわち、左記のことがらに価値があることを認めながらも、私たちは右記のことがらにより価値をおく。

Copyright © fullvirtue. All rights reserved. 17アジャイルソフトウェア開発宣言 http://agilemanifesto.org/iso/ja/

Page 18: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(8/11)

アジャイルの原則(1/1)

Copyright © fullvirtue. All rights reserved. 18新人エンジニアが知っておきたいアジャイル開発 http://www.slideshare.net/schoowebcampus/ss-30477398

顧客価値の優先

変化に対応

短期のリリース

全員同席

モチベーションと信頼

会話

動くソフトウェア

持続可能なペース

技術的卓越性

シンプル

自己組織的チーム

ふりかえりと改善

Page 19: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(9/11)

アジャイルソフトウェア開発宣言–12の原則(1/3)

アジャイル宣言の背後にある原則

私たちは以下の原則に従う

1. 顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供します。

2. 要求の変更はたとえ開発の後期であっても歓迎します。変化を味方につけることによって、お客様の競争力を引き上げます。

3. 動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリースします。

4. ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働かなければなりません。

Copyright © fullvirtue. All rights reserved. 19アジャイルソフトウェア開発宣言 http://agilemanifesto.org/iso/ja/

Page 20: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(10/11)

アジャイルソフトウェア開発宣言–12の原則(2/3)

アジャイル宣言の背後にある原則

私たちは以下の原則に従う

5. 意欲に満ちた人々を集めてプロジェクトを構成します。環境と支援を与え仕事が無事終わるまで彼らを信頼します。

6. 情報を伝えるもっとも効率的で効果的な方法はフェイス・トゥ・フェイスで話をすることです。

7. 動くソフトウェアこそが進捗の最も重要な尺度です。

8. アジャイル・プロセスは持続可能な開発を促進します。一定のペースを継続的に維持できるようにしなければなりません。

Copyright © fullvirtue. All rights reserved. 20アジャイルソフトウェア開発宣言 http://agilemanifesto.org/iso/ja/

Page 21: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは(11/11)

アジャイルソフトウェア開発宣言–12の原則(3/3)

アジャイル宣言の背後にある原則

私たちは以下の原則に従う

9. 技術的卓越性と優れた設計に対する不断の注意が機敏さを高めます。

10. シンプルさ(ムダなく作れる量を最大限にすること)が本質です。

11. 最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出されます。

12. チームがもっと効率を高めることができるかを定期的に振り返り、それに基づいて自分たちのやり方を最適に調整します。

Copyright © fullvirtue. All rights reserved. 21アジャイルソフトウェア開発宣言 http://agilemanifesto.org/iso/ja/

Page 22: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved.

本日のアジェンダ(1/1)

22

アジャイル開発とは

バージョン管理とGit

Visual Studio + Git で始めるアジャイル開発

まとめ

Page 23: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgitバージョン管理やgitの概要について説明します

Copyright © fullvirtue. All rights reserved. 23

Page 24: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(1/34)

よくあるバージョン管理の例(1/7)

ファイル名で管理

Copyright © fullvirtue. All rights reserved. 24デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 25: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(2/34)

よくあるバージョン管理の例(2/7)

ファイル名で管理

Copyright © fullvirtue. All rights reserved. 25デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

どれが最新?

Page 26: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(3/34)

よくあるバージョン管理の例(3/7)

共有フォルダで管理

Copyright © fullvirtue. All rights reserved. 26デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

共有フォルダ

index.html

Page 27: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(4/34)

よくあるバージョン管理の例(4/7)

共有フォルダで管理

Copyright © fullvirtue. All rights reserved. 27デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

共有フォルダ

index.html

更新

Page 28: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(5/34)

よくあるバージョン管理の例(5/7)

共有フォルダで管理

Copyright © fullvirtue. All rights reserved. 28デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

共有フォルダ

index.html

更新 更新

Page 29: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(6/34)

よくあるバージョン管理の例(6/7)

共有フォルダで管理

Copyright © fullvirtue. All rights reserved. 29デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

共有フォルダ

index.html

更新 更新

衝突

Page 30: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(7/34)

よくあるバージョン管理の例(7/7)

共有フォルダで管理

Copyright © fullvirtue. All rights reserved. 30デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

あれ、上書きしちゃった…

共有フォルダ

index.html

更新 更新

衝突

Page 31: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(8/34)

バージョン管理システムとは(1/1)

ファイルに対して「誰が」「いつ」「何を変更したか」というような情報を記録

過去のある時点の状態を復元したり変更内容の差分を表示できるようにするシステム

Copyright © fullvirtue. All rights reserved. 31知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html

Page 32: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(9/34)

バージョン管理システムを使うと(1/1)

すぐ前の状態に戻せる

複数人で同じファイルを更新しても大丈夫

変更履歴が観れる

リリース管理も簡単

Copyright © fullvirtue. All rights reserved. 32デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 33: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(10/34)

なぜ開発の現場でバージョン管理を使うのか(1/1)

1. アジリティを高める» もし開発中にソフトウェアにバグを埋め込んでしまっても、

問題の発生する以前の状態へ簡単に戻せる

2. 素早い開発が可能に» ある環境でバグなどの問題が発生した場合には、

過去にさかのぼって変更の差分を確認することで原因を分析したり、別に同じ環境を作って同じ問題が再現するかどうか調査できる

» ソフトウェアへの影響が大きな“変更”や試験的な機能の追加を安心して行えるので、結果として素早い開発が可能になる

3. 余計な情報でコードが肥大しない» 変更内容はバージョン管理システムに記録されるので、変更前の内容を

コメントアウトしてコード中に残すようなことをする必要はない

Copyright © fullvirtue. All rights reserved. 33知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html

Page 34: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(11/34)

何をバージョン管理するのか(1/1)

ある時点のソフトウェア・環境を構築するために必要なものすべて

– ソフトウェアのソースコード

– ビルドスクリプト

– データベースのスキーマ定義、マイグレーションの SQL、初期データ

– 環境構築用の設定ファイル・スクリプト

Copyright © fullvirtue. All rights reserved. 34知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html

Page 35: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(12/34)

何をバージョン管理してはいけないのか(1/1)

バージョン管理する必要がない、共有してはいけないファイル

– ソースコードをコンパイルしてできたバイナリファイル

– 秘密鍵ファイルなどの他人に見せてはいけないもの

Copyright © fullvirtue. All rights reserved. 35知らないと現場で困るバージョン管理システムの基礎知識 http://www.atmarkit.co.jp/ait/articles/1305/20/news015.html

Page 36: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(13/34)

バージョン管理システムの方式(1/9)

『集中管理方式』

– プロジェクトの単一の “中心” コピーがどこかに存在

» たいていはサーバー上であることが多い

– プログラマーはこの中心コピーに変更を “コミット”

» 単純に中央システムにその変更を記録することを意味

– 代表的な集中型バージョン管理システム

» CVS(Concurrent Versions System)

» SVN(Subversion)

» Perforce

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 36バージョン管理とは : 集中型 vs. DVCS http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/

Page 37: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(14/34)

バージョン管理システムの方式(2/9)

『集中管理方式』

『分散管理方式』

– プロジェクトのファイルの全バージョンを保管するための中央サーバーを必要としない

– 各開発者はレポジトリのコピーを “クローン” し、自身のハード ドライブ上にそのプロジェクトの 完全な 履歴を持つ

– 代表的な分散型バージョン管理システム

» git

» mercurial

» Bazaar

Copyright © fullvirtue. All rights reserved. 37バージョン管理とは : 集中型 vs. DVCS http://japan.blogs.atlassian.com/2012/11/version-control-centralized-dvcs/

Page 38: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(15/34)

バージョン管理システムの方式(3/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 38デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 39: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(16/34)

バージョン管理システムの方式(4/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 39

編集中 編集不可

編集不可編集不可

編集中 編集中

編集中編集中

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 40: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(17/34)

バージョン管理システムの方式(5/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 40

サーバー上のリポジトリ

ローカルファイルの編集

リモートリポジトリ

ローカルファイルの編集

ローカルリポジトリ

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 41: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(18/34)

バージョン管理システムの方式(6/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 41

サーバー上のリポジトリ

チェックアウト & ファイルロック

ローカルファイルの編集

リモートリポジトリ

ローカルファイルの編集

ローカルリポジトリ

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 42: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(19/34)

バージョン管理システムの方式(7/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 42

サーバー上のリポジトリ

チェックアウト & ファイルロック

コミット & ファイルロック解除ローカルファイルの編集

リモートリポジトリ

ローカルファイルの編集

ローカルリポジトリ

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 43: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(20/34)

バージョン管理システムの方式(8/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 43

サーバー上のリポジトリ

チェックアウト & ファイルロック

コミット & ファイルロック解除ローカルファイルの編集

リモートリポジトリ

ブランチ切替

ローカルファイルの編集

ローカルリポジトリ

プル

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 44: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(21/34)

バージョン管理システムの方式(9/9)

『集中管理方式』

『分散管理方式』

Copyright © fullvirtue. All rights reserved. 44

サーバー上のリポジトリ

チェックアウト & ファイルロック

コミット & ファイルロック解除ローカルファイルの編集

リモートリポジトリ

ブランチ切替

ローカルファイルの編集

ローカルリポジトリ

プル

マージ & コミット プルリクエストor プッシュ

デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 45: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(22/34)

分散管理方式のメリット(1/2)

手軽にコミットできる

オフラインでもコミット出来る

コミットが増えると履歴が増える

履歴が増えると戻すのが簡単

Copyright © fullvirtue. All rights reserved. 45デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 46: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(23/34)

分散管理方式のメリット(2/2)

ブランチ・マージが便利

別バージョンを作るのが簡単

別バージョンをマージするのが簡単

Copyright © fullvirtue. All rights reserved. 46デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 47: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(24/34)

Gitが不得意なこと(1/1)

バイナリファイルの管理が苦手

– 遅くなる

– 差分が取れない

Copyright © fullvirtue. All rights reserved. 47デザイナのためのGit入門 http://www.slideshare.net/dsuket/git-16343460

Page 48: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(25/34)

ブランチを中心としたソフトウェア開発(1/7)

ブランチとは

– 履歴の流れを分岐して記録していくためのもの

– 分岐したブランチは他のブランチの影響を受けない

– 同じリポジトリ中で複数の変更を同時に進めていくことができる

Copyright © fullvirtue. All rights reserved. 48サルでもわかるGit入門 http://www.backlog.jp/git-guide/stepup/stepup1_1.html

Page 49: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(26/34)

ブランチを中心としたソフトウェア開発(2/7)

5種類のブランチを軸に構成

1. master

2. develop

3. feature

4. release

5. hotfix

Copyright © fullvirtue. All rights reserved. 49A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/

Page 50: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(27/34)

ブランチを中心としたソフトウェア開発(3/7)

Copyright © fullvirtue. All rights reserved. 50A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/

masterhotfixreleasedevelopfeature

Page 51: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(28/34)

ブランチを中心としたソフトウェア開発(4/7)

Copyright © fullvirtue. All rights reserved. 51A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/

masterhotfixreleasedevelopfeature

本番環境の不具合対応

不具合対応を開発環境にも反映

不具合対応内容を本番環境に反映

本番リリース時にタグを付与

Page 52: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(29/34)

ブランチを中心としたソフトウェア開発(5/7)

Copyright © fullvirtue. All rights reserved. 52A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/

masterhotfixreleasedevelopfeature

リリース前確認で不具合発見し

たので対応

不具合対応を開発環境にも反

リリース内容を本番環境に反映

本番リリース時にタグを付与

Page 53: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(30/34)

ブランチを中心としたソフトウェア開発(6/7)

Copyright © fullvirtue. All rights reserved. 53A successful Git branching model http://nvie.com/posts/a-successful-git-branching-model/

masterhotfixreleasedevelopfeature

開発環境に反映

Featureブランチを新たに作成

Page 54: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(31/34)

ブランチを中心としたソフトウェア開発(7/7)

Copyright © fullvirtue. All rights reserved. 54

ブランチがmasterに収束している例

複数の開発が並行で進んだ例

順番に開発を進めた例

Page 55: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(32/34)

プルリクエストのススメ(1/2)

「プッシュ」と「プルリクエスト」の違い

– プッシュ(push)

» 誰からもレビューされていないソースコードを、開発者の判断で、全員に影響があるブランチに反映

– プルリクエスト(pull request)

» 誰かしら変更内容を確認したソースコードを、権限のある役割の方の判断で、全員に影響があるブランチに反映

Copyright © fullvirtue. All rights reserved. 55

Page 56: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(33/34)

プルリクエストのススメ(2/2)

Copyright © fullvirtue. All rights reserved. 56http://www.casleyconsulting.co.jp/blog-engineer/git/キャスレーの社内開発で利用するgitのブランチモ/

Page 57: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

バージョン管理とgit(34/34)

gitを操作するのに便利なツールのご紹介(1/1)

『SourceTree』

– git や mercurial 用の強力な無料 Mac / Windows クライアント

– https://www.atlassian.com/ja/software/sourcetree/overview

Copyright © fullvirtue. All rights reserved. 57

Page 58: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved.

本日のアジェンダ(1/1)

58

アジャイル開発とは

バージョン管理とGit

Visual Studio + Git で始めるアジャイル開発

まとめ

Page 59: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Visual Studio + Git で始めるアジャイル開発

実際にGit Hub上でリポジトリを作成後、SourceTreeを使ってpullし、Visual Studioを使って開発してAzureにデプロイをした後、

Commit & Pushするデモを実施します。

Copyright © fullvirtue. All rights reserved. 59

Page 60: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved.

本日のアジェンダ(1/1)

60

アジャイル開発とは

バージョン管理とGit

Visual Studio + Git で始めるアジャイル開発

まとめ

Page 61: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

まとめ今回のセッションの内容についてまとめます。

Copyright © fullvirtue. All rights reserved. 61

Page 62: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは

アジャイル開発とは

いきなりまとめますが

アジャイル開発とは

提供したい価値を「小さく」「素早く」届けるための仕組み

小さい失敗を重ねて大きく成功するための考え方

実際のプロジェクトに適用するには

現在のプロジェクトで出来ていないことを課題として見える化し、一つずつ改善する

Copyright © fullvirtue. All rights reserved. 62

Page 63: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

アジャイル開発とは

アジャイル開発とは

ポイントを1つに絞ると

アジャイル開発を円滑にすすめるためには

『プロジェクトの現状の見える化』をどれだけ継続的に出来るかが重要

Copyright © fullvirtue. All rights reserved. 63Nonaka Scrum Creating Knowledge with Users – 平鍋健児 - http://www.slideshare.net/hiranabe/nonaka-scrum-creating-knowledge-with-users

Page 64: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

お知らせ最後に。

Copyright © fullvirtue. All rights reserved. 64

Page 65: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

Copyright © fullvirtue. All rights reserved. 65

詳細・お申込はこちら: https://postudy.doorkeeper.jp/events/29226

『アーリーアダプターに出会うための最初の一歩』を踏み出そうプロダクトオーナーシップは、そのサービスが本当に必要なユーザーのことをどれだけ理解しているかが非常に重要です。ユーザーの中でもアーリーアダプターと呼ばれる層に対して、どのようにアプローチをし、どんな観点が必要なのかを『リーンダイアグラム』を通して探り、議論を通して深掘りしていきます。

『デザイン思考』に学ぶプロダクトオーナーシップユーザー視点に立った新たな価値創出手法であるデザイン思考を習得するには、実践が何よりの近道です。今回は、『デザイン思考』のワークショップに加え、その先にある世界についても議論で深掘りしていきます。

Page 66: 超初心者向け!Visual Studio + Git で始める アジャイル開発 #fukuazu #jazug - ふくあず ~夏の終わりはDeveloper祭り 2015~ Japan Azure User Group福岡

ご静聴ありがとうございました!

Copyright © @fullvirtue. All rights reserved. 66

グロースエクスパートナーズ株式会社 ITアーキテクト

エンタープライズ向けのIT業界にて、企画から開発運用および新規事業立ち上げに関与。現職は、エンタープライズ向けの新規サービス立ち上げ支援ITコンサルタントおよびITアーキテクト。

これまで、顧客に価値をもたらすITサービスを提供し続けられることを目標としたワークショップ型セッションに数多く登壇。『「超初心者」専門ITスクールTECH GARDEN SCHOOL』や『グロースハックアカデミー』にてIT人材教育の講師としても活躍。アジャイル開発やスクラム、プロダクトマネジメント、Visual Studio / Microsoft Azureに関わるコミュニティの数々の主催またはコアメンバーとしても積極的に活動中。

コンタクト先 URL

Blog http://fullvirtue.com/

Twitter https://twitter.com/fullvirtue是非フォローしてください!

Facebook https://www.facebook.com/fullvirtue

Email [email protected]

資料公開場所 http://slideshare.net/fullvirtue/これまで登壇してきた資料はこちらで公開しています!是非ご覧ください!

関 満徳せき みつのり