What is the Agile Manifesto?
Seventeen software gurus came together in the US state of Utah in 2001 and had a 2-day brainstorming about software development. The purpose of the meeting was to increase software development productivity and to evaluate different experiences and approaches in this direction.
Seventeen software gurus came together in the US state of Utah in 2001 and had a 2-day brainstorming about software development. The purpose of the meeting was to increase software development productivity and to evaluate different experiences and approaches in this direction. At the end of the meeting, they published a 4-item set of values, which could be considered as an output of the meeting, with the name Agile Software Development Manifesto. This declaration has become a guiding and target vision for the increase in the success achieved in software projects in the last 15 years and has turned into the mainstream.
Turkish of the Agile Manifesto
- Süreçler ve araçlardan ziyade bireyler ve aralarındaki etkileşimlere
- Kapsamlı dökümantasyondan ziyade çalışan yazılıma
- Sözleşme pazarlıklarından ziyade müşteri ile işbirliğine
- Bir plana bağlı kalmaktan ziyade değişime karşılık vermeye değer vermeye kanaat getirdik.
In summary, while we accept the value of the items on the left, we find the items on the right more valuable.
English of the Agile Manifesto
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
The Meaning of the Agile Manifesto
When we read the articles of the Agile Manifesto, it is important to keep in mind that less valuable parts do not mean that they are not done at all. In addition, it is necessary to consider some of the following tips;
- We must use processes and tools to generate value. Processes and tools should not come to a level that creates bad bureaucracy and should not disrupt the individuals and interactions between them. It is important to follow the process and use the tools. But in our choices, it is more important to maximize the interactions of individuals and to create team play.
- Purely and simply valuable documentation should be produced, and documentation that hinders the progress of the team and creates more burden than value should not be allowed. After all, the documentation is written for weeks, months, and hundreds of pages may not mean much to the customer if there is no software running in parallel. It should be proceeded with a value-oriented approach, prioritized, and the resource should be used accordingly, and it should always be evaluated if it does more harm than good.
- From time to time, contracts can be positioned as factors that make things difficult to progress. Instead, talking to the customer, creating an atmosphere of trust, and collaborating will increase agility. The client should be seen as part of the team, not as a separate and opposing party. It is possible to produce correct outputs as long as the customers are involved in the process.
- Thinking of and planning the entire course of a project in advance is a very laborious task, and it is not a feasible method in rapidly changing environments. Therefore, being able to adapt the plan according to changing conditions will increase the development efficiency. It should not be forgotten that a plan is a tool and that this tool must progress with change in order to achieve the goal. It is unlikely that success will come by following a plan made at the beginning of the project when you had little information unless the plan shows adaptation in the process.
12 Principles of Agile software
In addition to the Agile Manifesto,12 Agile Software principles were also published at this meeting. These items are as follows;
- Our top priority is to satisfy customers by ensuring early and continuous delivery of valuable software.
- Changing requirements should be accepted even at the final stages of the software development process. Agile processes put the change to use for the customer’s competitive advantage.
- Working software should be presented to the customer on a regular basis, preferably every few weeks or every few months, with short time intervals.
- Business process owners and developers must work together every day throughout the project.
- Motivated individuals should be at the heart of the projects. They should be provided with the environment and support they need, and they should be confident that they will get the job done.
- The most efficient and effective method of information exchange in a software team is face-to-face communication.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. Sponsors, programmers, and users should be able to maintain a constant work paceContinuous attention to technical excellence and good design increases agility.
- It is essential to keep the simplicity and not do things that are not the essence of the business at the highest level.
- The best architectures, requirements, and designs emerge from self-organizing teams.
- The team periodically reflects on how it can be more effective and efficient and adjusts and arranges its behavior accordingly.
Best wishes for agile work.