nisi introductie continuous delivery 3.0
TRANSCRIPT
Continuous Delivery 3.0Velocity Culture: “Amazon releases software every
11.6 seconds”, Amazon 2011
Introduction course Continuous Delivery 3.0 Organized by:
◦ Utrecht University◦ Netherlands Institute for the Software Industry◦ NederlandICT
http://www.nederlandict.nl/ http://nisi.nl
2
Continuous Delivery 3.0
Help companies to cope with fast moving markets Advance participants knowledge about Continuous Delivery 3.0 Help participants to implement CD 3.0 in their organizations Knowledge sharing between Continuous Delivery experts of
different companies Certification by NISI
3
Course Objectives
Course is part of the Netherlands Institute for the Software Industry
NISI is a spin-off of Utrecht University Mission: provide (scientific) knowledge in practical
courses to advance the software industry With the results we fund new scientific research
4
NISI
5
NISI core team
Dr. Jan Vlietland has a doctorate in Agile eco-systems, is co-founder and head of NISI, and has been working in the software industry for over 20 years.
Prof. Sjaak Brinkkemper is head of the faculty of Information and Computer Science and professor at Utrecht University, and NISI initiator.
Dr. Slinger Jansen is assistant professor at the faculty of Information and Computer Science of Utrecht University, and heads research at large software companies.
Garm Lucassen performs PhD research about User Stories.
Theme: Agility of software companies
Research themes ◦ Continuous Delivery platforms◦ Agile scaling◦ Social networks and Agile company culture
6
Research Agenda
7
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
Continuous Delivery enables fast delivery of new software to the market, with technology that integrates, tests en distributes software in a fast pace
But what do you need to have in place to enable such delivery? And how to grasp the need of your customers and market? How do your select the right features to deliver customer oriented
software?
This course offers answers to these questions! We take modern software companies as an example and go in the
details of a Continuous Delivery 3.0 cycle from concept to cash.
8
Market theme
9
Agile/Scrum
Product
BacklogScrum Master
ProductOwner
Developmentteam
Customers
10
Continuous Delivery 3.0 overview
ContinuousTesting
ContinuousDeployment
Continuous Integration
ContinuousPlanning
Continuous Tracking
Name, company, function, product What is your biggest Continuous Delivery (3.0) impediment? What is the expected added value of this workshop?
Participants Needs
11
Continuous Delivery topics
Check-out &
Check inBuild
Check Code
Quality
Store in
respositoryUnit
testingAcceptance
testingPerformance
testing
Deploy on
acceptance
Deploy on
performanceenvironment
Deploy to
production
ContinuousTesting
ContinuousDeployment
Continuous Integration
13
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
14
Continuous Integration
Continuous Delivery workflow manager
Check-out &
Check in
Build & Document generation
Check Code
Quality
Store in
respositoryUnit
testing
SourceCode
Repository
Build Processor
& DocumentGenerator
Code Quality Checker
Unit Test Runner
ComponentRepository
15
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
16
Continuous TestingStore
in respository
Unit testing
Acceptance testing
Performance
testing
Deploy on
acceptance
Deploy on
performanceenvironment
Deploy to
production
Continuous Delivery workflow manager
Unit Test Runner
System Tests
Acceptance Tests
Performance Tests
17
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
18
Continuous DeploymentStore
in respository
Unit testing
Acceptance testing
Performance
testing
Deploy on
acceptance
Deploy on
performanceenvironment
Deploy on
production
Continuous Delivery workflow manager
Deploy on
Acceptance
Deploy on
PerformanceEnvironment
Deploy for A/B Testing on
ProductionDeploy on Production
19
Stack Building
Application
Configuration
Infrastructure
Application
Configuration
Host Operating System
Platform (b.v. Docker Engine)
Host Operating System
Bin/Libs Bin/Libs
Hypervisor
Application
Configuration
Application
Configuration
Bin/Libs Bin/Libs
Guest OS Guest OS
20
Questions & Answers
ContinuousTesting
ContinuousDeployment
Continuous Integration
21
Pause
22
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
23
Continuous Delivery 3.0 overview
ContinuousTesting
ContinuousDeployment
Continuous Integration
ContinuousPlanning
Continuous Tracking
ContinuousPlanning
Continuous Tracking
Continuous Tracking topics
Data Collecting
Data Analyzing
ResultReporting
Sources App & Browser Social Media Client Contact
Types Qualitative Quantitative Offline Online
25
Data Collection sources Data Collecting
Session Reply – recordings of real user sessions. Provides insight of user actions. User Heatmaps – offers insight about app or web usage by visualizing screen usage
of multiple users. Real-time In-App data – offers data to help understand user engagement, such as
activities, underlying platform, underlying hardware, and geographical distribution. Crash Recordings- automatic detection and storage of crashed sessions. Auto-Detect UI Problems – detect of unresponsive actions of users, such as tapping,
swiping and pressing.
26
Data Collection technieken Data Collecting
Correlation Analysis - researches the relationships between variables Regression Analysis – researches the causal relationship between one or
more independent variables and a dependent variable Monte Carlo – simulation method in which a physical process is simulated
many times, each time with different starting conditions Neural networks - analyzing mathematical models with a neural network,
by recognizing patterns and manipulating data
28
Data Analyzing Methods Data Analyzing
29
Information Reporting ResultReporting
Tools: https://www.adpushup.com/blog/web-analytics-tools-google-analytics-alternatives/
30
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
ContinuousPlanning
Continuous Tracking
Continuous Planning topics
Data Collecting
Data Analyzing
ResultReporting
Agile Road
mapping
Agile Epic
Planning
Agile Backlog Planning
32
Continuous Portfolio Planning
Large development chunks
More traditional releases?
Sprint
SprintSprint
DD
D
Epic
Story
Task
Feature
Agile Epic
Planning
33
Continuous Planning RoadmapAgile Road
mapping
Epic 2016Q4 2017Q1 2017Q2 2017Q3 2017Q4Integrate with partner app
Improve UI conversion rate
Automate IT Operations
Agile Backlog Planning
Agile business cases Managing deadlines Supply based planning Fast laning (e.g. Incident Handling) Agile Scaling automation
34
Continuous Planning specials
35
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
ALM
Dimensions Data Modeler
Dimensions SQL developer
SMART-R SMART-T
36
Continuous Delivery 3.0 ToolingSCM Build Integrate Quality Store Test DeployPlanTrack
37
Cloud Offering
√ √ √ √ √ √ √ √√ √ √ √ √√ √ √ √ √
SCM Build Integrate Quality Store Test DeployPlanTrack
Remark: Volunteers for research wanted
38
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
Continuous Delivery 3.0 Maturity Assessment Continuous Delivery 3.0 Growth Model Typical Improvement Roles Improvement management Engagement factors
39
Continuous Improvement
SCM Build Integrate Quality Reposit. Test DeployPlanTrack
40
Questions & Answers
ContinuousTesting
ContinuousDeployment
Continuous Integration
ContinuousPlanning
Continuous Tracking
41
Agenda Introduction Continuous Integration Continuous Testing Continuous Deployment Questions & Answers Pause Continuous Tracking Continuous Planning Tooling & Cloud Continuous Improvement Questions & Answers Closure
Continuous Delivery 3.0 full lifecycle support Deep-dive in each of the topics Overview Continuous Delivery tooling Local, cloud en mixed solutions Continuous Improvement, tips & tricks Mix of theory, practice and knowledge sharing
42
Summary Course
Session Date Topic Teacher
1 18 jan Introductie en CD 3.0 Jan Vlietland2 25 jan Continous Integration Jan Vlietland, visiting lecturer3 01 feb Continous Testing Jan Vlietland, visiting lecturer4 08 feb Continous Deployment Jan Vlietland, visiting lecturer5 15 feb Continous Tracking Jan Vlietland, visiting lecturer6 22 feb Continous Planning Jan Vlietland7 01 mrt Cloud Solutions Jan Vlietland, special guests8 08 mrt Continuous Improvement Jan Vlietland
43
Course dates and Topics
Certificate of Netherlands Institute for the Software Industry
Plan for European credits and European certification such as Software Product Management
44
Continuous Delivery 3. 0 Certificate
Knowledge development Knowledge sharing Connecting the Software Industry
45
Workgroup Continuous Delivery 3.0
1. Continuous Delivery 3.02. Software Product Management3. Advanced Model Driven Engineering4. Business Development for Managers of Software Companies5. Feedback Platforms for Software Product Managers6. Agile & Waterfall Hybrids and Agile Scaling7. Agile Product Ownership
46
NISI course overview