Continuous Delivery
Development Process Community
Sergey Seletsky
Software Architect
Agenda
• What’s wrong with Scrum?
• Evolution
• Continuous Delivery
• The Era of IoT
• Software Architecture
• Continuous Deployment
• Conclusions
What’s wrong with Scrum?
What’s wrong with Scrum?
• Sprints vs. releases or: what are sprints for?
• Time boxing or bad fit for SaaS delivery model
• No junk in the trunk and code freeze
• Automate your testing
• Automate your deployments
• Changing your definition of done
Evolution
Methodology
Process
Patterns
Platform
Waterfall Agile Lean Engineering
Continuous Delivery
Microservice Architecture
Cloud
Scrum
3-Tier Layered
Windows / Linux
Gated
2-Tier Monolithic
Windows
Device Any DeviceBrowserDesktop
Delivery matters
Continuous Delivery
But first - remember, what is Lean?
• Methodology like Agile
• Main principles
1. Waste elimination
2. The highest quality
3. Delivery ASAP
4. Customer satisfaction
5. Continuous optimization
What is Continuous Delivery?
• Development process (like Scrum)
• Based on Lean Engineering (not Agile)
• Main purpose: fast delivery
• Main practices:
1. Automation testing
2. Continuous integration
3. Continuous deployment
4. Continuous optimization
The Era of IoT
Main challenges brought by IoT
• More targeting platforms
• More targeting devices
• Difficult delivery process
• Connectivity
• Big Data
• Security
• Power efficiency
Software Architecture
Microservice
Evolution from Monolithic to Microservice
Desktop
Client
Server
Browser
Web
Server
Db Server
Any Device
microservices
API Proxy
Microservices are…
• A microservice is a self-contained unit of functionality with loosely
coupled dependencies on other services.Autonomous
• A microservice is a unit of deployment that can be modified,
tested and deployed as a unit without impacting other areas of a
solution
Isolated
• A microservice can be stateful or stateless and can be scaled
independently of other servicesElastic
• A microservice is fault tolerant and highly availableResilient
• A microservice responds to request in a reasonable amount of
timeResponsive
Microservices are…
• The intelligence in a system is found in the endpoints not on the
wire. ESB is an anti-pattern to Microservices.Intelligent
• Microservices rely on asynchronous message-passing to establish
a boundary between componentsMessage Oriented
• Microservices provide API’s for access by developers and
administrators and Applications are composed from multiple
microservices
Programmable
• Microservices provide an API and/or a console that provides
access to administrative operationsConfigurable
• The lifecycle of a microservice is managed through automation
that includes dev, build, test, staging, production and distributionAutomated
Deployment matters
Continuous Deployment
Continuous Deployment Pipeline
Xamarin Continuous Deployment Pipeline
Deployment Governance
VM’s
VM
VM
VM
OrderCustomer
Reference Data
Deployment Governance
Web Hosting Plans & Resource Groups (Azure)
Resource Group A
Resource Group B
Resource Group C
OrderCustomer
Reference Data
Web Hosting Plan A Web Hosting Plan B Web Hosting Plan C
Deployment Governance
Docker
Order Containers
Customer ContainerReference Data Container
VM VM
Workflow Container
Reading
Domain Driven Design
Eric Evans
Continuous Delivery
Jez Humble
David Farley
Lean Enterprise
Jez Humble
Joanne Molesky
Barry O’Reilly
Building Microservices
Sam Newman
USA HQ
Toll Free: 866-687-3588
Tel: +1-512-516-8880
Ukraine HQ
Tel: +380-32-240-9090
Bulgaria
Tel: +359-2-902-3760
Germany
Tel: +49-69-2602-5857
Netherlands
Tel: +31-20-262-33-23
Poland
Tel: +48-71-382-2800
UK
Tel: +44-207-544-8414
EMAIL
info@softserveinc.com
WEBSITE:
www.softserveinc.com
Questions?
USA HQ
Toll Free: 866-687-3588
Tel: +1-512-516-8880
Ukraine HQ
Tel: +380-32-240-9090
Bulgaria
Tel: +359-2-902-3760
Germany
Tel: +49-69-2602-5857
Netherlands
Tel: +31-20-262-33-23
Poland
Tel: +48-71-382-2800
UK
Tel: +44-207-544-8414
EMAIL
info@softserveinc.com
WEBSITE:
www.softserveinc.com
THANK YOU!

