Everyone is talking about Agile development in the IT world. That’s why we decided to get to know it better and even asked active Agile-adopters to help us with this. To check out results take a look at our white paper “How Agile Influences Business”. A short overview can be found below.
The crucial point Agile stands on is that business cannot know all its needs and requirements upfront. There is just not enough understanding of what the system should do at the very beginning of the development process.
We defined four main agile development approaches: extreme programming (XP), scrum, lean software, and crystal. XP is an Agile methodology with a high level of involvement between the customer and the development team. Best suited for smaller development teams consisting of senior developers with excellent communication skills who are able to work with and manage non-IT people.
CrystalL methods focus on people, interaction, community, skills, talents, and communications. It is very tolerant to the fact that teams can achieve success in different ways, so it is easy to implement.
The lean software applies lean manufacturing method to the software development process that aims at minimizing waste without sacrifice of productivity. To the benefits of lean software development belong overall efficiency of the development process and its speed-up, early delivery of the project.
Scrum takes a more broad-brush approach to building software. t is a framework for managing and controlling iterative work at the project level.
Agile has proven to win the market: 67 percent is constituted by companies that either have implemented the pure Agile or are leaning toward it. However, not all of these companies fully implement the agile methodologies. Large enterprises are the most active adopters of agile approaches, dispelling the belief that Agile is better for smaller projects.
Agile is the most popular with High Tech, discrete manufacturing, real estate, banking, and finance. The key motivation to switch to Agile is enhanced collaboration, increased software quality, increased customer satisfaction, shortened time-to-market, and reduced cost.
People actively adopting Agile have outlined the following benefits of Agile: better flexibility, less work in progress, more feedback cycles and constant review, better quality, healthy habits, increased team rhythm, visible results, increased motivation, predictable development, constant discussion, less misunderstanding, continuous improvement, real value for customers, faster time-to-market, focus on business goals, open culture promotion, and project transparency.
As the main goals, they defined achievement of adaptive approach, improvement of collaboration, upgrade of quality of soft delivered, customer satisfaction, shorter time-to-market, a decrease of cost, and consistent delivery of value.
The most popular structure and hierarchy inside Agile team turned out to be cross-functional teams, little/flat hierarchy, empowered people, and respectful and open communication.
The most challenging were the rhythm of adaptation, lack of procedures, lack of structured planning, time planning in estimation, company culture, an absence of product owner, and lack of management support.
Agile adopters see the main disadvantages in uneven sprints, not-balanced load, and underbidding.
The main metrics to measure Agile success are a speed of change, goals achieved, customers feedback and satisfaction, rapid implementation of new strategic directions, a value generated before and after Agile, on-time delivery, product quality, efficiency and Work in Process.