Movatterモバイル変換


[0]ホーム

URL:


Yusuke Suzuki, profile picture
Uploaded byYusuke Suzuki
9,541 views

クラウド時代のエンジニアについて #sesfukui

2016年7月16日に開催された「ソフトウェア技術者サミット in 福井 2016」における基調講演「クラウド時代のエンジニアについて」の資料です。https://fitea.doorkeeper.jp/events/45122

Embed presentation

Downloaded 58 times
クラウド時代のエンジニアについて2016/7/16鈴木雄介グロースエクスパートナーズ株式会社 執行役員日本Javaユーザーグループ 会長ソフトウェア技術者サミット in 福井 2016
自己紹介鈴木雄介• グロースエクスパートナーズ(株)» 執行役員/アーキテクチャ事業本部長» http://www.gxp.co.jp/• 日本Javaユーザーグループ» 会長» http://www.java-users.jp/• SNS» http://arclamp.hatenablog.com/» @yusuke_arclamp1
アジェンダ• クラウドがもたらしたもの• クラウドの進化• エンタープライズとクラウド• クラウド時代のエンジニア• まとめ2
クラウドがもたらしたもの3
クラウドがもたらしたものクラウドの類型化4ハードウェアネットワーク仮想化OSOSミドルウェアコード設定データオンプレ IaaS PaaS SaaS<ユーザーの管理範囲>
クラウドがもたらしたものクラウドにおける3つの変化• 1.インフラのサービス化• 2.ミドルウェアのプラットフォーム化• 3.システム構成のコード化5
クラウドがもたらしたもの1.インフラのサービス化• 仮想化技術の応用»SDx:ソフトウェアであらゆるものを定義する»広大なデータセンターの上に自分のための仮想インフラが構築できる• インフラを「所有」から「利用」へ»IaaS(Infrastructure as a Service)»例:AWS EC26
クラウドがもたらしたもの2.ミドルウェアのプラットフォーム化• 仮想化できるのはインフラだけじゃない»AWS RDS(Relational Database Service)はデータベースサーバーのレンタルではなく、データベースのサービス化▸バックアップもクラスタ構成も設定するだけ• プラットフォームを利用する»PaaS(Platform as a Service)»アプリとインフラの境界線がなくなる7
クラウドがもたらしたもの2.ミドルウェアのプラットフォーム化• プラットフォームも高度している»Webアプリ基盤:AWS Elastic Beanstalk»開発ライフサイクル込み基盤:AWS CodeDeploy /AWS CodePipeline• 積極的にプラットフォームの制約を受け入れる»制約を受け入れて利用したほうが便利»OSSライブラリと一緒8
クラウドがもたらしたもの3.システム構成のコード化• 仮想化されたインフラやプラットフォームがコードから操作ができる»つまり、if文が書ける▸if {性能が悪ければ} then {サーバを足す}• 非機能要件がコーディングできる»これまでは機能要件しかコーディングできなかった»システム丸ごとコードで表現できる9
クラウドがもたらしたものクラウドファースト• 3つセットでクラウド技術»1.インフラのサービス化»2.ミドルウェアのプラットフォーム化»3.システム構成のコード化• クラウドファースト»プラットフォームと自動化を最大限利用する»オンプレからの単純移行(IaaS)では意味なし10
クラウドがもたらしたものビジネスのスピードアップ• クラウドでITサービス運営が早くなる»サービス=「企画」「開発」「運用」という営み»「アプリを書く」ことが早くなるのではない• 「作る」だけでは価値じゃない»システムを動かして、ビジネス価値を生み出すことが重要»そのためにクラウドが大きな変化をもたらした11
クラウドの進化12
クラウドの進化進化の歴史をたどってみる• アジャイル• DevOps• マイクロサービスアーキテクチャ(MSA)13
クラウドの進化アジャイル14
アジャイルアジャイルのはじまり• 2001年:アジャイルソフトウェア開発宣言»プロセスやツールよりも個人と対話を、»包括的なドキュメントよりも動くソフトウェアを、»契約交渉よりも顧客との協調を、»計画に従うことよりも変化への対応を• 「企画→開発」のスピードアップ»ウォーターフォールへの批判15参考:http://www.agilemanifesto.org/iso/ja/
アジャイルプロジェクトマネジメントの基礎• プロジェクトマネジメント»計画:QCDSを設定する»実行:計画に従って作業を行う»計測:計画と実績を比較する»調整:計画と実績のズレを調整する• QCDS»Quality(品質)、Cost(費用)、Delivery(期日)、Scope(範囲)16
アジャイルウォーターフォールの課題• ウォータフォール»計画:全体を予測し、リソースを調達する»計測:フェーズごとの中間成果物»調整:プロジェクトマネージャーの力量• 失敗しがちなこと»計画:正しく予測ができない»計測:中間成果物では良くわからない»調整:力量が足らない17
アジャイルアジャイルのアプローチ• 計画:定期的で小さくする• 計測:動くソフトウエアで管理する• 調整:関係者全員を集めて話し合う• プロセスからチームへ»「個人の能力」から「チーム力を活かす」»顧客も含めてチーム18
クラウドの進化DevOps19
DevOpsDevOpsのはじまり• アジャイルを「開発→運用」に適用する• 2009年:DevOps»Agile 2008:Agile Infrastructure & Operations▸政府系データセンターの移行にスクラムを導入した事例»Velocity 2009:10+ Deploys Per Day▸Flickrにおける開発と運用の協業について»Devopsdays Ghent 2009▸ここから「DevOps」が生まれる20参考:「The (Short) History of DevOps」(Damon Edwards)https://www.youtube.com/watch?v=o7-IuYS0iSE
DevOpsDevOpsのテーマ• 開発と運用は仲が悪い»ITサービスを安定稼働するために変更プロセスを煩雑にする»リリース回数を増やそうとすると相反する• DevOpsが目指したこと»徹底した自動化»開発と運用における情報共有»開発と運用が協業する文化21
DevOpsカナリアリリース• ブルーグリーンデプロイメント»本番環境をコピーして、新バージョンをリリース»ユーザーのアクセスを切り替える»もちろん、切り戻しも一瞬• カナリアリリース»ブルーグリーンデプロイメントがベース»一部のユーザーだけに特定のバージョンを提供する22
カナリアリリース23Web App DBルーター100100
カナリアリリース24Web App DBルーター100100Web App DB
カナリアリリース25Web App DBルーター10095Web App DB5
カナリアリリース26Web App DBルーター100100Web App DB
カナリアリリース27ルーター100100Web App DB
DevOpsカナリアリリース• 可能な限りサービスを止めない»数%の犠牲(の可能性)によって全体を救う»日中リリースが可能で切戻しコストも低い»もちろん、すべてのITシステムが同じ考え方ではないが参考になる部分はある• A/Bテストへの応用も可能»一部のユーザーに違うバージョンのアプリを試してもらう28
DevOpsダークカナリア• カナリアリリースを応用»「秘密のカナリア」• 開発者だけがアクセスできるテスト用バージョンを本番環境にリリースする»連携先システムも含めて、ステージング環境の構築が困難な場合は有効»もちろんバグが残っている可能性があるので、適用する機能は限定される29参考:「Scaling micro services at Gilt」http://www.slideshare.net/trenaman/javaone-2015-scaling-micro-services-at-gilt
DevOpsカオスモンキー• 本番環境をランダムにダウンさせる製品»モンキー:サーバー»ゴリラ:アベイラビティゾーン»コング:リージョン(≒データセンター)• 自動化スクリプトのテスト»本番環境でしか実施できない»もしものために平日日中に実行する30参考:https://github.com/Netflix/SimianArmy
クラウドの進化マイクロサービスアーキテクチャ31
マイクロサービスアーキテクチャMSA• 2014年:「Microservceis」»2011年:先端的なウェブサービス企業が似てようなアーキテクチャスタイルを取っていることが議論に»33rd Degree 2012「Microservices - Java, theUnix Way」• アジャイルやDevOpsをベースにしたアーキテクチャ32参考:http://martinfowler.com/articles/microservices.html参考: http://2012.33degree.org/talk/show/67
マイクロサービスアーキテクチャ技術面 1/2• 大きなシステムをサービスに分解する»サービスごとにライフサイクルを分けられる»サービスごとに非機能要件も分けられる• サービスごとにリリースタイミングを分けることができる»モノリシックなシステムは変更影響調査やテストに時間がかかっていた33
マイクロサービスアーキテクチャ技術面 2/2• サービスは疎結合に連携する»キューを使った非同期メッセージング»同期の場合はサーキットブレーカー付で»データは共有せずに分散配置34処理A処理Bメッセージキュー②キューに追加④キューから読み込み①リクエスト③処理完了⑤キューを削除
マイクロサービスアーキテクチャ組織面• サービスは1つのチームが担当する»技術的観点の分割からサービス観点の分割へ»それぞれが適切なリズムで活動できるようになる»大型システムにおいても自主性をもったチーム運営を可能にする»たくさんの(優秀な)アジャイルチーム35
クラウドの進化おさらい36
クラウドの進化おさらい• 2001年:アジャイル• 2006年:クラウド & AWS EC2• 2009年:DevOps & AWS RDS• 2010年:ブルーグリーンデプロイメント• 2011年:AWS Elastic Beanstalk• 2012年:カオスモンキー & カナリアリリース• 2014年:マイクロサービスアーキテクチャ37
クラウドの進化全てはアジャイルから• アジャイルのムーブメントを運用にまで延ばしたのがDevOps• その間にクラウド技術が発展し始め、プラットフォーム利用や自動化が促進• ムーブメントと技術が統合した姿がマイクロサービスアーキテクチャ• エンタープライズでも適用事例が←イマココ38
エンタープライズとクラウド39
エンタープライズとクラウドエンタープライズとは• 安心安全で絶対に間違いが許されない?• エンタープライズにおける2つのシステム»SoR(System of Record/記録のシステム)»SoE(System of Engagement/絆のシステム)• SoEはWebサービスが参考になる»ただし、信頼には足る必要性がある40
エンタープライズとクラウド良い悪いではない• 適切にツールとして使うことが大事»アジャイルとウォーターフォール»DevOpsとITIL»MSAとSOA• それよりも「マインドセット」の変更を»態度:be Agile»技術:プラットフォームに合わせる41
クラウド時代のエンジニア42
クラウド時代のエンジニア技術の使われ方を意識する• 技術そのものだけではなく「技術の使い方」のトレンドを意識する»実践できなくても、ちゃんと横目で見る!• マネジメントも大事»建築では工法と構造が一体なのは当たり前のこと»MSAに見られるような統合が促進される43
クラウド時代のエンジニアシステム作りからサービス運営へ• 「要件を満たすアプリを作る」から「価値があるサービスを運営する」»設計書に書いてあることを実装する作業はなくなる• 個人力からチーム力»個人の力をチームの力に変えていくことが大事44
クラウド時代のエンジニアスキルを縦か横に拡げる• 機能別から価値を出すためのチーム分けへ• スペシャリストかゼネラリスト»スペシャリスト:特定領域の専門家»ゼネラリスト:専門家を繋いで価値に繋げる45開発企画システム作り運用サービス運営企画+開発+運用企画+開発+運用企画+開発+運用
クラウド時代のエンジニアビジネスの中心になる• 「ITがビジネスの最重要課題」なら、エンジニアがビジネス活動の重要な位置にいるべき• エンジニアにもビジネススキルが必須»コミュニケーション能力やプレゼン能力»チームビルディング46
まとめ47
まとめ全てはアジャイルからはじまった• アジャイルのムーブメントを運用にまで延ばしたのがDevOps• その間にクラウド技術が発展し始め、プラットフォーム利用や自動化が促進• ムーブメントと技術が統合した姿がマイクロサービスアーキテクチャ• エンタープライズでも適用事例が←イマココ48
まとめクラウドファースト• クラウドを利用してITサービス運営を早くする»単純にIaaSを使うのではなく、プラットフォームや自動化スクリプトを使い倒す• 技術を使う側に発想の転換が必要»アプリとインフラの境目がなくなる»非機能要件もコーディングできる»プラットフォームの制約を受け入れる49
まとめクラウド時代のエンジニア• 技術の使われ方を意識する• システム作りからサービス運営へ• スキルを縦か横に拡げる• ビジネスの中心になる50
最後に51
お知らせ今日の話が本になります• クラウドファーストアーキテクチャ設計ガイド• 2016年8月刊行予定!52

