- definition of devops
DevOps = efficiencies that speed up software development lifecycle
Start with Culture
- Shift from a fear of failure, to a fail-fast, fail-forward approach.
- Shift from a tech obsession, to a customer obsession. In today’s digital world, it can be so easy to get caught up with tech buzzwords such as mobile, wearables and cloud. But the rules of business have not changed. Deliver what your customers want, delight them, and hopefully they will help to promote your brand. This means that every employee has to think about the external customer, their needs, their wants in order to guide strategic decisions. It’s about moving from an inside-out to an outside-in operating model.
- Shift from organizational silos to a collaborative model. Let’s face it, the desire for collaboration across different business functions has always been a goal. But collaboration is never as good as it can be. I could write a whole book about why, but largely this is because business = people = different agendas = politics = failure to collaborate. To move fast, deliver quality software rapidly, and then it’s essential we get collaboration right. This is not just about collaboration between Dev and Ops, but an operating model that promotes collaboration across business functions (e.g. digital teams, marketing), development and operations.
- Shift from big data confusion to real-time information driven insight. In the fast moving world of DevOps information and insights in context will be your business lifeline. This means that having application data such as engagement, technical and business data (revenue etc.) changed quickly into information that can be consumed by different business audiences is essential to making fact-based strategic decisions. So we have to move away from the current confusion around big data and analytics and shift to an operating model that makes an analytics solution that focuses on applications, a core part of making strategic decisions in regards to software strategy.
Continuous delivery : can deploy to production
Continuous deployment: do deploy to production
Automate all the things: build, deploy, test
Configuration management
Continuous integration
Why continuous delivery? benefits:
. . reduce deployment risk
. . Believable progress(real progress)
. . user feedback
.. Breaking Down the SILOs
From traditional Monolithic delivery to new microservices approach
Not good as one bug will block whole release
In microservice, it could be changed to below, bug only block one small deployment
via container
Definition of microservice
Loosely coupled service oriented architecture with bounded contexts
Coupling concerns
.. Conway's law - organizational coupling
.. Centralized Database schemas
.. Enterprise Service Bus-Centralized message queues
.. Inflexible Protocol versioning
Microservice considerations