Planit views DevOps in six critical segments. Before embarking on a DevOps journey, it is important to measure current capability in each area and establish or validate a future state.
Since DevOps isn’t a one size fits all solution, customers only need to adopt relevant aspects. This includes:
- Planning & Definition
- Developing & Building
- Releasing & Deploying
- Monitoring & Reviewing
- Continuous Improvement
Plan & Define
Planning sets the tone for an effective software development lifecycle. Visibility and traceability are key to accurate estimation, which is a catalyst for trust and collaboration.
Project team visibility. From stakeholders to release engineers to operations – everyone is a part of the team.
Planning is a team effort. Balance exists between business need and technical bandwidth.
Each iteration is followed by honest evaluation. What worked, what didn't work, and what can be improved upon.
Business requirements are traced to user stories, coding tasks, builds, tests, and deployments.
Develop & Build
Building quality software starts with standards and well-defined processes. It is critical to automate wherever possible so that developers can focus on developing.
Standards and processes define how product is securely built, tested and deployed. They ensure software is maintainable and extendable.
Every change is controlled, visible, and traceable throughout the project lifecycle.
A practice of workflow that enforces developer collaboration to enable a shift left testing strategy.
Fit for purpose tools and frameworks are leveraged to support your requirements, processes and technologies.
Product quality is measured almost instantaneously when your test assets support a continuous delivery model.
Testing of user stories at the client UI validates the business needs have been met.
Testing of the interfaces between system components validates total application integrity.
Validates the downstream components of the client app respond within stated response times.
Shift left, test early. Use intelligent stubs to validate an application when components are missing.
Release & Deploy
Frequent releases are critical to getting product into the hands of your customer, and the driver of the continuous feedback loop.
If the DevOps pipeline is not visible to the team, you are not ready to deploy software.
Information is immediately available to the team for issue resolution and process improvement.
“It worked in my environment” is not an acceptable statement. Consistent tools and processes are required in the delivery lifecycle.
Consistent and repeatable processes enable safe and reliable product deployments.
Monitor & Review
Infrastructure and application monitoring provides performance and early warning indicators, which are critical to protect and improve the customer experience.
Continuous monitoring and reporting of infrastructure health enables rapid identification of issues and timely remediation.
If it can’t be measured it can’t be improved. Metrics promote learning, repair and prevention.
Validate performance of system and application behaviour against required SLAs.
Rapid diagnosis, metrics, and performance are the key drivers of a positive customer experience.
Continuous improvement is a culture that evolves through successful DevOps implementation.
Software must address customer needs while responding to market demand.
Mistakes are part of the improvement process, experimentation is encouraged.
No band-aids, fixes occur at the source and flow through the product lifecycle.
Predictability is achieved through repetition.