The story of agile movement applied to software development starts in February 2001, when the worldwide statement and principles of agile development were accepted after the meeting of devotees to simplified methods of programming. This event pushed forward the roll-out of collaborative development and simplified approaches to make the code easier to understand for diverse cultures and groups of different educational background (Dave, 2005). This event, however, was preceded with earlier investigations among scholars and researchers.
Understanding the idea of iterative and incremental development applicable, summarized as agile development today, Larman and Basili (2003) described several government and commercial projects, existed or deployed starting from 1950s. Authors stated that a computer program developed for the first time should be arranged in way so that final version of the product delivered to the customer for operational deployment is actually “the second version insofar as critical design/operations areas are concerned” (Larman and Basili, 2003, p. 48) This two-step versions approach later evolved into the waterfall model known as the series of iterations in software development process, essential for the further formation of both project management in information technologies and collaborative development in team environment.As a result of the described facts, the interest to the topic risen significantly in 1990s with the increasing need to design certain systems requiring significant attention to the steps taken through the development life cycle.
Consequently, this led to a formation of certain groups within programmers who either anticipated or confronted the principles of iterative approaches. First group capitalized on effectiveness of the ideas evolving in parallel with programming and customer reviews. Second group focused on the initial purpose of software development of following the initially planned steps until the end. As seen, the acolytes of the first one were the initiators of agile development principles. Today, agile methodology is often described as an alternative to traditional project management, recognized for its usefulness in responding to unpredictable cases through iterative work cadences known as sprints (Agile Methodology, 2008). To the date, Scrum is considered as the most popular way of introducing agile methods of programming. Scrum is a low-formalized production method based on sprints and a set of meetings which depending on their purpose, defined as planning, review and retrospective meetings. Planning meetings take place at the start of a sprint.
Their purpose is to ensure common understanding of the user stories, required architecture and design of the software. The review meetings occur at the end of a sprint. Their purpose is to provide the product owner with idea of where the project is going. This is also a chance to the product owner to make appropriate changes. The retrospective meetings are also held at the end of a sprint. They give an opportunity to the team to assess their work and make improvements (DeSouza, 2012). The important trends of Scrum are continuous delivery and team motivation, since progress and efficiency under Scrum are measurable.Scrum does not have an explicit …