Task Board definition
- An agile team often uses a task board to monitor and control progress, a task board identifies tasks to be completed during an iteration and their progress. [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
Tasks
- The acronym SMART (specific, measurable, achievable, relevant, and time-boxed) helps the agile practitioner remember the characteristics of a well-defined task.
- SMART :
- S – Specific tasks are ones that clearly contribute to the development of a User Story.
- It should not be vague.
- M – Measurable tasks are ones that the team and customer can verify.
- A – Achievable tasks are ones that developers may realistically implement and understand.
- R – Relevant tasks are ones that unequivocally add value to the User Story.
- T – Timeboxed tasks are ones that can have an estimate assigned of the amount of effort or time needed for development.
- [Agile Retrospectives: Making Good Teams Great. Esther Derby, Diana Larsen, Ken Schwaber.]
- S – Specific tasks are ones that clearly contribute to the development of a User Story.
- SMART :
- Agile team members should feel free to update incorrect task time estimates as soon as possible.
- Team members can use current iteration progress and accrued experience to come to a new task time estimate.
- [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
Kanban board
- Kanban board is a Task Board
- Kanban, Japanese for billboard or signboard, is a scheduling system for just-in-time (JIT) production developed by Toyota in the 1940s and 1950s.
- It is a way of controlling and reducing inventory by using cards or signs to order (demand signal) requisite parts for a manufacturing process from other dependent systems (supply).
- Kanban has been adopted by agile to help control workflow.
- [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
Kanban board Columns
- Colum “To do” :
- Tasks that have not yet started should be located in the ‘to do’ column.
- [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
- Column ” In progress”
- In Progress column example :
- As a Developer on the agile team, Greg is beginning development on a task.
- Greg is at the task board and must place the task card in the correct column of the task board to update everyone of its status.
- Greg should place the task card in the ‘in progress’ column to signify that the task is currently being executed. [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
- Ready for testing
- Typically, completed tasks are moved to the ‘Ready for testing’ column.
- Testing is then executed by the project testers and the customer.
- Caution :
- All tasks must go through a testing or verification process to ensure quality is built into the development process.
- Typically, completed tasks are moved to the ‘Ready for testing’ column.
- Testing is then executed by the project testers and the customer.
- It is important to note that some tasks on the task board will not have specific verification or testing criteria.
- These tasks don’t go in the ‘Ready for testing’ column but still need to be verified and are often placed in a ‘To verify’ column.
- [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.] [Planning, monitoring, and adapting]
- All tasks must go through a testing or verification process to ensure quality is built into the development process.
- To verify
- It is important to note that some tasks on the task board will not have specific verification or testing criteria.
- These tasks don’t go in the ‘Ready for testing’ column but still need to be verified and are often placed in a ‘To verify’ column.
- [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
- In Progress column example :
- Column “Done”
- Elements meet Definition of Done (DoD).
Kanban board practice
- Kanban is a just-in-time (JIT) scheduling system for inventory control.
- Production processes only execute if there is a demand signal for the part being processed.
- Carefully controlling inventory in this manner ensures that no machine is producing unnecessary/unordered parts.
- A machine will only send a demand signal if it has the capacity to perform the manufacturing immediately.
- Therefore, inventory (or WIP) will not backup or bottleneck at machines because the demand signal for inventory is highly controlled and based on processing speeds and absolute need. [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
Work in process (WIP)
- A lean manufacturing philosophy is to eliminate waste.
- One defined waste type in the lean philosophy is inventory, which is also referred to as work in process (WIP).
- WIP is material or parts that have started production but are not yet a finished or « done » product.
- Inventory is considered wasteful because it costs money to purchase, store, and maintain.
- One way of reducing inventory is to reduce the WIP at individual machines or servers by only moving as fast as your slowest machine or processor (the system bottleneck).
- Agile also strives to control its WIP through WIP limits by completing all features to a « done » state before beginning development of new features.
WIP limit
- A limit of how many WIPs can be in process at one time.
- Without WIP limits a project team may be tempted to undertake too many different pieces of work all at once.
- The aim of WIP limits is to optimize throughput of work, not to optimize resource utilization, to help identify bottlenecks and maximize the workflow of a project.
Work in process practice
- A Kanban board shows work in process (WIP), which represents work started but not completed.
- Therefore, the WIP should be limited and carefully managed to maximize performance.
- More WIP does not equal more output; in fact, it is quite often the opposite.
- Also, WIP is any work that is in progress, regardless of what stage the work is at, so the answer options that limit it to work waiting for quality assurance or user acceptance are wrong.
- Like lean, agile efforts try to reduce WIP to a manageable and sustainable level. [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]
Process tailoring
- Project trade-off matrix : the project trade-off matrix classifies the constraints of scope, schedule, and cost as fixed, flexible, or accept. [Agile Project Management: Creating Innovative Products – 2nd Edition. Jim Highsmith.]
Kanban board impediment
- Agile team members should feel free to update incorrect task time estimates as soon as possible.
- Team members can use current iteration progress and accrued experience to come to a new task time estimate. [Lean-Agile Software Development: Achieving Enterprise Agility. Alan Shalloway, Guy Beaver, James R. Trott.]