Continuous delivery by sergey seletsky

  • 1.
    Continuous Delivery Development ProcessCommunity Sergey Seletsky Software Architect
  • 2.
    Agenda • What’s wrongwith Scrum? • Evolution • Continuous Delivery • The Era of IoT • Software Architecture • Continuous Deployment • Conclusions
  • 3.
  • 4.
    What’s wrong withScrum? • Sprints vs. releases or: what are sprints for? • Time boxing or bad fit for SaaS delivery model • No junk in the trunk and code freeze • Automate your testing • Automate your deployments • Changing your definition of done
  • 5.
    Evolution Methodology Process Patterns Platform Waterfall Agile LeanEngineering Continuous Delivery Microservice Architecture Cloud Scrum 3-Tier Layered Windows / Linux Gated 2-Tier Monolithic Windows Device Any DeviceBrowserDesktop
  • 6.
  • 7.
    But first -remember, what is Lean? • Methodology like Agile • Main principles 1. Waste elimination 2. The highest quality 3. Delivery ASAP 4. Customer satisfaction 5. Continuous optimization
  • 8.
    What is ContinuousDelivery? • Development process (like Scrum) • Based on Lean Engineering (not Agile) • Main purpose: fast delivery • Main practices: 1. Automation testing 2. Continuous integration 3. Continuous deployment 4. Continuous optimization
  • 10.
  • 11.
    Main challenges broughtby IoT • More targeting platforms • More targeting devices • Difficult delivery process • Connectivity • Big Data • Security • Power efficiency
  • 13.
  • 14.
    Evolution from Monolithicto Microservice Desktop Client Server Browser Web Server Db Server Any Device microservices API Proxy
  • 15.
    Microservices are… • Amicroservice is a self-contained unit of functionality with loosely coupled dependencies on other services.Autonomous • A microservice is a unit of deployment that can be modified, tested and deployed as a unit without impacting other areas of a solution Isolated • A microservice can be stateful or stateless and can be scaled independently of other servicesElastic • A microservice is fault tolerant and highly availableResilient • A microservice responds to request in a reasonable amount of timeResponsive
  • 16.
    Microservices are… • Theintelligence in a system is found in the endpoints not on the wire. ESB is an anti-pattern to Microservices.Intelligent • Microservices rely on asynchronous message-passing to establish a boundary between componentsMessage Oriented • Microservices provide API’s for access by developers and administrators and Applications are composed from multiple microservices Programmable • Microservices provide an API and/or a console that provides access to administrative operationsConfigurable • The lifecycle of a microservice is managed through automation that includes dev, build, test, staging, production and distributionAutomated
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
    Deployment Governance Web HostingPlans & Resource Groups (Azure) Resource Group A Resource Group B Resource Group C OrderCustomer Reference Data Web Hosting Plan A Web Hosting Plan B Web Hosting Plan C
  • 22.
    Deployment Governance Docker Order Containers CustomerContainerReference Data Container VM VM Workflow Container
  • 23.
    Reading Domain Driven Design EricEvans Continuous Delivery Jez Humble David Farley Lean Enterprise Jez Humble Joanne Molesky Barry O’Reilly Building Microservices Sam Newman
  • 24.
    USA HQ Toll Free:866-687-3588 Tel: +1-512-516-8880 Ukraine HQ Tel: +380-32-240-9090 Bulgaria Tel: +359-2-902-3760 Germany Tel: +49-69-2602-5857 Netherlands Tel: +31-20-262-33-23 Poland Tel: +48-71-382-2800 UK Tel: +44-207-544-8414 EMAIL info@softserveinc.com WEBSITE: www.softserveinc.com Questions?
  • 25.
    USA HQ Toll Free:866-687-3588 Tel: +1-512-516-8880 Ukraine HQ Tel: +380-32-240-9090 Bulgaria Tel: +359-2-902-3760 Germany Tel: +49-69-2602-5857 Netherlands Tel: +31-20-262-33-23 Poland Tel: +48-71-382-2800 UK Tel: +44-207-544-8414 EMAIL info@softserveinc.com WEBSITE: www.softserveinc.com THANK YOU!