Continuous Delivery can help large organizations become as lean, agile and innovative as startups. Through reliable, low-risk releases, Continuous Delivery makes it possible to continuously adapt software in line with user feedback, shifts in the market and changes to business strategy. Test, support, development and operations work together as one delivery team to automate and streamline the build, test and release process.
4. 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
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 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
11. Main challenges brought by IoT
• More targeting platforms
• More targeting devices
• Difficult delivery process
• Connectivity
• Big Data
• Security
• Power efficiency
14. Evolution from Monolithic to Microservice
Desktop
Client
Server
Browser
Web
Server
Db Server
Any Device
microservices
API Proxy
15. 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
16. 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
21. 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
23. 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