Busrides: Episode 9
Agile: Step by Step
We last talked about the importance of designing with users in mind. This is a foundational part of the GC Digital Standards. What could be better than putting users at the centre of our efforts to improve our jobs and service offerings?
How about doing all that while being agile? Sounds great, right? But hmm… what does “agile” mean? Watch this 2 minutes video to know more:
So it was 2001 and a group of software visionaries gathered at a ski resort to share their experiences and figure out why so many software projects were failing.This wasn’t just about documenting best practices. They knew the industry required a fundamental shift in values and so the agile manifesto was born.The Declaration of four bold value statements that became the basis of the new approach to software development and would change the industry forever.But what were those four values and why should you care?Let’s take a look. But first it is important to point out that the agile manifesto ends by noting that all of the things mentioned are important – just that some things must be prioritized over others. Okay. Here we go. Number one: individuals and interactions over processes and tools. Thisdoesn’t mean throw processes and tools out the window. It simply meansthat a good face-to-face chat should trump rigid workflows and impersonal forms of communication. Number two: working software over comprehensive documentation. Makes sense right? But traditional software development often produced extensive documentation before a program was released for initial testing. Some documentation is good but wouldn’t it be better to have the program than a book describing it? Number three: customer collaboration over contract negotiation. Sure you’ll want to start out with some initial guidelines. But instead of locking customers in a cage by defining the exact details of the project before it starts, teams and customers should collaborate to find the best solutions. And finally, number four: responding to change over following a plan. Nothing ever goes entirely according to plan so, instead of sticking with something that isn’t working, it’s much more effective to make adjustments as your situation changes. Following the values isn’t always easy. But when you build them into your team’s processes, customers notice and the payoff is huge. Which of the agile values do you think is the most important?
Ok did you get that?
- Ask for feedback early and frequently
- Adjust course along the way
- Know when something is good enough
- Launch the real work product, get feedback again, iterate and update. It’s a never-ending story.
Canadians are expecting products and services to be intuitive, easy to use and at pace with their ever-changing needs. We too, as public servants, have to change the way we work to become more adaptable and focused on clients and customers, no matter the field we’re working in.
To do this we need our leaders and management to be less “command and control” or micromanagers. They need to see themselves as enablers who create the conditions for individuals and teams to learn and improve. They do this by:
- creating an environment of psychological safety, trust, candour and openness
- embracing uncertainty through experimentation
- setting priorities and high standards for “what work will be done”
- being open to working-level decisions on “how to collaborate”
Q1: How can we use agile approaches individually and as a team?
Individually, you can start by creating a personal “kanban” to help you manage your work. “Kanban” is a Japanese term that means “visual signal.”
A kanban is designed to help an individual or a team prioritize work, create efficiencies and remove constraints so that work gets completed faster and with higher quality.
Watch the following video on how to use it (a 1 minute video that could change your life).
Hi this is Dave Fryer with another PM problem solver.
I’ve got 90 seconds to help you get better at getting your work done. If you’re a PM you probably spend so much time focused on other people’s work it doesn’t leave a lot of room for you to be efficient with your own. So I have four tips from personal kanban that will help you become better at managing your own work.
First: visualizing your work is a big part of understanding it. Set up a task board for yourself with three columns: READY, DOING and DONE. Create a post-it for each item of work you have and prioritize them in the READY column.
Second: start using that board. Each time you start a task, put it into DOING. And when you’re finished move it over to DONE. It sounds like a simple thing but physically moving those cards is a big motivator.
Third: stop starting and start finishing. Limit your work-in-process to two to three items in the DOING column at a time and don’t let yourself bring anything else into DOING until you first move something over into DONE.
And fourth: take time each day to reflect on how you’re maintaining your priorities and your work-in-process limits. If you’re sticking with them – great. If you’re not, you just have to figure out why so you can figure out how to become more efficient in your work the next day.
If you’d like to learn more about personal kanban or thousands of other ways you can improve your project management practice check out the webinars of projectmanagement.com by following the URL below
Use the kanban as a team by putting all of the team’s various projects and tasks on the wall to better understand what everyone is working on and “unhide” work. Doing this will help you discover time thieves in your processes:
- too much work in progress
- unplanned work
- conflicting priorities
- unknown dependencies and bottlenecks
You can then start injecting more feedback loops where possible. Most projects include a lessons learned report, which is typically written at the end of the project. To be more “agile,” you could reflect on the project while it is in progress to examine how things are going and come up with ways to improve the team and how you are working together.
Q2: I can see how the agile approach works for big software development projects, but is this really a viable approach for everyone?
Yes, all areas can benefit from getting feedback early on in the process. That way, you know you are on the right track. Our colleagues from the Canadian Digital Service are paving the way, as you will hear in this 3-minute bilingual video.
Q3: How do we create a non-tech walking skeleton?
You need to focus on your first iteration and its potential for learning and discovery. For example, if you were writing a 100-page document, to make sure you are on the right track you would write your document incrementally and in a way that’s fast and adaptable (lightweight and disposable). You would follow steps like these:
- The first iteration could be an outline of the titles of all the chapters in the document
- A second iteration could be all the chapters plus all the headings and subheadings, and so on.
These steps help ensure that the document is exactly what the end user wants in a way that doesn’t require a lot of upfront effort. You save a lot of time in the process.
Q4: What should we absolutely avoid or change in our traditional way of working?
We need to stop rewarding outcomes because outcomes are largely outside the control of the working level. We need to start rewarding behaviours such as learning, experimenting, collaborating, being a great team member, building on other people’s ideas—instead of putting them down (“yes and” vs “yes, but”). Having great behaviours will create high-performing teams. The good news is that some teams in the Government of Canada are getting there. Here are two examples:
Q5: What tools would help us to collaborate better?
The best tools are those that rely on and replicate face-to-face conversation and visualization. All you need are sticky notes, painter’s tape and Sharpies.
Keep it simple and bring everything to a human level. If your team works remotely, use technology:
- video conference, Skype for Business, Webex, Zoom
- online chat (Slack, GCmessage)
- virtual kanban boards (JIRA, Trello, VersionOne, TFS, Wrike) or have a webcam pointed at the team kanban 24/7
Finally, you don’t become Agile, you become more Agile!