What is Agile Development?
What is agile development and how can it help your midsize business prosper? For IT administrators, agile represents a big change to the way software development and other IT projects normally run. The term comes from the Agile Manifesto, a document created by a group of developers who wanted to see a change to the traditional software development process.
Many IT projects use the waterfall method, where there is a long planning phase with large amounts of documentation created before the project or piece of software is delivered at the end. In contrast, agile development shortens both the planning phase and the amount of documentation needed, enabling teams to achieve rapid delivery.
According to the Agile Manifesto, agile processes value:
- "Individuals and interactions over processes and tools"
- "Working software over comprehensive documentation"
- "Customer collaboration over contract negotiation"
- "Responding to change over following a plan"
There are several types of agile frameworks. One of the best known is Scrum, but others include Extreme Programming and Lean Development. All of them have in common a continuous cycle of planning, testing, integration, and development.
How Agile Development Processes Work
In order for agile development processes to work properly, the development teams also have to work differently. Unlike the waterfall method, the project manager is not a controller but a facilitator, streamlining communication between teams and business users. Though the project manager may assemble the team, the team will run itself. Teams using an agile framework have more decision-making responsibility than those using the waterfall method. Team members will allocate responsibilities and set deadlines internally, which enable them to comply with the overall project schedule.
Communication with business users is a key part of this development methodology. An agile development process may start with a meeting with business users to establish priorities and overall delivery milestones. And testing and feedback are a key part of the process. Essentially, agile development breaks the development process down, allowing for delivery of products and services at regular, short intervals. While each iteration may be incomplete, it must be workable.
Benefits for Midsize Businesses
This more collaborative development environment has several benefits for midsize businesses. For one thing, the development process is much quicker, with usable products and services released in weeks rather than months. This gives businesses an obvious competitive advantage.
Agile development also allows businesses to respond more quickly to changing circumstances as developers are not hampered by processes set in stone. And this type of development also results in more satisfied customers. As they are involved throughout the development process, the final product is more likely to meet their needs and help the business meet its revenue goals.
This post was written as part of the IBM for Midsize Business program, which provides midsize businesses with the tools, expertise and solutions they need to become engines of a smarter planet. Like us on Facebook. Follow us on Twitter.