No software development team can be agile without a strong business foundation that allows rapid progress. Implement Scrum, Kanban, XP, Lean or whatever development approach you like. They will all fail unless the business has an agile mindset.
Developers should be paid to think and add value not to perform mindless activities. Let computers perform the mundane. The best run projects draw high value from every team member. In doing so, they create an agile mindset. Here are a few simple tips for establishing an agile foundation.
- Eliminate redundancy. Information should be entered once and tracked in one place. Tasks should be performed once with traceable results. Maintaining multiple document repositories or capturing the same information in multiple formats is wasteful. Creating a complex organization structure where only designated people can perform certain tasks is anti-agile.
- Share information. Establish a technical knowledge base. Create a wiki for every project. Use an internal social media platform. Getting any of these elements setup is easy. There are plenty of open-source software tools available. The content doesn’t need to be elegant. It needs to be useful.
- Abolish approval cycles. Free the management staff to focus on adding value. If information is out in the open and readily available, development processes become self-policing. Establish rules, guidelines and/or standard operating procedures. Then, all you’ll need are spot checks, not approvals.
- Leverage relationships. Identify your key internal and external stakeholders. Be sure you have a mix of senior and not-so-senior personnel represented. Engage them in the software development effort. Work your butt off to keep them satisfied.
- Automate and decentralize. No one likes mindless data entry or repetitive tasks. Such activities should be handled by computers. Implement self-help systems for things like training, questions about company benefits, access to company literature, forms, and provider contact information. Free up your staff to deal with real business and technical issues.
Once you eliminate mindless activities, the software development team can focus on being the best it can be. Relieved of the mediocre, your team will be positioned to succeed and empowered to be agile.