Agile and DevOps purpose is, first and foremost, to achieve business agility and enable businesses to reach their consumers faster with innovations and new offerings, enabled by tools and automation. By incorporating lean principles, bringing stakeholders closer and automating various steps in the process, the lifecycle is aligned to release continuously and with high quality.
Agile/DevOps is a philosophy, a cultural shift that merges planning, development, testing and operations and demands a linked toolchain of technologies to facilitate collaborative change.
Although Agile/DevOps emphasise people and culture over tools and processes, implementation utilises technology. Therefore, put teams first, and provide the right tools, integrations, and guidance to successfully implement Agile/DevOps practices.
Some important aspects to remember when implementing a new Agile/DevOps process:
Agile/DevOps adoption for a new way of working:
- Culture Is Key: One important point about Agile/DevOps platforms and tools is that they must have a company culture behind them, however, many times most aspects of an Agile/DevOps culture are not in place, such as Lean/Agile thinking, feedback loops, increased collaboration, etc. To start using a tool or platform successfully, all the key players on the teams need to see some benefits and have at least some buy-in.
- Create your strategy/adoption plan and Agile vision
- Focuses on business value
- Agile training is an ideal way to level-set teams across teams on the basic concepts of Agile and associated implementation methodologies
- Training of toolsets supporting Agile practices across the company
Agile/DevOps-friendly and well-defined processes:
- Define your processes and models
- Consider which tools can be used to implement and support that.
- Build process that supports cross-function teams, for example, project managers, developers, testers, infrastructure and IT, network and operations.
- Use Agile/DevOps tools for managing teams’ processes as this practice makes teams’ work visible and processes in tools are more flexible to change
- The well-defined process generates good meta-data, which can be used for process measurement and process improvements (the best way to know if the teams are getting better is by measuring what they do)
Establish a single source of truth (tools) across the teams:
- The chosen toolchain should help you to support all the above topics
- Ensures that teams can work collaboratively with co-workers dispersed geographically using online and real-time applications.
- Help teams achieve an increased level of collaboration, communication and process measurement.
- Single source of the truth, it is difficult to get accurate answers and insights when data resides in multiple systems.
- Choose tools that align with DevOps and Agile practices. Self-serve and access to information that is delivered in an easy-to-use and searchable manner
- Connect and Integrate automation tools with the Agile/DevOps process tool, as this will increase tractability and productivity and speed up the end-to-end cycle.
- Below is a high-level view of how Atlassian tools could be used to support the Agile/DevOps lifecycle:
Also, see below some software/applications and JIRA plugins that could help you on your Agile journey 🙂