Recommended

PDF
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
PDF
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
PDF
エナジャイル設立によせて
PDF
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
PDF
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
PDF
マイクロサービスアーキテクチャ とは何か
PDF
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
PDF
ウォーターフォールとアジャイルを考える #ita_ws
PDF
JavaOne 2016総括 #jjug
PDF
アーキテクチャのレビューについて - JaSST Review '18
PDF
要求の変化とマイクロサービスアーキテクチャ
PDF
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
PDF
アジャイル開発を支えるアーキテクチャ設計とは
PDF
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
PDF
Javaのカルチャーとグロース - MANABIYA 2018
PDF
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
PDF
マイクロサービスアーキテクチャの設計 - JUG2015
PDF
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
PDF
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
PDF
Javaはコミュニティの力で再び偉大になれるのか
PDF
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
PDF
ITトレンドに見る日本のエンタープライズITについて
PDF
JJUG初心者のためのJava/JJUG講座
PDF
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
PDF
JavaOne感想&技術トレンド紹介 - JavaOne2015報告会
PDF
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
PDF
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
PDF
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
PDF
クラウドを超えた先の企業システム像 20091008 JJUG CCC
PDF
クラウドと共に進むエンジニアの進化

More Related Content

PDF
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
PDF
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
PDF
エナジャイル設立によせて
PDF
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
PDF
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
PDF
マイクロサービスアーキテクチャ とは何か
PDF
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
PDF
ウォーターフォールとアジャイルを考える #ita_ws
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
エナジャイル設立によせて
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
マイクロサービスアーキテクチャ とは何か
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
ウォーターフォールとアジャイルを考える #ita_ws

