Basics of Agile Development

Scrum is one of the most popular methodologies of agile development. It has the following characteristics:

  • A short, fixed schedule of cycles with adjustable scope, called sprints, to address rapidly changing development needs.
  • A repeating sequence of events, milestones, and meetings.
  • A practice of implementing and testing new requirements, called stories, to ensure that some work is release-ready after each sprint.
  • Commonly used roles such as product owner, scrum master, and group member.

Scrum Framework

The scrum framework contains the following processes:
  • Personal Backlog: Product owner defines a personalised backlog through filter criteria. Product owner has the privilege to define as many personalised backlogs as necessary; the definition of the personalised backlog is flexible and can be modified at any point of time.
  • Sprint Backlog: Sprint backlog is a list of stories the group members have agreed to complete for a sprint. During sprint planning, the scrum master collaborates with the assignment group to decide which stories they can commit to deliver in the sprint. Typically, they commit to the top ranked stories first. The group decides which scrum tasks are necessary for each story. The product owner should be present to answer any questions.
  • Sprints: Group members work to complete stories in the current sprint. During the daily stand-up meetings, group progress is tracked and members discuss the work completed the previous day, the planned work for the next day, and any blocking issues. The scrum master keeps the group members focused on completing the stories in the current sprint and tries to remove any impediments they face. At the end of the sprint, all the stories should be complete. Any incomplete stories are moved into an appropriate backlog, or sprint. A review meeting, known as a retrospective is conducted at the end of the sprint. It allows group members to discuss what went well and what did not, with the goal of improving future sprints.
  • Sprint planning: Sprint planning begins as the scrum master moves stories from the personal backlog into the current sprint.

Scrum Activities

The following are typical activities of the scrum process:
  • Sprint planning: The scrum group members select the stories that they can commit to deliver during a sprint.
  • Daily scrum: The scrum master meets briefly with group members each day to discuss progress, planned work, and any impediments (known as blockers).
  • Sprint reviews: At the end of the sprint, the scrum master and group members discuss the work completed and demonstrate new features to the product owner.
  • Sprint retrospectives: It is an opportunity for the scrum group to review the sprint, inspect itself, and discuss ways to improve the execution of future sprints.

Scrum Artifacts

  • Velocity chart: A chart displaying the historical performance of a group, used to better estimate the amount of work the group can deliver in a future sprint.
  • Burn down chart: A chart generated during a sprint that provides at-a-glance reporting of ideal sprint progress against actual sprint progress over time.