Agile Japan 2016 ランチセッション
- セッションタイトル:エンタープライズアジャイルをサポートする優れたソフトウェア開発環境とは
- スピーカー:
- 廣田 華代 氏(マクニカネットワークス株式会社)
- レポーター:カンケ(執筆一覧)
GitHub Enterpriseがエンタープライズアジャイルをサポートする優れたソフトウェア開発環境となるってことを聞いてきました。
昨今、ビジネス環境の変化、IoT、Cloud、……と日々デジタル化が進んでおり、デジタルビジネスへの対応が不可欠になっています。さらには市場の変化も激しくビジネス変革が必要。企業としてアジャイルに顧客対応を行うことが生き残る一つの方向となっているようです。
そんな中、出てきたのが「エンタープライズアジャイル」という用語・考え方なのかなと思い、ここで言う「エンタープライズアジャイル」とは大企業での大規模なアジャイル開発だと解釈しました。
GitHub Enterpriseの特徴
GitHub Enterpriseは、企業内のシステムにGitHubのサービスを立ち上げることができます。
古くからの大企業では、社内のソースコードは一切公開したくない、自社のサーバやCloudシステムの外に出したくないなどの理由から、開発者がGitHubを使いたくても使えない状況でした。そこで、GitHubを企業内で閉じて使えるGitHub Enterpriseができました。
GitHub Enterpriseは、自社サーバやCloudシステムにインストールでき、インターネット上のGitHubサービスを使うことなく、独自に同等のサービスを立ち上げることが可能です。
こんなことを思っている方にオススメです
- バージョン管理がうまくいっていない
- もっとコミュニケーションをとりながら開発したい
- 開発の後工程で問題が発覚しちゃうので改善したい
- リリースサイクルを短くしたい
- 「いつ誰が機能を導入したのか」やコードの品質が属人的なのでどうにかしたい
- 知識がたまらない、増えない

解決のヒント
GitHubとは
GitHubはwikiやコードレビュー、バージョン管理を備えた、ソフトウェア開発をサポートするためのWebサービスです。ソフトウェア開発者であれば知っている人は多く、オープンソースのほとんどはGitHubを介して開発しているのではないでしょうか。
あまり馴染みがない場合、GitとGitHubを混同してしまうので、ここで簡単に説明します。
GitHubを使う利点
- 利用者全員が開発に参加するハブの役割を持っており、距離や時間の制約を超えて協力して開発できる
- シンプルで効果的なワークフロー(GitHub Flow)を備えており、問題・課題・アイデアをオープンに議論できる
- 議論やレビュー結果が残るので、知識がたまる
- ソースコード、プロジェクトの成果物、進行の経緯の共有化につながる
- ソースコードに限らず、さまざまなファイルをバージョン管理できる
- Webアプリ、Webサービスに特化しておらず、組込み開発でも使える
- 継続的に使うことで利用者がアクセスできるソースコードが増え、活用できる
- さまざまな開発基盤と協調して開発できる

GitHubはソフトウェア開発を効率化します

GitHub Enterpriseを中心とした開発基盤
GitHub Flowとは
「GitHub Flow」は、ソースコードを管理するために実施する一連の流れのことです。このフローに乗ることでスムーズに開発ができます。
特徴的なものに「Pull Request」があります。
ブランチを切ってソースコードを修正したら、Pull Requestというレビュー依頼のようなものを発行することで、しかるべきタイミングでしかるべき人にソースコードを見てもらうことが可能です。
GitHub Flowによる効果
- ブランチを切ってからマージすることで、リスクなしでソースコードを修正できる
- 議論して、よいものをマージできる
- 開発の初期段階から実践することで、品質やコミュニケーションがよくなる
- レビュー日程などの面倒な調整が不要になる
- 結果的にリリース期間の短縮につながる

GitHub Flow
導入事例からのお声
- ソースコードを共有して質問や議論することを躊躇せずに、積極的に働けるようになった
- 社内全体のモチベーションアップにつながった
- 効率的なコードレビューで不具合を早期発見できた
- 開発フローの確立に役立った
- 脱「属人化」ができた
もっと詳しく知りたい方はこちら(マクニカネットワークス株式会社の事例紹介ページ)をどうぞ。
所感
GitHub Enterpriseを社内に導入したいな、と素直に思いました。「ソースコードは資産だ!」「開発者は宝だ!」と思っているなら、GitHub Enterpriseこそが力を発揮するのではと感じます。
企業内の一つのチームに導入するのではなく、企業全体で使えるようにするのが肝ですね!
広大な畑で開発者たちはソースコードをスクスク育て、そして開発者同士のコミュニケーションも活性化する。これを大企業で実現できたら、どんどん育てて収穫して出荷、品種改良しては出荷、ととてもよいソフトウェア収穫サイクルがまわせると思います。
皆さんもGitHubを使いたくなりましたよね?GitHubが社内で使えないのであれば、GitHub Enterpriseをオススメします。
気になる方はマクニカネットワークス株式会社へGo!
書籍で知りたい方には、参考文献にオススメの書籍を一つあげておきます。
参考文献
- 『GitHub実践入門』(大塚弘記、技術評論社、2014年、978-4774163666)
Agile Japanとは
- Agile Japanとは
- 公式サイト:Agile Japan
- Twitter:@agilejapan
- Facebookページ:Agile Japan
1 Comment
EM Zeroのナカノヒト (@em_staff) · 2016年6月28日 at 17:16
【Agile Japan 2016】
GitHubではじめるソフトウェア収穫サイクル:Agile Japan 2016 レポート(2) | ManasLink ONLINE https://t.co/Psux0DKZ4g #agilejapan
Comments are closed.