自動化について

30
自動化のすすめ

Upload: yuma-iwasaki

Post on 26-Jul-2015

183 views

Category:

Technology


2 download

TRANSCRIPT

自動化のすすめ

アジェンダ

• 自己紹介

• 自動化について

• まとめ

自己紹介• 名前:岩崎 裕馬

• Twitter:@iwayuma

• 社会人歴:5年目

• 好きなこと:自動化

• 今年の1月からスマホのアプリ開発去年まではシステム開発してました

ソフトウェア開発は基本的に業務の自動化を行うために開発しているはずなのに

なぜ開発現場は自動化が進められないのか?

ある開発現場の状況

• 秘伝の開発環境

• 伝説の職人頼みのデプロイ

• 一子相伝で受け継がれるビルド手順

まるで

恐ろしい状況

• リリースの際には全員で確認作業

• デプロイ職人がいないとリリースできない

• 奥義を受け継いだ後継者しかビルドできない

疲れてしまいますよね?

手動デプロイについて• デプロイを手作業で実施するのは、退屈だし飽きもくる。だがそれでも、かなりの専門性が必要になる。退屈で飽きのくる、それでいて技術を要する作業を職人に頼むなどということは、思いつく限りで最も確実にヒューマンエラーを引き起こす方法である。そして自動化することでもっと価値のある活動に従事してもらえるようになる。

p.43を参考

ざっくり言うと

• 難しくて何度も行う作業は間違えやすくてつまらない

• 自動化したら幸せになれるよ

世はまさに世紀末!!

人々は苦しめられている

世は世紀末

• 職人頼みのデプロイ

• 手作業で起きるヒューマンエラー

• 二度と再現不可能な開発環境

その状況に現れた 世紀末救世主!

その名も・・・

Jenkins

Jenkinsとは?• 簡単に言うと頭のいいcronやタスクスケジューラようなもの

• 決まった時間に処理を行うことや

• リポジトリの更新を検知して処理を行うことも

• その他・・・

Jenkinsを使ってできること

• ビルドの自動化

• デプロイの自動化

• その他諸々

 実際に行った事

• GitへPushがされた時にリポジトリからソースを取得しコンパイル

• ビルドが成功した場合はテスト環境にデプロイ

• ビルド結果はメールにて通知

よかったこと

• ○○さんがいないとデプロイできないというような状態がなくなった

• デプロイする時間を他の作業の時間にできた

結果

• 開発効率向上!!

• ソフトウェア品質向上!!

• 残業が減った

人々は幸せになりました

まとめ

• 運用でカバーではなく仕組みを作る

• 複数回同じことやるなら自動化しましょう

• 人より機械を信じましょう

自動化の先

• 継続的インテグレーション

• 継続的デリバリー

• DevOps

今後やりたいこと

• テストの自動化の文化を作る

• Pull Request文化を作る

• 構成管理(Chef等)も使っていきたい

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