An interesting LinkedIn discussion with Venturi Group led me to think about the many ways organisations attempt agile task management. What's best? You know you need a good mix of visibility, structure, governance and engagement, but what do they mean and look like when implemented?
Without having easy access to tasking information, you may feel a little lost. You may think you're amazing at keeping a to-do list in your head, but there's always the risk of dropping the ball. Also, perhaps your colleagues may want to know what you're working on? The interconnected web of task dependencies is made so much clearer by not just having daily standups, but a constant real-time access to the current state of in-flight work.
Knowing what constitutes a task, what the workflow of that task is and who is responsible for it is key for establishing an ordered, durable flow of work. It's less about being held accountable by the enterprise and more about self- and group-accountability in your team. You're a homogenous, work-conquering unit, and the ability to repeatably inspect your work product is vital to maintain agility and detect variance.
Governance and Engagement
It can't be avoided, even in the agile world. No matter how self-organising your team is, you still need to provide accurate delivery metrics to the enterprise. The determination of your current, and extrapolated, velocity can be used to advise the business on potential delivery dates for certain, prioritised work items. Additionally, the transparency gained from having progress visibility can foster improved feedback from product management, allowing more focused and frequent adaptation.
Striking a balance between process and people is vital. Processes should enable, not hinder, and implementations that don't deliver should be improved or abandoned. I find that separating agile backlog items from their individual tasks works quite well. It allows teams to prioritise, schedule and report on their product backlog in a structured way, whilst allowing the team to manage their work tasks as they see fit.
A physical task board, where team members can passively inspect and actively discuss tasks, works wonders. There are few greater feelings that working hard on a single task, only to finally march up to the board and move it to "Done".
Managing backlog items can be more complicated, and can often involve a large quantity of queued work. Online solutions play an excellent role here, especially those integrated with any existing development tooling. I thoroughly recommend JIRA, but use whatever works.