We are aware of the fact that there are 12 principles behind Agile Manifesto. Here is a simple way to understand and practice these principles. We can do this by correlating the principles to Scrum activities.
In the Scrum framework, there are specific activities that can be stated as follows:
- Establish and maintain the customer relationship.
- Create and manage the product backlog.
- Hold sprint planning.
- Practice the Daily Scrum.
- Hold sprint reviews.
- Hold sprint retrospectives.
We now uncover the principles behind these activities and associate them.
1. Establish and maintain the customer relationship
In order to establish the customer relationship, we have to present something that the customer desires. And, to maintain a persistent customer relationship, we have to meet the customer’s expectations of the quality, cost, and meeting the schedule of the deliverables. The business and technical teams work together to remove gaps in each other’s perceptions of the product vision and to be on the same page.
2. Create and manage the product backlog
The product owner works with the business to create the product backlog with requirements. In order to identify the high-priority items in the product backlog, not all the requirements should be treated with equal importance. With due diligence and input from the business, the product backlog gets prioritized by the product owner. The amount of work to be done is minimized when the team has settled on a small list of items that have high priority. The product backlog is visited regularly to add new items and reprioritize existing items according to changing market conditions or business needs.
3. Hold sprint planning
The development team analyzes the existing architecture and design to determine whether they need to tweak the existing architecture or design to suit the requirements or to create a new one. Based on the conclusion, they estimate the amount of work that needs to be done to convert the requirements into working software. The necessary environment and support have to be provisioned to the development team to let them work toward the sprint goal.
4. Practice the Daily Scrum
The Daily Scrum is administered by and for the development team, and they are expected to participate regardless of the presence or absence of ScrumMaster or product owner. They should adhere to the 15-minute time limit and plan their discussion accordingly. Predominantly, people have the ability to read a face effectively and get the feel of atmosphere around rather than elicit the situation solely from the tone of the individual's voice. Hence, face-to-face conversation is encouraged, and it conserves time as the exchange of information via emails or telecommunication requires an investment of time and effort.
5. Hold sprint reviews
The stakeholders review the working software and provide their feedback. This could be acceptance or amendment or rejection of the deliverable. The amendment could be an improvement or complete rework. Regardless of the essence of the assessment, it has to be accepted by the Scrum Team, as the future sprints' work depends on it. Ultimately, the recommendations get incorporated into the product backlog and prioritized.
6. Hold sprint retrospectives
The Scrum Team always works toward betterment in everything they do. But to err is human, so the best thing to do is to learn from mistakes. The team introspects their work for the sprint and identifies the causes of failure and determines solutions. They employ the solutions for future sprints as required.