What's hot

PDF
JavaOne 2016総括 #jjug
PDF
アーキテクチャのレビューについて - JaSST Review '18
PDF
要求の変化とマイクロサービスアーキテクチャ
PDF
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
PDF
アジャイル開発を支えるアーキテクチャ設計とは
PDF
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
PDF
Javaのカルチャーとグロース - MANABIYA 2018
PDF
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
PDF
マイクロサービスアーキテクチャの設計 - JUG2015
PDF
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
PDF
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
PDF
Javaはコミュニティの力で再び偉大になれるのか
PDF
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
PDF
ITトレンドに見る日本のエンタープライズITについて
PDF
JJUG初心者のためのJava/JJUG講座
PDF
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
PDF
JavaOne感想&技術トレンド紹介 - JavaOne2015報告会
PDF
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
PDF
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
PDF
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
JavaOne 2016総括 #jjug
アーキテクチャのレビューについて - JaSST Review '18
要求の変化とマイクロサービスアーキテクチャ
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイル開発を支えるアーキテクチャ設計とは
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
Javaのカルチャーとグロース - MANABIYA 2018
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
マイクロサービスアーキテクチャの設計 - JUG2015
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
Javaはコミュニティの力で再び偉大になれるのか
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
ITトレンドに見る日本のエンタープライズITについて
JJUG初心者のためのJava/JJUG講座
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
JavaOne感想&技術トレンド紹介 - JavaOne2015報告会
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会

