AGILE

Let’s talk about Agile methodology…Part 2

Bi
5 min readApr 24, 2023
Photo by Eden Constantino on Unsplash

In the previous write-up, the focus was on the waterfall methodology which was prevalent before the use of the agile methodology and its prominent shortfalls which are communication and timeliness. Although it is still in use today howbeit rather sparingly.

AGILE

Agile is focused on addressing the shortfalls of waterfall. To achieve this, agile implements the Scrum project management framework. Which is built around some principles which are focused on effective communication between stakeholders and the timeliness of project deliverables.

Agile vs Scrum

Most times, scrum and agile are used interchangeably however, they are not the same. Scrum is a framework that emphasizes continuous improvement which is the principle that agile implements — iterative development. Agile tackles the shortfalls of waterfall through continuous improvements and frequent releases; essentially, agile implements the Scrum framework to achieve its goals of iterative incremental development.

Agile emphasizes iterative development; for example, we have a project to design a website, implementing the agile methodology, we would break the website into several components like the login, sign-up, profile, blog and log-out components. The first component — login will be developed, tested and essentially go through the entire Software development process and at the end of the sprint, the business users are invited for a demo on how this component works. By this, the project is gaining traction, we can set realistic timelines for the overall project, the stakeholders have a feel of each component and if there are any corrections, they can be made as soon as possible with little fuss and increased satisfaction across-board. The next component is picked up in the next sprint and worked on based on the already existing component.

A sprint is a pre-set time frame during which specific work has to be completed and ready for review. The term, “completed” or “done” has to be agreed upon by all the members of the team and is usually based on certain criteria set by the team. If these criteria are not met then the work is not said to be done or completed and so, the sprint cannot be marked as successful.

From the definition of the term “sprint”, it is evident that Agile thrives on principles such as teamwork, mutual respect, cooperation, communication, transparency and any other ideals that a team may deem as important to its proper functioning. Agile has its core emphasis but at its heart, it also recognizes the peculiarity of each team and business therefore, it provides a lot of room for teams and organizations to create systems around these core values that resonate properly with their environments and peculiarities. To this end, the practice of Agile from team to team, and organization to organization may differ slightly however, its core or fundamental values remain the same across board.

The structure of an Agile team

  • The Development Team is made up of software engineers, QA testers and security testers. The members of this team possess varying skill sets but perhaps the most emphatic strength of an agile development team is that they cross-train each other which means that with time, people pick up different skills which reduces the chances of the team being overdependent on an individual.
  • The Scrum Master is usually the Scrum champion. They coach the team on the scrum process, they are so committed to the process and so find better ways to make it adaptable to the peculiarity of the team. They are often viewed as the middleman between the development team and the other members of the agile team.
  • The Scrum Product Owner is focused on the product. They have an in-depth understanding of the product, business, clients and market needs. They are the middleman between the agile team and the business. They protect the interest of the business in the agile team and build the product backlog; they serve to clarify any ambiguity or confusion that the team has with respect to the items in the backlog. They also maintain the product backlog and prioritize the items therein accordingly.

Scrum Ceremonies

  • Backlog Refinement: The backlog is owned and maintained by the Product Owner. The aim of an agile team is to drive the product toward completion, deployment and engagement by users. The Product Owner maintains the backlog based on feedback from users and business priority. He keeps the backlog clean, devoid of ambiguity and easy to be picked up by the development team.
  • Sprint planning: This activity kicks off the sprint. The scope of the sprint is defined during sprint planning. Every member of the agile team takes part in this process with the scrum master spearheading it. During this process, the sprint goal is decided along with the acceptance criteria. The items or tasks added to the sprint are user stories taken from the backlog.
  • Daily Stand-up: This meeting usually lasts for about 15 minutes. It is when every member of the team recounts in short detail the work they did in the last 24 hours and what they hope to achieve in the next 24 hours. It also gives everyone the opportunity to state their impediments. The purpose of this meeting is to bring everyone up-to-speed with the general progress of the sprint goal, understand what each team member is doing and provide help with dealing with impediments and roadblocks.
  • Sprint Review: Just as the name implies, this is a meeting that focuses on reviewing the work done in the sprint and taking feedback. It involves showing stakeholders the “Completed” or “Done” user stories as well as providing a demo of the work done.
  • Sprint Retrospective: This occurs at the end of the sprint. In this session, members of the team discuss and document what happened in the sprint: what went well, what went wrong and what can be improved upon to make future sprints better.

In the end, scrum is a framework that is implemented in the agile methodology. Scrum emphasizes continuous improvement — iterative development and has a lot of ceremonies built around it which fosters communication between team members and stakeholders. These two positives are what makes agile much more prominent than waterfall in the IT industry.

I am always available for a quick chat via LinkedIn mostly, and Twitter.

Watch out for my next write-up.

Thank you for reading.

--

--

Bi

Data Science, Software Development and lots of Satire...