Avoid Process Bottlenecks!
Don't let your processes interfere too much with the speed of Development. Processes are vital to the success of any Software Development team. Most development tools even allow for restrictions to be placed in them to enforce workflows, practices, policies, etc. I once worked at a company that had their Issue Tracking software (JIRA in this case) configured to an 18-stage workflow process from the time an issue was opened to the time it was closed. Even worse than having 18 stages, several of those steps could only be processed by 1 person. If that person was busy, sick, or away for some other reason, the issue could not progress. It is not surprising that this causes headaches. When the process stops (for whatever reason), the people involved do not. Worst case scenario is that they have to chase down the person they are looking for. Alternatively, they move onto other things (sometimes work related, sometimes not) which leads to more tasks being worked on at the same time. At first glance, this may sound like a good thing. After all, work is still getting done, right? That may be true, but this leads to other complications. As any juggler knows, the more items you have in play at any one time increases the possibility of a disaster. An interrupted task is estimated to take twice as long and contain twice as many errors as uninterrupted tasks (Czerwinski, 2004). In an Agile work environment, the speed of development and quality of the software are paramount. So, put checks and balances into place to ensure software quality (preferably automated), and review any and all processes to allow for the software to be built as quickly as possible. Time is money, so wasted time is wasted money!