Scrum


Scrum is an inventive method of getting work done. It is also an agile framework for implementing projects. Originally, it was designed to handle software development projects. However, it can also be used for any complex, innovative scope of work and there are no limits to its use.




Scrum is a procedure that agile teams can familiarize quickly and use for achieving their aims and objectives. Every stage of scrum has specifications for plan, design, build, test and code. It also helps in tracking agile team performance. The scrum process is a simple and easy process to apply. However, there are some risks associated with scrum process and this includes that scrum focuses on building components with less concern for the complete system but this risk can be managed.

Consequently, the scrum process according to Potter & Sakry (2009), has three primary roles:
  • Product owner
  • Scrum master
  • Team members

Product owner
The product owner plays a primary role in the scrum process and this is because he or she is responsible for creating the vision of product and then communicating it to the development teams. This vision includes the customer’s specified requirement in the order of their prioritization.
Scrum master
The scrum master equally plays a vital role in the scrum process. In addition, the scrum master is the middleman linking the owner and the team. He or she is responsible for ensuring that the agile team achieve the required purpose of the development through motivation, constant communication among others.
Scrum teams
The main task of the team is to develop the requirements according to the customer’s specification. The scrum team are stated to usually comprise of software engineers, architects, analyst and testers among others.

Scrum Life cycle



The Scrum Life Cycle is composed of four phases: Planning, Staging, Development and Release (Larman, 2004).

scrum_lifecycle.jpg
scrum lifecycle

Scrum is a procedure that agile teams can familiarize quickly and use for achieving their aims and objectives. Every stage of scrum has specifications for plan, design, build, test and code. It also helps in tracking agile team performance. The scrum process is a simple and easy process to apply. However, there are some risks associated with scrum process and this includes that scrum focuses on building components with less concern for the complete system but this risk can be managed.
Consequently, the scrum process according to Potter & Sakry (2009), has three primary roles:
  • Product owner
  • Scrum master
  • Team members


The above example illustrates a scrum project and life cycle to build a hand-held medical system applied by Jeff Sutherland who is one of the Scrum founders. The delivery release cycle for the project was three months composed of three Scrum Sprints (iterations).
Planning: During this phase, the objective, set expectations of the project and where the funding for the project is going to come from is established. The product owner is responsible for producing a list of functions and features in close collaboration with the Scrum Team that should comprise the final solution.
Staging: More product and project requirements are identified and prioritised to allow the team the ability to define specific tasks that can be selected as work assignments. Any necessary and appropriate activity sequencing is outlined by the high level plan which is deliverable at this stage.
Development: The system is implemented ready for release in order to receive approval from key stakeholders to initiate the Scrum project. At this stage the planning meeting for the sprints takes place to discuss the customer driven protocols and the team focused protocols.
Release: The software product is deployed to the customer’s site during this phase. Any documentation, training, and sales and marketing are carried out at this stage.


The Scrum Framework



  • A product owner usually generates a wish list of what is expected known as a product backlog, the team then pull a small chunk from the wish list during sprint planning and decides on how to implement those pieces.
  • The team are usually given a time frame of two to four weeks to complete the work depending on the project and meet at the end of each day (daily scrum) to assess progress made.
  • The sprint master is responsible for keeping the team focused on its goal and any work at the end of the sprint should be in a workable state to hand in to a customer, put on shelf or show the stakeholder.
  • The sprint usually ends with a sprint review and retrospective.
  • The cycle is then repeated continuously until required items on the backlog are completed according to budget or a deadline is reached. Scrum ensures that most of the valuable work highlighted has been completed when the project ends.

Benefits of the Scrum



According to Pries & Quigley (2011), an effective and efficient scrum development process that is focused on maximising quality is described to
  • Deliver at first attempt, extraordinary value features that will be appreciated by the customer
  • In addition, it also reduces wastage of time and resources by avoiding irrelevant task
  • Subsequently, scrum allows for regular assessment, more frequent communication, adjustment and modification and promotes creativity amongst the team.
These benefits mentioned above helps in achieving the objectives of the organisation, production of high outputs as well as a satisfied customer in the end and also motivation for the team.

Disadvantages of Scrum



The disadvantages of Scrum can sometimes count as the advantages in some cases;
  • The client has to be continually involved in the project. However, while this can be seen as an advantage, it requires a lot of time and effort to manage the process
  • Scrum methodology makes problems more visible and this is due to the methodology allowing for control mechanisms through project life cycle, any problems arising at the end of each phase is made visible which can also lead to "scope creep".
  • It is stated to be more effective in smaller teams which implies that larger teams may have to be broken down into smaller sizes which could result in the smaller teams loosing sight of the overall project focus.
  • Increase in project cost: Scrum requires a certain level of training for all users which could increase the overall cost of the project.





See also

http://www.softeng.es/en-us/company/working-methodologies/scrum-methodology.html

http://learnsoftwareprocesses.com/2009/11/19/what-are-the-disadvantages-of-scrum

http://www.my-project-management-expert.com/the-advantages-and-disadvantages-of-agile-scrum-software-development.html

http://www.biznizgames.com/general.php?art=39

http://theagilemindset.wordpress.com/scrum-framework/

Motivation in Agile Teams






References


Pries, K.H. & Quigley, J.M. (2011) Scrum Project Management. Raton: Taylor & Francis Group LLC. [Online]. Available at:
http://books.google.co.uk/books?id=Of6JC-1DHloC&pg=PR11&dq=benefits+of+scrum&hl=en&sa=X&ei=WSFJT8mwLKOl0AWJz8DxDw&ved=0CF0Q6AEwBA#v=onepage&q=benefits%20of%20scrum&f=false. [Accessed: 25 February, 2012].
Larman, C. (2004) Agile & Iterative Development: A Manager’s Guide, Addison- Wesley
.
Potter,H. & Sakry, M.(2009) Implementing Scrum (Agile) and CMMI Together.[Online]. Available at:
http://www.itmpi.org/assets/base/images/itmpi/Potter-ScrumCMMI.pdf