Curious about embracing Agile software development, but apprehensive about what lies in store if you do?
Agile is quickly becoming a preferred approach to software development as it offers a lightweight framework for helping teams maintain a focus on the rapid delivery of software projects. Through a process of continuous planning and feedback, the agile methodology can ensure that value is maximized throughout the development process.
Though these benefits may compel businesses to implement agile, the transition and subsequent scaling within an organization can introduce some challenges and growing pains.
"While there is no perfect formula to guarantee success, there are several common mistakes that companies should avoid when making the transition to agile," says Robert Holler, CEO of VersionOne, a leader in agile development tools.
These mistakes, he warns, can derail even the most carefully prepared strategy. However, there are steps project managers can take to avoid them.
Mistake #1: Skimp on Training and Education
"This is perhaps the most common mistake," says Holler, noting that many companies think training will be time-consuming and expensive.
Some companies' try to cut corners by having internal team members train pilot teams - hoping those teams will bring everybody up to speed. The big problem with this is the limited bandwidth of internal team members, whose primary role is developing code.
"There is no substitute for experienced agile coaching and consulting," he says, point outing that the cost is relatively small. "Most teams scaling agile face similar challenges, so bringing in experts who have already successfully proliferated agile across organizations can make all the difference in the speed and ultimate success of deployment."
Mistake #2: Practice Agile in Silos
Because agile is often a grassroots-driven phenomenon, processes and practices sometimes evolve out of sync. Different teams within the same organization try different methodologies, follow separate standards, or even implement specific practices in dissimilar ways.
To combat the 'silo syndrome,' most companies that succeed in scaling agile, employ an internal service-oriented team dedicated to the consolidation, promotion and dissemination of agile knowledge and practices, says Holler.
"Having this reference team and centralized body of knowledge also provides a significant leverage point from which the entire company can learn and grow," he says.
Mistake #3: Ignore Other Areas of the Business
A mistake many organizations make when scaling is to focus all of their efforts on their technology teams. Yes, agile is a software development methodology, but successful scaling of agile methodologies is also generally accompanied by a shift in corporate culture and infrastructure for the entire company.
Holler believes managers need to pay close attention to the cultural changes that are part of moving to agile software development and allow time for them to become the new standard.
"This is a shift that needs to happen not just on agile teams, but across teams, departments -- and even in the executive offices," he says.
Mistake #4: Encourage Organizational Complexity
A natural inclination when scaling almost anything is to introduce management layers, new policies, additional processes, and other unnecessary checkpoints. Not surprisingly this kind of overhead and complexity typically has an inverse relationship to adoption speed.
Holler recommends keeping things as simple as possible.
"Simplicity is critical to the success of scaling agile," he says. "Keeping things simple can drastically accelerate the internal rate of adoption."
Mistake #5: Fail to Scale the Infrastructure
Failing to consider infrastructure changes that will grow with the business and support future requirements can severely hamper any scaling effort, says Holler.
The test for infrastructure and tools is how well they scale, he adds. The source code management tool, test tool, wiki, and Excel spreadsheet a single agile team uses may work extremely well in a localized context, but the problem domain expands exponentially when scaling across multiple teams, projects, distributed locations, and hundreds of team members.
"A rule of thumb should be to match the tool/s to the growing business requirements," he says.
Holler's advise in a nutshell: start small, keep it simple, and choose processes and tools that can help you scale smart to meet your changing needs.