Agile software development, overall follows a “Rolling Wave” pattern, in which milestones are defined, but flexibility on how to reach them is maintained, and some margin is left for the milestones themselves to change if needed. It is by name an adaptive method, therefore each organization and project applies a different combination of its methods and practices to best suit their need.
There are an endless number of different methods and practices which can be followed in agile software development, therefore we will not divulge into all of them, but explore some of the popular ones which we use at Promobi Technologies.
A scrum is a flexible product development strategy where a development team works as a unit to reach a common goal.
There are three core roles in a scrum: the product owner, the development team and the scrum master.
Scrum has three tangible artifacts:
The Daily Scrum/Stand up is an informal meeting, held at the same time every day, for about 15 minutes, during which all members of the development team answers to three important questions.
- 1. What did I do yesterday to help the development team meet the sprint goal?
- 2. What will I do today to help the development team meet the sprint goal?
- 3. Am I facing any obstacles that will prevent me or the development team from meeting the sprint goal?
Using the product backlog, the scrum team selects, understands, and delegates the work to be done in the upcoming sprint, priority wise. This creates a common understanding of the product backlog items within the team, and the time to accomplish each. Accordingly a forecast of what work will be completed in the sprint is made, along with the plan for accomplishing the work. From this, the sprint backlog is created.
At the end of each sprint, the scrum team and stakeholders review the product increment. This includes presenting an overview of the product increment to the stakeholder, along with a demonstration, and a discussion about the state of the product backlog in case of any changes.
At the end of each sprint, the Scrum team meets for the sprint retrospective, during which the team members review the process and identify potential improvements.
Product Backlog Refinement
This is an ongoing activity throughout the scrum process. In which the order of the product backlog items is confirmed, unimportant items are removed, items are added or promoted, larger items are often split into smaller ones, smaller items are merged if required, time requirement for each is estimated and sprint-ready items are identified.
Scrum is really just one method of Agile Software Development, and while there are many other practices that can be followed, this is the most popular and widely used method. Naturally, the scrum methods and practices are adapted as per the company and project, but given here is the overall framework of the Scrum process. In the next blog we will identify some of the other agile development practices used by Promobi Technologies.
Written by: Dipika Asnani, Digital Marketing & Content Writer at Promobi Technologies Pvt. Ltd. www.promobitech.com