Workflow Diagrams made Easier

Date
August 23, 2022
Tag
WorkflowsSoftware DevelopmentAutomationJiraProject Management

The goal of this blog post is to show you how I created a workflow diagram for your software development team using Airtable.

Background

A software development workflow is the process that all members of a team follow to deliver a product. Workflows can be complex or simple, depending on how complex the work is and how many people are involved in it.

A workflow diagram will help you understand where the work in your project gets done, what needs to happen before work can begin, and how tasks are completed.

A well-designed workflow will help you to deliver products on time and within budget. It should also allow for quick responses to changes in priorities, which can be especially important when you're dealing with an open-ended project like software development.

I worked in agile before I worked in software development. In my previous role, I was a scrum master on a team of knowledge management specialists at Wells Fargo. We used scrum because it's popular at wells fargo and it suited our team well.

I knew that agile came from the world of software development, so when I started my current role as a Technical Project Manager at Patron Technology, I assumed all software teams approached the development cycle the same way, through the rigid framework of an agile methodology. In my first year as a technical project manager at Patron Technology, I've learned that no two software teams are exactly alike and all have their own unique needs, and software teams, just like any other kind of team, adapt

Software teams procedures and workflows are typically determined by:

  • The team's size and resources. Some teams are larger than others, with more people and processes in place. This can make it difficult for them to work together as efficiently as possible—and it may affect the way they approach their work process overall.
  • The team's culture and environment. Software development teams often have unique workflows that aren't applicable across all organizations or industries
  • The team's priorities and goals. These can vary based on factors like budget restrictions or top-down mandates. As a result, it's important to understand what each team member wants out of their work environment before trying to implement any new processes or initiatives.

Some teams use agile methods, some don't, but most pick and choose the agile methods that work best for them and adapt them to their own needs.

Software teams are frequently adapting their workflow

A software development team's workflow is the way they work together to create a new product. Teams are frequently adapting their workflows to meet changing priorities. A good workflow is one that allows the team to respond quickly and efficiently, while providing a good user experience. A well-designed workflow will also be adaptable as requirements change over time, so each new product release doesn't require re-designing all of the processes used by your team members.

It's important that everyone can reference a singular up to date source of knowledge that summarizes the workflows agreed upon by the team. So, I needed to create a document that allows me to iterate on these workflows while keeping track of them.

Version #1: Google Drawings

Google Drawings is a free tool that allows you to create diagrams and flowcharts. It has limited collaboration capabilities, but it's easy to use and export the image to any format you'd like.

While google drawings was a good starting off point, it required a lot of design work on my part to remain visually concise and I found it difficult to revise frequently, as it took quite a bit of time to do so

Version #2: Airtable + the Flowchart Extension

Airtable is a cloud-based database that makes it easy to create and share your workflows. It has many features, but for this project I needed only one feature: the ability to link items on a workflow diagram to other things in the system. This would allow me to add context around each task by linking them with people or categories so they could be added easily into my flowchart extension when the time came for revisions.

I created this workflow diagram using Airtable's Flowchart Extension (https://flowcharts.airtable/docs), which allows me to add additional information like initiator, notes, and other fields that I may need to track in the future

image

Conclusion

I hope that you’re able to use this blog post as a jumping off point to create or revise a workflow diagram for your own team. Feel free to message me if you have any questions, or just want to say hi!