Similar to クラウド時代のエンジニアについて #sesfukui

PDF
クラウドを超えた先の企業システム像 20091008 JJUG CCC
PDF
クラウドと共に進むエンジニアの進化
PDF
AWSの最新動向と事例から知る クラウド利用の進化と真価
PDF
DevLove Kansai AWS
PPTX
要求開発アライアンス 9月定例会議
ODP
クラウドで変わるJava開発 - Java Cloud Meeting Fukuoka 2010
ODP
クラウドで変わるJava開発 - Java Cloud Meeting Fukuoka 2010
PPTX
アーキテクトが主導するコンテナ/マイクロサービス/サーバーレスのセキュリティ
PPTX
Windows Azure 最新 Update 2014/01/28
PDF
クラウドサービスの基本的な事
PPTX
Windows Azure 最新 Update 2014/04/04
PPTX
Windows Azure 最新 Update 2014/03/10
PDF
20101212 Cloud座談会
PPTX
2012年03月 経済産業省セミナー「クラウドは敵か?味方か?」
PDF
本当にできるの?ミッションクリティカルシステムのクラウド移行 第1回:検討すべき10のポイント (Oracle Cloudウェビナーシリーズ: 2021年...
PDF
Sb tech night#1_document_otsuki_202104
PDF
クラウド時代を生き残る経営戦略策定のススメ「クラウドは敵か?味方か?」(山口・岡山)
PDF
サーバーレス時代の システム設計ワークショップ
PPTX
「モダン」アプリケーションと マイクロソフト プラットフォーム
PDF
さくらのクラウド サービス開発とデータセンター運用
クラウドを超えた先の企業システム像 20091008 JJUG CCC
クラウドと共に進むエンジニアの進化
AWSの最新動向と事例から知る クラウド利用の進化と真価
DevLove Kansai AWS
要求開発アライアンス 9月定例会議
クラウドで変わるJava開発 - Java Cloud Meeting Fukuoka 2010
クラウドで変わるJava開発 - Java Cloud Meeting Fukuoka 2010
アーキテクトが主導するコンテナ/マイクロサービス/サーバーレスのセキュリティ
Windows Azure 最新 Update 2014/01/28
クラウドサービスの基本的な事
Windows Azure 最新 Update 2014/04/04
Windows Azure 最新 Update 2014/03/10
20101212 Cloud座談会
2012年03月 経済産業省セミナー「クラウドは敵か?味方か?」
本当にできるの?ミッションクリティカルシステムのクラウド移行 第1回:検討すべき10のポイント (Oracle Cloudウェビナーシリーズ: 2021年...
Sb tech night#1_document_otsuki_202104
クラウド時代を生き残る経営戦略策定のススメ「クラウドは敵か?味方か?」(山口・岡山)
サーバーレス時代の システム設計ワークショップ
「モダン」アプリケーションと マイクロソフト プラットフォーム
さくらのクラウド サービス開発とデータセンター運用

More from Yusuke Suzuki

PDF
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
PDF
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
PDF
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
PDF
Javaとコミュニティの歩み 2020
PDF
エンタプライズ領域のアジャイル開発の課題 - FIT2020
PDF
なぜ「マイクロサービス“化”」が必要なのか
PDF
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
PDF
エンタープライズ、アーキテクチャ、アジャイルのこれから
PDF
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
PDF
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演
アーキテクチャの進化から学ぶ、プラットフォームエンジニアリングへのアプローチ
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
サービスブループリントによるシステム設計手法の紹介 - XP祭り2022
マイクロサービスに至る歴史とこれから - XP祭り2021
Javaとコミュニティの歩み 2020
エンタプライズ領域のアジャイル開発の課題 - FIT2020
なぜ「マイクロサービス“化”」が必要なのか
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
エンタープライズ、アーキテクチャ、アジャイルのこれから
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
「JJUG運営の戦略と戦術」 JJUG CCC 2016 Spring 基調講演

クラウド時代のエンジニアについて #sesfukui


[8]ページ先頭

©2009-2025 Movatter.jp