dev ops 簡介

21
DevOps 簡單介紹 Hugo

Upload: hugo-lu

Post on 16-Apr-2017

223 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Dev ops 簡介

DevOps 簡單介紹

Hugo

Page 2: Dev ops 簡介

DevOps是什麼?

• DevOps = Development + Operations

• [Wiki] DevOps是⼀一組過程、⽅方法與系統的統稱,⽤用於促進開發、技術運營和質量保障部⾨門之間的溝通、協作與整合。它的出現是由於軟體⾏行業⽇日益清晰地認識到:為了按時交付軟體產品和服務,開發和運營⼯工作必須緊密合作。

Page 3: Dev ops 簡介

打破部⾨門間的⾼高牆

Code Build Test Release Deploy Operate

Dev Ops?

Code Build Test Release Deploy Operate

DevOps

Page 4: Dev ops 簡介

與其介紹 DevOps 我想說的其實是 CD

Continuous Delivery (持續交付)

Page 5: Dev ops 簡介

來談談如何 快速交付⾼高品質的軟體

的⽅方法

Page 6: Dev ops 簡介

說得⽐比做得好聽

Page 7: Dev ops 簡介

事實上,不只好聽⽽而且好玩

Page 8: Dev ops 簡介

Store Load

Play

Page 9: Dev ops 簡介

所有內容做版本控制• Source Code

• Test Code

• Build Script

• Deploy Script

• Compiler/Toolchain

• Libraries

• Third Party Application

• Servers

• Database Schema

• Configuration Files

• Environment Infrastructure as Code

Page 10: Dev ops 簡介

所有流程做到⾃自動化

• Build Automation

• Deploy Automation (部署到測試環境)

• Test Automation

• Release Automation (發布到⽣生產環境)

Page 11: Dev ops 簡介

時間⼈人⼒力花在⼑刀⼝口上

⾃自動

功能性驗收測試

⼿手動

演⽰示 易⽤用性測試 探索性測試

單元測試 整合測試 系統測試

⾃自動

⾮非功能性驗收測試 容量測試 安全性測試

⼿手動/⾃自動

業務導向

技術導向

開發過程 評判專案

Page 12: Dev ops 簡介

任何變更都觸發驗證

Page 13: Dev ops 簡介
Page 14: Dev ops 簡介

頻繁地⾃自動化發布 就能快速破關、拿⾼高分

Page 15: Dev ops 簡介

DevOps單元測試

⾃自動化

驗收測試

版本控制

持續整合

探索性測試

容量測試

頻繁發布

配置管理

代碼分析

冒煙測試虛擬化

依賴注⼊入

Page 16: Dev ops 簡介

單元測試看起來像...

Page 17: Dev ops 簡介

驗收測試看起來像...Feature: 瀏覽權限

Scenario: 有權限瀏覽紀錄 Given 設定可視網段192.168.1.0/24 And 資料庫有⼀一筆192.168.1.10的紀錄 When 使⽤用者按下查詢按鈕 Then 顯⽰示 1 筆連線紀錄

Scenario: 無權限瀏覽紀錄 Given 設定可視網段192.168.1.0/24 And 資料庫有⼀一筆192.168.2.10的紀錄 When 我按下查詢按鈕 Then 顯⽰示 0 筆連線紀錄

Page 18: Dev ops 簡介

版本控制看起來像...

Page 19: Dev ops 簡介

⾃自動部署看起來像...

Page 20: Dev ops 簡介

虛擬化看起來像...

Page 21: Dev ops 簡介

參考資料• 為什麼會出現DevOps?

http://www.ithome.com.tw/news/96861

• Continuous Delivery (中⽂文版) http://www.books.com.tw/products/0010653820

• Continuous Integration (英⽂文版) http://www.books.com.tw/products/F010981911

• User Story / ATDD / BDD / TDD - 總結https://msdn.microsoft.com/zh-tw/library/dn308252.aspx