297 Views
September 27, 13
スライド概要
2013年9月28日京セラドームで開催された JAWS FESTA Kansai 2013 でのセッション資料です。セッション資料動画は、http://www.youtube.com/watch?v=b6WIyxMQhlw にあります。
お問い合わせ:
https://www.servantworks.co.jp/contact/
[email protected]
セッション資料 動画版: http://aka.ms/jawsfesta DevOps Tomoharu Nagasawa Technical Evangelist, Microsoft Certified Scrum Master (CSM)
長沢 智治 日本マイクロソフト デベロッパー&プラットフォーム統括本部 エバンジェリスト Scrum Alliance 認定スクラムマスター • E-Agility 協議会 実行委員 • ソフトウェアテスト技術振興協会 ツールWG • ソフトウェア品質知識体系 (SQuBOK) 改訂委員 『アジャイルソフトウェアエンジニアリング』 基本概念から継続的フィードバックまで Sam Guckenheimer / Neno Loje 著、日経BP社 監訳者代表 • • • • Developers Summit など講演多数 開発プロセス、組織改善が専門領域 プリンシパル コンサルタント / ソリューションアーキテクトを歴任 2007年1月より、マイクロソフトのエバンジェリスト Speaker
Agenda 1 2 3 ビジネスと IT アジャイルとクラウド DevOps 概説 ~ 課題と解決策
Goal 1 2 3 DevOps の今を把握 一般的な課題と解決策を把握 戦略的 IT への準備へ
ビジネスと IT
Business 新たな価値を cv 創出する新技術 お客様への 直接的な貢献 デバイスと クラウド 市場に追随 市場をリード ビジネス価値の 継続的な提供 競争の激化 アジリティと ガバナンス 規模の経済の 最大化 Technology
Business Technology
ビジネス アジリティを支える IT IT の力でビジネスをスケール IT にもアジリティ IT でビジネスの価値(変化)を最大化
2010s 2000s 1990s Cost Center Key Infrastructure Morphing IT
ビジネス モデル Cost Center IT に非依存 Key Infrastructure IT が関与 Morphing IT IT がドライバー
意思決定 Cost IT Center 部門 Key Infrastructure 経営者層 Morphing IT 顧客/市場が中心
テクノロジー CostC/S Center Key Infrastructure Web / Web サービス Morphing IT クラウドとデバイス
ビジネスモデル 顧客と市場への をけん引 アジリティ クラウド& Dev と Ops の デバイスの活用 協調
アジャイルとクラウド
IT は 不可欠 IT は 有効 固定された要求に対応 IT は 便利 Cost Center 完成した後にデリバリー Key Infrastructure Morphing IT 開発者同士の協調 固定 今までの10年 十分な猶予
投資対効果が低い 固定 投資対効果が高い 十分な猶予
IT は 不可欠 IT は 有効 変動するビジネスに対応 IT は 便利 Cost Center Key Infrastructure Morphing IT 投資対効果が低い 継続的にデリバリー 開発と運用の協調 固定 投資対効果が高い 十分な猶予 これからの10年
投資対効果が低い ムダ 変動! 投資対効果が高い 十分な猶予
変動! 投資対効果が高い 十分な猶予
開発と運用のアジリティ
Cost Center Business Morphing IT Key Infrastructure IT 非同期 Business IT 同期
Cost Center Requirements 固定 Morphing IT Key Infrastructure Long Batch Delivery 完全 Requirements 固定? Long Batch Delivery 完全?
Cost Center Requirements 固定 Morphing IT Key Infrastructure Long Batch Delivery 完全 Requirements 変化 Small Batch Continuous Delivery 継続
Cost Center Morphing IT Key Infrastructure We’re done. PO PM Arch. Dev. Tester. etc エンドユーザー 開発チーム 運用チーム
Cost Center Key Infrastructure エンタープライズの システム自動化技術 Morphing IT クラウドのベース
ムーブメントはすでにエンタープライズに 顧客に ダイレクトに 響く活動 先進的な アプリケーション アプリケーションライフサイクル管理 データセンター つながる 商談の継続 先進的な アプリケーションと 開発プラクティス の創発 Enthusiasts 先進的な 業務環境 Visionaries スタートアップ クラウド サービス ベンダー Pragmatists Conservatives エンタープライズ Skeptics 独自性と 競合優位性
先進的なビジネスの要素 Continuous 先進的なアプリケーション Modern Applications Better 先進的な アプリケーションライフサイクル Modern Application Lifecycle Faster 先進的なデータセンター Modern Data Center Cheaper
エンタープライズ IT の “ユーザー” お客様 従業員 The customer buying from us The employees working for us
エンタープライズ アプリの進化 内勤, B2B 協力会社, 従来のチャネル お客様, 全従業員, 新規のチャネル SYSTEM OF RECORD SYSTEM OF ENGAGEMENT パッケージとそのカスタマイズ ブランドの差別化 長期のリリース サイクル 継続的デリバリー コンテンツ マネージメント ビジネス ソーシャル 基礎体力 ※ 確立した方法が適用しやすい 戦闘力 ※ 未知の領域への挑戦 / 試行錯誤
Customer Development Customer Discovery Customer Validation Iteration Customer Creation Company Building Execution *Lean Startup
Lean Startup | Build – Measure - Learn アイデア BUILD LEARN Dev Ops データ Biz プロダクト MEASURE
DevOps
ビジネスと IT ( = Dev + Ops ) Dev Ops ビジネスの アイデアや課題 ビジネスの 価値提供と改善 開発 運用
ビジネスと IT ( = Dev + Ops ) の阻害要因 Dev Ops ビジネスの アイデアや課題 ビジネスの 価値提供と改善 開発 運用
繰り返し型のビジネスでは致命的! Dev Ops ビジネスの 価値提供と改善 ビジネスの アイデアや課題 Dev Ops Dev Ops
繰り返し型のビジネスでは致命的! Dev Ops ビジネスの 価値提供と改善 ビジネスの アイデアや課題 Dev Ops || Dev Ops
DevOps による戦略的な IT へ Dev Ops ビジネスの アイデアや課題 ビジネスの 価値提供と改善 開発 運用
DevOps の課題
DevOps による戦略的な IT へ 再現しない! Dev Ops ガバナンス! ビジネスの アイデアや課題 開発 運用 ビジネスの 価値提供と改善
DevOps による戦略的な IT へ ブラック ボックス Dev Ops ガバナンス! ビジネスの アイデアや課題 開発 運用 Ops ビジネスの 価値提供と改善
DevOps による戦略的な IT へ 再現しない! Dev ビジネスの アイデアや課題 Ops 1 アプリの特例 を認めない! 開発 運用 Dev ビジネスの 価値提供と改善
DevOps による戦略的な IT へ課題 日々の仕事 日々の仕事 再現しない! 問題への視点… Dev Ops 問題への視点… ガバナンス! 責務の期間 開発 運用 責務の期間
DevOps の課題の解決策
Biz + IT (Dev + Ops) の共有ゴール アイデア BUILD LEARN Dev Ops データ Biz プロダクト MEASURE
Biz + IT (Dev + Ops) の共有ゴール サイクル タイム ビジネス アイデアを 定期的に短いリズム で効果的なビジネス 価値として提供して ほしい。 Dev Ops Biz MTTR (平均解決時間) IT の問題による ビジネス価値の低下を 最小限にしてほしい。
ビジネス アイデア Dev Ops サイクルタイム 動くソフトウェア MTTR (平均解決時間)
ビジネス アイデア 自動化 ムダ取り 共有ゴール Dev サイクルタイム Ops MTTR サイクルタイム 共同所有 動くソフトウェア MTTR (平均修復時間) 透明性
ビジネス アイデア 運用が欠如した 受け入れ基準と優先順位 実行可能なフィードバックの 欠如による MTTR の長期化 ビジネス価値との相関 関係が不明瞭 技術的負債の蓄積 運用を考慮した 設計とテストの欠如 Dev Ops 本番稼働中の障 害への対応 長い開発とテスト の仕掛かり 運用準備が整わない ソフトウェア 長いデプロイの仕掛かり デバッグが困難な 本番環境での対応 開発と運用の ワークフローの相違 と分離 動くソフトウェア
ビジネス アイデア 運用を考慮した バックログと定期的な 優先順位の見直し 実行可能なフィードバックの 自動化/省力化 ビジネス価値を中心とした フィードバックとデータ収集/蓄積 レガシーコード の把握と改善 Dev 継続的テストの 実践 継続的 インテグレーション Ops 本番環境に影響を 与えない診断/ デバッグ 本番稼働環境での テストの実施 疑似本番環境での ラボ自動化 統合されたツールセットと 最適なワークフロー連携 常に運用可能な開発成果物 の透明性/トレーサビリティ 構成とデプロイ の自動化 成果物の共同所有 動くソフトウェア
課題: 運用が欠落した受け入れ基準と優先順位 本番稼働中の障害への対応(診断困難) 実行可能なフィードバックの欠如による MTTR の長期化 解決策: 運用を考慮したバックログと定期的な優先準備の見直し 本番稼働環境でのテストの実施 成果物の共同所有と最適なワークフロー 本番稼働環境での ・デバッグを可能 ・テストの実施 運用監視での ・問題の早期特定 ・開発との共同所有 MTTR の短縮により ビジネス価値の最大化
障害分析/診断 新規アラート トリアージ / 意思決定 アプリ起因と 判断 新規の障害 改修依頼/情報提供 開発者アサイン 改修依頼 作業中 情報提供 情報要請 解決 / 完了 デプロイ 改修/テスト/ビルド デプロイ 完了 本番稼働環境での ・デバッグを可能 ・テストの実施 運用監視での ・問題の早期特定 ・開発との共同所有 MTTR の短縮により ビジネス価値の最大化
課題: 運用準備が整わないソフトウェア 長いデプロイの仕掛かり 開発と運用のワークフローの相違と分離 解決策: 常に運用可能な開発成果物の透明性と追跡可能性 成果物の共同所有 十分検証され、認定された構成とデプロイの自動化と利用 要求からビルドまで の成果物の透明性と 追跡可能性を 共同所有する IT 操作を自動化し、 Runbook を共有、 開発プロセス/運用 プロセスを統合する サイクルタイムと MTTR の短縮化と正しい デプロイメントの実施
開発ライフサイクルと成果物のトレーサビリティ タスク コード 要求 ビルド テスト TFS バグ ✔ DB バックアップ サービス デプロイ 本番環境での テスト IT オーケストレーション (Runbook) 要求からビルドまで の成果物の透明性と 追跡可能性を 共同所有する IT 操作を自動化し、 Runbook を共有、 開発プロセス/運用 プロセスを統合する ロール バック DB リストア × サイクルタイムと MTTR の短縮化と正しい デプロイメントの実施
開発ライフサイクルと成果物のトレーサビリティ タスク コード 要求 ビルド テスト 自動ビルド → 自動デプロイ TFS バグ ✔ DB サービス バックアップ デプロイ 本番環境での テスト IT オーケストレーション (Runbook) 要求からビルドまで の成果物の透明性と 追跡可能性を 共同所有する IT 操作を自動化し、 Runbook を共有、 開発プロセス/運用 プロセスを統合する ロール バック DB リストア × サイクルタイムと MTTR の短縮化と正しい デプロイメントの実施
課題: 運用を考慮した設計とテストの欠如 長い開発とテストの仕掛かり 運用準備が整わないソフトウェア 解決策: 継続的インテグレーション / 継続的テストの実施 可能な限り本番稼働環境に近いラボ環境の実現と自動化 常に運用可能な開発成果物の透明性と追跡可能性 開発/テストの工程 に依らずにテストを 共同利用し、ラボ 環境で継続的に実施 継続的にテストを 行えるための 本番稼働環境の情報 と仮想化構成を提供 常に品質が見える化され 信頼と安心のもとで ビジネス価値の創造と 変更に注力できる
開発者によるテスト テスター/ユーザーによるテスト 自動テスト (ロジック/UI/DB) 手動テスト / 自動テスト (シナリオ/UI/パフォーマンスなど) ラボ環境 本番稼働環境 テスト構成 ライブラリ化 継続的インテグレーションによるテスト 自動テスト (ロジック/UI/DB/シナリオ) 開発/テストの工程 に依らずにテストを 共同利用し、ラボ 環境で継続的に実施 継続的にテストを 行えるための 本番稼働環境の情報 と仮想化構成を提供 常に品質が見える化され 信頼と安心のもとで ビジネス価値の創造と 変更に注力できる
まとめ
DevOps 1 2 3 DevOps はムーブメント Dev と Ops の協調による戦略的な IT プラクティスとツールが成熟
Business ビジネス アイデア Dev Ops 動くソフトウェア
ビジネスのために、アプリを主役に 器中心のシステム運用からの脱却と進化へ 器: 仮想マシン、XXクラウド
IT 全体を見直す枠組みの確立 データインサイト DevOps データからビジネス開発 (業務データとソーシャル) ビジネスのための IT へ 開発と運用の継続性 アプリケーション開発・実行環境が中心 Transform the Datacenter サーバー サーバー ネットワーク ストレージ アプリ設計を変えられるような進化
ソフトウェア開発環境の最新動向と無償出張セミナー http://aka.ms/ALMjp ソフトウェア開発環境の最新動向を 1 ページで! 原理原則 | 事例 | 製品 | 書籍 http://aka.ms/VsPrincipalSeminar 無償で あなたの現場で セミナーを実施できます! DevOps | ALM | Agile | TFS | Visual Studio | DevDiv 事例
ご清聴ありがとうございました ✉ [email protected] Twitter: @tomohn http://SoftwareEngineeringPlatform.com © 2013 Microsoft Corporation. All rights reserved. ここに記載されている内容は情報の提供のみを目的としており、このプレゼンテーションの発表時における Microsoft Corporation の見解を示すものです。マイクロソフトは市場の変化に対応する必要があるため、この資料の情報は、マイクロソフトの確約とは見なされないものとします。マイクロソフトは、マイク ロソフトは、このプレゼンテーションの発表日以降に提供される情報の正確性を保証するはできません。 明示、黙示または法律の規定にかかわらず、マイクロソフトは、このプレゼンテーションに関する一切の保証を行いません。