What is Agile Development?
What is Agile Development?
Project management plays a crucial role in achieving the desired results of a project. A well-planned project process saves businesses time and resources. In line with this, many project management methods have developed over the years. It’s hard to realize software development projects without these methods. In this article, we will focus on the Agile Method. Agile Development Method is one of the most commonly used development methods worldwide.
The basis of the Agile method emerged at the end of the 1970s. We can say that Agile is a reaction to traditional project management methods that already exist. In 1970, Dr. William Royce published an article in which he examined the development processes of software systems and summarized the points that can be improved. Thus, the Agile method pioneers believed that they could find more logical and useful solutions in software development by paying attention to the points highlighted in this article.
The Agile method exhibits an innovative approach as it produces solutions based on the experience of software developers. Thanks to these approaches, it has eliminated the restrictions of traditional methods. Almost every software developer has used the Agile Method in at least one project. In the following years, the Agile Method in project development has been accepted by the industry as a better solution method than classical methods. Today, many companies use the Agile Method.
What is the Agile Method?
The Agile idea is mainly based on iterative development. It can be said to be iterative as the production takes place in a cycle. In other words, instead of delivering or creating the product as a whole at a single time, it is produced piece by piece and transferred to the customer. In this way, while there is a great waste of time and effort when changes need to be made in classical methods. The Agile Method is open to these changes. In this way, it enables the teams to produce faster, higher quality, and more predictable products. In order to fully understand the Agile method, we need to touch on Scrum concepts that are used quite frequently.
What is Scrum? What does it consist of?
Scrum was developed by Ken Schwaber and Jeff Sutherland in the early 1990s. We can think of Scrum as a subset of the Agile Method. It is the most frequently used framework in the Agile Method. In the scrum process, it is not possible to complete a detailed list of requests from the customer step by step, as in classical methods. Instead, the demands of the customer are developed and reviewed in a 2 or 4-week process called “Sprint”. So we can say that the whole project is divided into Sprints. At the end of each Sprint, part of the software is finished and delivered to the customer. There are roles named “Pig” and “Chicken” in the Scrum model. In addition, meetings have a very important place in Scrum. In order to understand the Scrum method, we need to examine them in detail.
They are fundamental roles for the active functioning of the Scrum method. It covers 3 different roles: Product Owner, Team, Scrum Master. There is no project manager compared to conventional methods.
1.1 Product Owner
They are responsible for strategic product development. They create a bridge between the customer and the Team. They are responsible for defining the project properties and creating a “Product Backlog”. They have the authority to cancel sprints. The ability to cancel sprints is also beneficial in terms of flexibility.
1.2 Scrum Master
A person who knows the Scrum method well is chosen as a Scrum Master. The Scrum Master is responsible for enforcing the rules of this method. The Scrum Master should not be confused with the project manager. Scrum Master is not a project manager. They also help the team overcome the obstacles encountered in the process.
A team consists of people who complete all the tasks in a Sprint as a development team. There a nobody to lead this team. They manage themselves. They do not wait for a task, they take the tasks themselves. Not everyone has a strictly determined role. Everyone is able to do any job. A team consists of an average of 5-7 people.
They are people who do not play an active role in the Scrum process but are involved in the project. In fact, they have important tasks like providing feedback to the project. Chicken Roles covers 3 different roles: Users (Clients), Stakeholders (Vendors), Managers.
2.1 Users (Clients)
Users, sometimes referred to as customers, are people who will use the manufactured product.
2.2 Stakeholders (Vendors)
They are people who show interest in product development. However, during the development process, they only provide feedback in meetings.
Managers are responsible for the media to be selected in order to present the product, how to make the advertisement, and to facilitate the presentation.
As we mentioned before, it is very important to divide the project into sprints. For this, meetings called Sprint Planning or shortly called Sprint are held. The development team determines the project requirements and divides these requirements into small tasks. In the following process, everyone on the team takes and completes these tasks at their own speed, without waiting for someone to assign them. The product owner, development team, and scrum master attend these meetings. Sprint meeting is developed in 2-4 weeks according to the development of the project.
Daily Scrum Meeting
It is the name given to the meetings held every day. It is generally called the Scrum Meeting for short. These meetings are held every day for a maximum of 15 minutes. The purpose of the meeting is to plan the working day. For this reason, it is usually done early in the day. The members attending the meeting present their reports in turn. These reports cover the following questions; What did I do yesterday? What am I going to do today? Is there any problem preventing my task? Thus, if a member has a problem, the Scrum master can easily intervene and solve the problem without any disruption. Not everyone is expected to attend the meeting. Meetings are held with people who are there at the predetermined time. Scrum Meetings are not canceled due to members who cannot attend the meeting. Scrum is made in all circumstances.
At the end of each Sprint, meetings are held to review the Sprint. The main purpose of these meetings is to make sure that the product is compatible with the customer’s wishes. If there is a mistake made, it can be intervened and corrected thanks to these meetings.
Meetings are held at the end of each Sprint to review the tasks completed. These meetings allow the team to improve itself. In these meetings, “What can we do better?”, “How can we do better?” Answers to questions are sought.