Softlayer_summit

18
開発現場から効率的な開発手法や SoftLayerの活用事例についてご紹介 株式会社MNU 雪本 修一 DMM.com Labo 小峰 央志 2012©MNU co. ltd. Track F 14:50 - 15:20

Transcript of Softlayer_summit

Page 1: Softlayer_summit

開発現場から効率的な開発手法やSoftLayerの活用事例についてご紹介

株式会社MNU  雪本 修一 DMM.com Labo 小峰 央志

2012©MNU co. ltd.

Track F 14:50 - 15:20

Page 2: Softlayer_summit

www.usa-mimi.jp

アジェンダ

2012©MNU co. ltd.

n ソフトウェア開発の現場で、SoftLayerがどのように活用されているのか?

n 開発を効率良く行うためにどのような工夫をし、どのようにやっているのか?

n API分科会における活動内容について

Page 3: Softlayer_summit

開発現場から効率的な開発手法やSoftLayerの活用事例についてご紹介

株式会社MNU  雪本 修一 DMM.com Labo 小峰 央志

2012©MNU co. ltd.

Page 4: Softlayer_summit

www.usa-mimi.jp

自己紹介

2012©MNU co. ltd.

n 雪本 修一(Shuichi Yukimoto) ‒ @nsas454 ‒  fb.me/shuichi.yukimoto ‒ 1974.8生まれ ‒ 岡山県出身 ‒ プログラマ ‒ SoftLayerユーザ会運営委員

Page 5: Softlayer_summit

www.usa-mimi.jp

会社紹介

2012©MNU co. ltd.

n 株式会社MNU ‒ 国立大学法人 電気通信大学の認定ベンチャー ‒ ソフトウェアに関する研究、開発 ‒ PBOX, PBOX for Backup, SalesManager ‒ SoftLayer Referral Pertner

n プログラマ募集中です!

Page 6: Softlayer_summit

www.usa-mimi.jp

弊社でメインで開発するアプリ

2012©MNU co. ltd.

n Python Djangoを使ったWEBアプリが中心 n 如何に効率よく開発をしていくかが課題

‒ バグを未然に防ぐ ‒ 無駄な作業をへらす! ‒ 無駄な打ち合わせを減らす ‒ 対応を早くする ‒ 柔軟な仕様変更への対応

Page 7: Softlayer_summit

www.usa-mimi.jp

問題になるところ

2012©MNU co. ltd.

n 課題の管理 n ソースコードの品質管理 n テストの実施 n 本番環境へのデプロイ n テストサーバへのデプロイ etc..

Page 8: Softlayer_summit

www.usa-mimi.jp

DevOps

2012©MNU co. ltd.

n 開発 (Development) と運用 (Operations) (wikipediaより抜粋)

n Toolもたくさんあるので何をどのように使うのかが重要

Page 9: Softlayer_summit

www.usa-mimi.jp

継続的インテグレーション (CI)

2012©MNU co. ltd.

n プログラマのアプリケーション作成時の品質改善や納期の短縮のための習慣(wikipediaより抜粋)

n Toolはたくさんあるが、どうやってテストの自動化をすすめるのが大きなポイント

Page 10: Softlayer_summit

www.usa-mimi.jp

SoftLayerでDevOpsを考えてみる

2012©MNU co. ltd.

n AWSにはOpsWorksがある ‒ なかなか使い勝手が良さそう!

n Bluemix にDevOps Servicesがある! ‒ Bluemixを使えばいいじゃないか!!

Page 11: Softlayer_summit

www.usa-mimi.jp

Bluemix のDevOps Services

2012©MNU co. ltd.

n 実際に使ってみると。。 ‒  SoftLayerの自分のインスタンスが指定できない ‒ ソースコードは独自管理 ‒ テストは出来るかどうか不明 ‒  Issueの管理もできない ‒ そもそも他のサービスと組み合わせてできそうにない。

n  手っ取り早く開発をするには便利かも

Page 12: Softlayer_summit

www.usa-mimi.jp

DevOpsの導入を考える

2012©MNU co. ltd.

n 導入にあたって考慮すべきこと ‒ 導入が楽 ‒ できるだけ自動化できるように ‒ ユニットテストが実行できること! ‒ 課題管理も出来るとうれしい!

Page 13: Softlayer_summit

www.usa-mimi.jp

弊社で導入した開発フロー

2012©MNU co. ltd.

アプリケーション

デプロイ Pudhをトリガに連携

Issue管理 ソース管理

テストの実行 Fabricの実行 アプリの更新

初期環境を構築

Page 14: Softlayer_summit

www.usa-mimi.jp

   GitHub

2012©MNU co. ltd.

n なぜgithub? ‒  Issueの管理が便利

• Slackに通知できる ‒ Pull Requestが便利

• Pull Requestを使うことでソースコードの品質を担保できる

‒ たくさんのツールと連携できる • Slackとの連携 • メールでの通知 etc

Page 15: Softlayer_summit

www.usa-mimi.jp

  Circle CI

2012©MNU co. ltd.

n Githubとの相性抜群! ‒ Githubへのpushをトリガに自動で実行してくれる

‒ 実行ファイルはymlファイルに記述した内容で実行可能!

‒ Pythonのvirtualenvの環境でテストまで実行してくれる。

‒ Fabricなどもテスト成功後自動的に実行してくれる!

Page 16: Softlayer_summit

www.usa-mimi.jp

  Chefと   Fabric

2012©MNU co. ltd.

n どちらも環境構築用のツール n どのように使い分けるのがいいか? n Chef

‒ 初期の環境構築に利用 ‒ なぜ?

• 通常のデプロイでは少しオーバースペックすぎる n Fabric

‒ デプロイ作業に利用 • ソースの更新がメインなので!

本当は一つで対応できればすごくうれしい!!

Page 17: Softlayer_summit

www.usa-mimi.jp

まとめ

2012©MNU co. ltd.

n その他に抱える問題点 ‒ テストコードをどうやって上手に書くか! ‒ もうすこし簡単にデプロイまでできるツールがほしい。 • Softlayerのインスタンス作成から自動でやってくるとうれしいな。

• API分科会でつくっていきましょう!!

Page 18: Softlayer_summit

www.usa-mimi.jp

API分科会について

2012©MNU co. ltd.

n 不定期で開催 n SoftLayer APIについて勉強しています。

n 過去の開催 ‒ Pythonの言語仕様 ‒ SLCLIのコードを読んでみよう

n APIに興味ある方、プログラマの方、ぜひ一緒にAPIについて勉強していきましょう!