SQLAuthority News – Scrum: Agile Software Development for Project Management

This is something I have learned while working for so many years as Project Manager. It is not as important to know how things are done but it is important to know how to get things done. Scrum is an Agile Software Development system which helps developers to get project done in reasonable time and with superior quality.

Scrum is organized around the following roles:

  • Product Owner – Determines what functionality is needed
  • ScrumMaster – Leads the Scrum and is primarily responsible for making sure the Scrum process is followed and removing impediments that keep the Team from working
  • The Team – Those who do the actual work that translates what the Product Owner has requested into usable functionality

The following is a synopsis of the Scrum process:

  • The Product Owner creates the Product Backlog (List of Desired Functionality in the System)
  • A meeting is held with the Product Owner, the ScrumMaster and the Team
  • The Team commits to getting x number of items from the Product Backlog done in 30 days. This 30 day block is known as the Sprint
  • The Team makes a Sprint Backlog (List of items that must be done to turn the Product Backlog items into shippable items during the Sprint)
  • The ScrumMaster meets with the Team daily and asks each member three questions:
    • What have you completed for the Sprint in the last day?
    • What will you complete for the Sprint tomorrow?
    • Is anything impeding you from getting your work done?
  • The Daily Scrum causes the Team to reveal exactly where it is, or where it isn’t
  • The ScrumMaster keeps distractions away from the Team
  • The Team self-organizes and keeps the Sprint Backlog up-to-date
  • An item on the Sprint Backlog is done when code is well-written, well-structured and thoroughly tested
  • At the end of the Sprint, a Sprint Review meeting is held
  • Items not completed during a Sprint are allocated to a future Sprint

Other important notes to keep in mind when utilizing the Scrum process:

  • Scrum makes a project’s progress and problems constantly visible
  • Every Sprint produces an increment of potentially shippable functionality
  • Scrum must be put into place before it can be fully understood
  • Scrum focuses on what can be done
    • It instills the “art of the possible” and allows work to go forward before things are “perfect”
    • You will never achieve perfection, no matter how much planning you do
    • Sprints are time-boxed to keep the team from searching too much for perfection
    • Focus efforts on a small set of pressing problems
    • Define work that will allow concrete results
    • Planning doesn’t have to be extensive for a Scrum project to get going
    • The minimum is a vision and a Product Backlog
  • Scrum is anti-sequential
    • Get going on what can be done
    • Help each other out
    • Collaborate
    • Sequential tasks divide a team
  • In Scrum, an estimate is not a contract
    • Scrum expects exceptions to the plan and doesn’t fear them
    • Adaptation is a normal part of the process

Reference : Pinal Dave (http://blog.SQLAuthority.com), Comments from Scrum Team Members, Many Online Resources

About these ads