Today’s times require great flexibility, delivery of high quality products and constant reduction of development costs. Agility represents a change in approach to software development management and focuses on continuous improvement, flexibility of delivery and transparent tracking of product development expenditure.
Scrum is the most popular and widespread Agile methodology and brings benefits at all levels of company management thanks to clearly defined roles, interaction and flexibility. A flexible approach to change management leads to increased customer satisfaction and at the same time reduces the risk of project failure.
Software development is traditionally carried out using the so-called Waterfall proposed by Winston Royce already in 1970. This standard methodology is based on the fact that development is divided into 6 consecutive parts – Gathering requirements, Design, Development, Integration, Testing and Deployment. The main disadvantage of this method is the fact that all requirements are set in advance and all planning depends on them. Incorporating changes can be very difficult, and is often done in the form of so-called change requests only at the end of the project.
Statistics show that only 39% of such software projects are successful, 43% are terminated with difficulties and 18% fail completely (The CHAOS Manifesto, Standish group 2012). The same study also points to the fact that only 7% of all requests are really fully utilized and 45% are not utilized at all.
The concept of agile software development does not count on fixed requirements and instead is based on development with fixed resources and time, while the requirements can change throughout the project. The success of the projects is also increased by their transparency, frequent inspection and high adaptability to the surrounding conditions.