Scrum is a trendy agile model. It satisfies the criterion of agile model characteristics and its own developed characteristics and terminologies such as Self-organizing teams, Sprints, Product Backlog, etc.
Scrum Model – Terminology
- Self-organizing team: A self-organizing team that decides who will do which work. It means the team members by themselves choose their own roles and activities. There is no chief programmer or somebody who assigns works to others.
- Sprints: The product progresses a series of month-long sprints. It is similar to increments in other models. The development work is done over several sprints, and each sprint is typically about a month long.
- Product Backlog: Requirements are captured as items in a list of the product backlogs, and it is a crux of the scrum model. The requirements are actually called user stories.
Scrum Model – Characteristics
Product backlog actually stores user stories, and it keeps on rising if the new user stories come. In the sprint planning meeting, one of the product backlogs, a user store, is selected, and the remaining are queued for the future sprints, and each sprint completes within a month. Every day, the developers meet for ten to fifteen minutes and try to resolve the problem if any individual or team faces, discuss what they achieved previously, and what their next plan, etc. This type of meeting is called daily scrum.
Once the sprint backlog is completed, there is a sprint review meeting, and after the approval, the product increment is deployed at the customer site. This shows that within a month, a sprint releases and is deployed at the customer site. This cycle continues until all the product backlog gets exhausted. The product backlog is dynamic in nature. As the work progresses, more user stories are put into the product backlog, and some user stories may get deleted because of requirements change.
Sprint: Scrum project progresses in a series of sprints. These are similar to extreme programming iterations or time boxes and typically about a month long. In the sprint, software increment is designed, coded, and tested. The sprint is a month-long plan, and once it is started, no changes will be entertained as this may hamper the developer’s focus, and as a consequence, they will not be able to achieve the exact timeline.
Scrum Model – Framework
Terminologies in the scrum framework.
- Roles: Product Owner, Scrum Master, Scrum Team
- Ceremonies: Sprint Planning Meeting, Sprint Review, Sprint Retrospective, and Daily Scrum Meeting.
- Artifacts: Product Backlog, Sprint Backlog, and Burndown Charts.
Product Owner: The product owner acts on behalf of the customer, and he/she may be a customer representative or a team member who acts as the customer. The product owner understands the software very well. The product owner’s responsibilities define the product features, decide the release date, prioritize new features, adjunct features, define priority in every sprint, and accept or reject the resultant work.
Scrum Master: The scrum master is also known as the project manager. The responsibilities of a scrum master are to remove any obstacle that the team faces and ensures that the team is fully functional and productive, shields the team from external interference, and acts as a buffer between the management and the team and with the team customer.
Scrum Team: The scrum team consists who is five to ten people with cross-functional skills, like coding, design, testing, quality assurance, and so on. The team members are self-organizing. They select their own roles, the ones that they can do best. In the scrum team, sometimes members may leave, or new members may join, but it is ensured that when the sprint is in progress, membership change is not allowed. Otherwise, the development work will get hampered.
Sprint Planning: The sprint planning produces the sprint backlog from the product backlog. The product owner who understands the customer requirement may be trying to select those stories that are the most value-added to the customer. The team members may like to take up those stories which require the least cost of development. The scrum master ensures during a sprint planning meeting whether the selected sprint backlog to be completed in one month, the team agrees to realistic goals; otherwise, it will put undue pressure on the team. All these discussions happen in the sprint planning.
Daily Scrum: The daily scrum meeting is at moring every day for ten to fifteen minutes. It is a stand-up meeting to indicate that they need to discuss and don’t allow it to become a long meeting. The daily scrum is not really a problem-solving session. Rather it is just for collecting information and removing any obstacles. The team members make informal commitments to each other and the scrum master. This is the way the scrum master tracks the progress of the team.
Sprint Review Meeting: The sprint meeting is done at the end of the sprint. The team presents the increment that has been completed, typically in the form of a demonstration. It is an informal meeting; just two hours of preparation should be enough, and the participant is typically customer representatives, management representatives, product owners, and other team members.
Product backlog: The product backlog contains all the work that needs to be completed towards the development. There are two types of entries, and these are typically maintained in the excel file. One is story-based which are basically the functional requirements, and the second one is task-based. These are not really the functional requirements, but these modules might have to be completed, which are not yet done. Once the entires have been populated in the product backlog, it is prioritized by the product owner continuously.
Sprint Backlog: The sprint backlog is the subset of product backlog items selected for the next sprint. Later, some items can get added to the sprint backlog because the team members may find that some items need to be completed. They update it daily during daily scrum meetings. The team members may add new entries or remove some unnecessary tasks. The team maintains the sprint backlog, unlike the product backlog.
Burndown Charts: These are charts to keep track of the progress of the work, and these are very simple but effective. There are mainly three types of charts. The sprint burndown char – It shows the progress of the sprint. The release burndown chart – maintain the progress of releases. And the product burndown chart – maintains the progress of the product.
Scrum Model – Scalability
Scrum is typically designed for small teams. But some people tried it for large projects also. For example, Jeff Sutherland reported that he has experimented with over 800 people, which is called the scrum of scrums. The work is divided among many scrum teams. The product owners, the scrum masters, meet, decide on the features that will be done on each team, and it is also called a meta scrum.
Reference
- Fundamentals of Software Engineering Book & NPTEL Video Lectures by Rajib Mall.
273 total views, 1 views today