Merle Randlepp

Agile Coach

Merle Randlepp

Agile Coach

What is Agile?

Feb 15, 2021 | Software Development

17 Views
What is Agile

Photo by Kelly Lacy

History and Agile Manifesto

The first agile* practices began to spread around the world in the 1990s, although the word “agile” was not yet known. The term “Agile” was defined in 2001 with the creation of the Agile Manifesto , which was written by 17 experts at a ski resort in Utah. The manifesto formulates agile values and principles that have remained the foundation of agile to this day.

The definition of agile is quite general:

Agile is the ability to create and respond to change. It is a way to cope with and succeed in an uncertain and changing environment.
(source: Agile Alliance)

In other words, if you don’t yet know with 100% accuracy what you want to create (and most of the time we don’t have a crystal ball and don’t know all the details in advance), then an agile approach will help you create a maximally valuable solution with minimal time.

Agile is a way of thinking that is based on the 4 values and 12 principles of the Agile Manifesto and can be used to act in a rapidly changing and complex situation.
The main difference compared to other approaches is that the focus is on cooperation between people and a self-organizing team.

The agile mindset is followed by many different methodologies, some of which are intended for one team, some for the joint work of several teams.

It is often thought that agility as a general concept existed earlier than specific development frameworks, but in reality, events took place in the opposite order: representatives of Scrum, XP, FDD and other development methodologies were already gathering at the ski resort, trying to find common ground between all methodologies. For example, Scrum already celebrated its 25th birthday 🥳 in 2020

 

Agile umbrella

Agile umbrella. Author’s image

The 4 values of agility

Agile values were defined with the Agile Manifesto and have remained the same to this day. In order to understand their content correctly, it is necessary to understand the context and read them as priorities of activities and not as opposing activities.

Value No. 1: We value people and the communication between them more than processes and development tools

or “First deal with people and communication between them, then decide on processes and development tools”.

People are the most important thing in the agile philosophy. This does not mean that an efficient development process and powerful tools are not important – of course they are, but it is people and their efforts that actually help solve problems and create value.

Value No. 2: We value working software more than comprehensive documentation

i.e. “Create working software first, then create documentation”.

In the past, extremely thorough documentation was written before starting development. In the case of the traditional waterfall method, it often took a lot of time to build the software, and when the solution was finally completed, it usually did not meet the expectations of the users.
The agile approach puts the focus on fast delivery more than documentation to collect end-user feedback and make necessary changes as early as possible.

Value No. 3: We value cooperation with the client more than negotiating contracts

i.e. “First, focus on cooperation with the customer, then (I would like to add here: as a last resort) raise contractual agreements”.

As mentioned, in the case of the waterfall method, a detailed scope was first fixed, which was taken as the basis for the work with the contract. In reality, however, it is impossible to anticipate all the needs and feedback of end users, and changes are inevitable. In the past, either a time-consuming process of amending the contract or a dispute over the scope began, but in agile development, there may be a fixed budget and deadline contractually, but the customer can make changes to the scope according to their needs.

Value No. 4: We value reacting to changed circumstances more than following the original plan

or “First of all, react to the changed circumstances instead of holding on to the original plan”.

While when developing using the waterfall method, all requests for changes to the software during the project were a nightmare for the development team and essentially ruined the entire project, then in agile development, changes are welcome and welcome. The plan is quickly adjusted to respond to the new situation.

Agile values. Author’s image

 

The 12 principles of agility

In addition to the four values, the Agile Manifesto also contains 12 principles that grew out of the field of software development, but have now spread to all areas of life.

  1. The most important thing is to ensure customer satisfaction by delivering the necessary software as quickly and often as possible.
  2. We understand changing circumstances, even if they occur in the final stages of development. Agile methods turn such changes into a competitive advantage for our client.
  3. We deliver the software as often as possible, preferably every few weeks to a couple of months.
  4. Industry professionals and software developers must work together on a daily basis throughout the project.
  5. The success of the project is based on motivated people. Create a pleasant and supportive work environment for them and they will be able to work independently.
  6. The most efficient and effective way to share information in a development team is a face-to-face conversation.
  7. The main measure of success is working software.
  8. Agile software development processes promote sustainable development. This means that the project can be continued at the same pace for an indefinite period of time.
  9. By keeping technical perfection and good design under constant attention, the speed and flexibility of software development are ensured.
  10. Simplicity – the art of not doing unnecessary work – is very important.
  11. The best architectural solutions, requirements and design are created in self-organising teams.
  12. The team regularly looks for ways to become even more efficient and adjusts itself as needed.

Quick check – do you follow an agile mindset?

Here’s a short questionnaire to help you analyze how agile you are and how general you are to suit different areas.

  1. You prefer direct communication with people instead of reading/writing a long document
  2. You are ready for change and welcome it
  3. You value simplicity and say “no” to unnecessary work
  4. You prefer direct cooperation between the business side and the development team
  5. You deliver software (or other results) quickly and often, at least once a month
  6. Your main success metrics are customer satisfaction and value created
  7. You are constantly looking for ways to develop
  8. You work in a self-organizing and multifunctional team

If you answered “yes” to most of the questions, then congratulations to you! You are familiar with the agile mindset and you probably adapt to changes much faster than many other people. This, in turn, creates a great advantage in today’s rapidly changing world.

*Although the term “agile development” is also used for agile development in Estonia, I will stick to “agile” as a more common term. I believe that the questions “Do you develop agilely?” and “What agile development methodology do you use?” would simply remain incomprehensible to many. For the same reasons, I prefer to use the word “coach” instead of the Estonian word “koots”.

 

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments

Related topics

What is the RICE model in product development?

What is the RICE model in product development?

In product development, we never have enough time or resources to implement all desired initiatives. Product owners constantly evaluate which developments to pursue and which to postpone, and making the right decisions is far from easy. The RICE model helps us make faster and more accurate decisions when prioritizing tasks.

62 Views

The 8 Biggest Mistakes of a Product Owner

The 8 Biggest Mistakes of a Product Owner

The role of the Product Owner is the most important role in a software development team. This role is far from easy, the area of responsibility is large and varied, the workload is usually as well, and so it may happen that “the seams start to burst” somewhere. I have compiled eight of the most common mistakes made by product owners that have the greatest impact in product development.

12 Views

Merle's small profile picture

Every new contact is an opportunity for new and exciting collaboration - write or call me, and let's discuss how I can help you.

The first consultation and proposal are always free.

Scrum Master AI ajastul12-13.apr Tallinnas

Scrum Masteri roll ei kao. See muutub ja areneb.

Scrum Master ei ole enam pelgalt tseremooniate läbiviija. Tänases maailmas on ta meeskonna võtmeisik, kes aitab juhtida inimese-AI sümbioosi ja hoida eetilisi piire.

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookies

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

Analytics

This website uses Google Analytics to collect anonymous information such as the number of visitors to the site, and the most popular pages.

Keeping this cookie enabled helps us to improve our website.