Session 2: Managing the Flow of Work
DevOps is all about continuously delivering value. Before we can even begin thinking about CI/CD, we need to make sure we do the right work. Sprint after sprint, iteration after iteration, we need to plan our work and manage our workflows.
This includes planning and tracking all units of work for the project. With frequent small iterations, there is no time to waste. Careful planning needs to happen to ensure the correct work gets done for each iteration. With the compressed time frame for each iteration, team members must work and coordinate their activities. Thus cross (functional) team visibility of work becomes vital for that coordination and allocation of resources. Visibility also ensures problems or bottlenecks get surfaced and addressed quickly.
Managing source control changes are also important. We need to be in a deployable state at the end of every sprint. The main branch should be protected, yet changes being introduced should not be overly hampered and slowed down by the process. Being able to iterate quickly and safely is vital.
And Finally, we need automation surrounding all our workflows to help enable everything as well as add consistency in what we do.
- Make work in progress visible with Azure boards
- Use trunk-based development to keep integration pain down and master ready to ship
- Automate your workflow to add consistency and remove drudgery
- Communication and Collaboration
- Source Control