Hard to know all requirements and problems in advance
Can be okay for simple clear tasks
Bad for evolutionary requirements
Refactoring: Software is restructured without changing functionality of the system
Online Kaban tool Trello