Practical Agile

    For a long time we had the idea of ​​creating webinars on Agile.
    My colleague, Sergey Andrzheevsky, an experienced and famous scrum master who participates in various conferences and round tables, where he shares his experience in Agile projects, tells a lot of “tasty” and interesting things to his audience. It was he who asked me to publish this article on Habré (he does not have his account here yet), because we were able to launch our series of webinars (the first one was already held on May 27 - Using Offshore Agile in Exigen Services , and June 21 was the second part - Important points when switching to Agile, July 19 will be the third - Introduction to Extreme Programming Practices (eXP) .

    Using Agile methodologies (SCRUM, XP, etc.) is becoming increasingly popular in the IT industry. Why is this happening? And how does it work?

    Today, flexible methodologies are best adapted to the ever-accelerating development of technology, the emergence of new development tools and increasingly changing customer requirements. Flexibility is now becoming especially important due to the general trends in the development of information systems - global mass Internet services, Web 2.0 with its concept of “permanent beta version”, reorientation from software products to information services (which are by definition more flexible and dynamic), the popularity of SOA architectures etc.

    In the modern world, it is almost impossible to imagine a software development project carried out according to traditional “hard” methodologies, planned for 2-3 years in advance, since no one can predict how the outside world will change (and, accordingly, project requirements, technologies used, etc. .d.) during this time. There is also another problem - the modern customer of an IT project rarely accurately represents what he needs. But if money was already found for the project, then usually everything should be ready “yesterday”, and, as a rule, there is no time, effort and experience in preparing detailed specifications. In this typical situation, the use of Agile allows you to start a project as quickly as possible, thinking out the details already during its implementation.

    In addition, Agile can be used in a wide variety of projects - from tiny student high-tech startups to serious industrial projects with a laboriousness of tens of man-years. It is difficult to find another approach or methodology that would have such breadth of application.

    It is important to note that the time of individual developers has passed. Even if some ingenious single-minded programmer creates and launches a wonderful program on the market, nothing will stop competitors from organizing a team that quickly implements similar functionality, and then, due to the number of developers, can develop the product faster than the creator of the original can physically do. Effective teamwork on an IT project becomes vital, and it is a question of the work of the team as a single well-functioning body, and not the sum of the efforts of independently working participants. Flexible methodologies allow you to organize exactly teamwork.

    To summarize, we can say that Agile is:
    1. flexibility, adaptability, risk reduction;
    2. scalability, breadth of application;
    3. focus on effective teamwork;

    PS It’s hard to surprise a modern IT specialist with a high salary, people want the work to be truly interesting. In Agile, a programmer who adds new functionality immediately sees it working in the application and at the customer, which greatly improves motivation, since the result of the work is visual and used. Flexible methodologies due to their focus on teamwork, informal communication, a minimum of bureaucracy, constant changes make the work process really exciting.

    Thus, we can add the fourth point to our results: Agile is a personal motivation for participants.

    Also popular now: