This article is focus on DevOps conception and tech you what is DevOps, and then provide you metric to evaluate if you are ready for DevOps.
Definition
DevOps is an approach based on lean and agile principles inwhich business owners and the development, operations, and quality assurancedepartments collaborate to deliver software in a continuous manner that enablesthe business to more quickly seize market opportunities and reduce the time toinclude customer feedback. (IBM – DevOps for Dummies)
DevOps (a clipped compound of development and operations) is a culture, movement or practicethat emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals whileautomating the process of software delivery and infrastructure changes. Itaims at establishing a culture and environment where building, testing, and releasing software, can happen rapidly, frequently, andmore reliably. (Wikipedia)
A true DevOps approach includes lines of business,practitioners, executives, partners, suppliers, and so on.
Reference Architecture
To practice DevOps effectively, software applications have tomeet a set of ArchitecturallySignificant Requirements (ASRs) such as deployability,modifiability, testability, and monitorability. These ASRs require a highpriority and cannot be traded off lightly.
Although in principle it is possible to practice DevOps withany architectural style, the microservices architecturalstyle is becoming the standard for building continuously deployed systems. Becausethe size of each service is small, it allows the architecture of an individualservice to emerge through continuous refactoring, hence reduces the need for abig up front design and allows for releasing the software early andcontinuously.
Tool Chain
· Code – CodeDevelopment and Review, continuous integration tools
· Build – Version control tools, code merging, Build status
· Test – Test andresults determine performance
· Package – Artifact repository, Application pre-deployment staging
· Release – Changemanagement, Release approvals, release automation
· Configure –Infrastructure configuration and management, Infrastructure as Code tools
· Monitor – Applicationsperformance monitoring, End userexperience
Adoption
· Use of agile andother development processes and methods
· Demand for anincreased rate of production releases from application and business unit stakeholders
· Wide availabilityof virtualized and cloud infrastructure frominternal and external providers
· Increased usageof data center automationand configuration management tools
· Increased focuson test automation and continuous integration methods
· A critical massof publicly available best practices
Evaluation Metrics
DevOps Requirement | Our Assessment | ||||
Category | Item | Adopted | In-Progress | Not started | |
Culture Change | Mindset |
|
|
| |
Collaboration |
|
|
| ||
Architecture | Microservices Architectural Style |
|
|
| |
Deployability |
|
|
| ||
Modifiability |
|
|
| ||
Testability |
|
|
| ||
Monitorability |
|
|
| ||
Tool Chain | Code | Development and Review Continuous Integration tools |
|
|
|
Build | Version control tools Code merging Build status |
|
|
| |
Test | Test and results determine performance |
|
|
| |
Package | Artifact repository Application pre-deployment staging |
|
|
| |
Release | Change management Release approvals Release automation |
|
|
| |
Configure | Infrastructure configuration and management Infrastructure as Code tools |
|
|
| |
Monitor | Applications performance monitoring End user experience |
|
|
| |
Adoption | Use of agile and other development processes and methods |
|
|
| |
Demand for an increased rate of production releases from application and business unit stakeholders |
|
|
| ||
Wide availability of virtualized and cloud infrastructure from internal and external providers |
|
|
| ||
Increased usage of data center automation and configuration management tools |
|
|
| ||
Increased focus on test automation and continuous integration methods |
|
|
| ||
A critical mass of publicly available best practices |
|
|
|