quality management in continuous delivery and dev ops world pm footprints v1
TRANSCRIPT
1
Software Quality Management in Continuous Delivery and DevOps World
Anish Cheriyan, Director Quality, Huawei 16 June 2016
2
Topics
• Traditional Quality Management• DevOps• Quality Practices in Detail• Summary
3
Background
• Application & Embedded Development.• Network Management System• Protocol Stack
4
Traditional Quality Management
Gated Approach for Quality Assurance
5
PMI- Project Quality Management
Picture Courtesy: http://www.slideshare.net/immmrann/project-quality-management-pmi-pmbok-knowledge-area/27
6
DevOps
DevOps is a set of practices intended to reduce the time between committing a change to a system and the change being placed into normal production, while ensuring high quality
7
Security
Picture Courtesy: http://threatgeek.typepad.com/.a/6a0147e41f3c0a970b01a73dba51f6970d-pi
‘To err is human, to really screw up you need root password’
8
SecOps
SecOps built into the Deployment Pipeline. Dev & Ops Collaborate and ensure desired level of Security
Picture Courtesy: http://threatgeek.typepad.com/.a/6a0147e41f3c0a970b01a73dba51f6970d-pi
9
Case Study
• Consider and CRM System which uses a Modeling tool to automate the business processes.
• The system which has two key parts-Workflow Engine and Workflow Modeling tool (UI) team . Workflow Engine works based on the rule engine. Modeling Tool uses the Engine. Total team size is around 60.
• What are factors you will consider to designing your Continuous Delivery Architecture.
10
Short Feedback Loops
DevOps
Delivery
Deployment
Picture Coutesy: https://www.flickr.com/photos/
11
•Requirement documentation at right granularity
•OPS Perspective- deployability, modifiability, monitoribility
Requirements
Picture Coutesy: https://www.flickr.com/photos/libramano/9372711893/
12
. Architecture Readiness for CD- deployability, modifiability, monitoribility , testability
. Continuous Delivery Architecture
. Build Pipeline
Architecture
Picture Coutesy: https://www.flickr.com/
13
Infrastructure Readiness
•Environment Provisioning based on customer requirement analysis (OPS)
•Right Tool Usage (VM, Container like Docker etc) for the respective requirement
Picture Coutesy: https://www.flickr.com/
14
Build Pipeline
http://blog.xebialabs.com/2016/02/09/how-ing-increased-software-deployments-to-twice-a-day/continuous-deployment-pipeline/
15
Syst
em A
rchi
tect
ure
L1C
I Arh
itect
ure
L2D
eplo
ymen
t Pi
pelin
eL3
C1
C2
C3
M1
C1 Continuous Integration System
C2 Continuous Integration System
C3 Continuous Integration System
C1 Deployment Pipeline
C2 Deployment PipelineC3 Deployment Pipeline
Hierarchical Approach for CD and DevOps
16
Quality Assurance in the Pipeline
17
Inspection/Static QA
Simian Rules for managing the rules
18
Test QA
Read at : http://www.thinkinginagile.com/2015/07/agile-testing-practices-mapped-to.html
19
Security Assurance
20
Configuration QA
• Single Source Repository for all items
• Build Script Quality (abstraction, modularization, coding guidelines) (Automatic or manual way)
21
Analysis of the Build Pipeline
BuildPrivate Build
Version Build
Function Build ities Build
Deployment Build
Build 01 Pass Pass Fail Fail FailBuild 02 Pass Pass Pass Fail FailBuild 03 Pass Pass Fail Fail FailBuild 04 Pass Pass Pass Fail FailBuild 05 Pass Pass Fail Fail FailBuild 06 Pass Pass Fail Fail FailBuild 07 Pass Pass Fail Fail Fail
22
Test your Deployment pipeline
Repeatabili
ty
Performan
ce
Reliability
Recoverability
Interoperability
Testability
Modifiabilit
y
23
Cross Cutting Collaboration
24
Summary
• Quality management has to be seen in different view in the context of continuous delivery mode of development
• Continuous attention to technical excellenceand good design enhances agility
• Lets Build Quality & Security into the deployment pipeline