Software Engineering (2160701)

BE | Semester-6   Summer-2017 | 04/27/2017

Q2) (c)

Explain Scrum with merits and demerits.

What is Scrum?

  • A scrum is a method of restarting play in rugby that involves players packing closely together with their heads down and attempting to gain possession of the ball.
  • Scrum is an agile process model which is used for developing the complex software systems.
  • It is a lightweight process framework.
  • Lightweight means the overhead of the process is kept as small as possible in order to maximize the productivity.

Scrum framework
(Figure: Scrum framework)
 

Backlog

  • It is a prioritized list of project requirements or features that must be provided to the customer.
  • The items can be included in the backlog at any time.
  • The product manager analyses this list and updates the priorities as per the requirements.

Sprint

  • These are the work units that are needed to achieve the requirements mentioned in the backlogs.
  • Typically the sprints have fixed duration or time box (of 2 to 4 weeks, 30 days).
  • Change are not introduced during the sprint.
  • Thus sprints allow the team members to work in stable and short-term environment.

Scrum Meetings

  • There are 15 minutes daily meetings to report the completed activities, obstacles and plan for next activities.
  • Following are three questions that are mainly discussed during the meetings.
    • What are the tasks done since last meeting?
    • What are the issues that team is facing?
    • What are the next activities that are planned?
  • The scrum master leads the meeting and analyses the response of each team member.
  • Scrum meeting helps the team to uncover potential problems as early as possible
  • It leads to “knowledge socialization” & promotes “self-organizing team structure”

Demo

  • Deliver software increment to customer
  • Implemented functionalities are demonstrated to the customer
 

Merits of SCRUM:

Scrum can help teams complete project deliverables quickly and efficiently:
  • Scrum ensures effective use of time and money
  • Large projects are divided into easily manageable sprints
  • Developments are coded and tested during the sprint review
  • Works well for fast-moving development projects
  • The team gets clear visibility through scrum meetings
  • Scrum, being agile, adopts feedback from customers and stakeholders
  • Short sprints enable changes based on feedback a lot more easily
  • The individual effort of each team member is visible during daily scrum meetings
 

Demerits of SCRUM:

Nothing is perfect, and the Scrum methodology is no exception. In some cases, Scrum is combined with other project management techniques that can help resolve some of these drawbacks:
  • Scrum often leads to scope creep, due to the lack of a definite end-date
  • The chances of project failure are high if individuals aren't very committed or cooperative
  • Adopting the Scrum framework in large teams is challenging
  • The framework can be successful only with experienced team members
  • Daily meetings sometimes frustrate team members
  • If any team member leaves in the middle of a project, it can have a huge negative impact on the project
  • Quality is hard to implement, until the team goes through aggressive testing process