Agile Methodology (Scrum Approach) Scrum is a team of eight individuals in Rugby. Everyone in the pack acts as one with everyone else, to move the ball down the field in small incremental steps. Teams work as tight, integrated units with the whole team focusing on a single goal." Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). The business sets the priorities. Our teams self-manage to determine the best way to deliver the highest priority features. Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance for another iteration. A Statement of Values Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan In today s competitive era, software and product development has become a much bigger challenge than any time before. Project or product sponsors not only have the challenges or pressure to compete with existing products in market but also to design and develop a better system for the future. This leads to changes in
requirements during the project. Keeping teams motivated and focused is another challenge of the shifting business demands and requirements. Scrum works well in this scenario because it enables the teams to be flexible with the project scope by defining a prioritized list of features. Agile methods are considered Lightweight People-based rather than Plan-based Several agile methods No single agile method XP most popular No single definition Agile Manifesto closest to a definition Set of principles Developed by Agile Alliance Scrum at a glance Scrum is a set of interrelated practices and rules that optimizes the development environment, reduces organizational overheads and closely synchronizes market requirements with iterative deliverables.
Based in the modern process control theory, Scrum causes the best possible software to be constructed given the available resources, acceptable quality, and required release dates. A key principle of Scrum is its recognition that during a project, the customers can change their minds about what they want and need (often called requirement churn) and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. Scrum can be implemented at the beginning of a project or in the middle of a project or during the product development stage that is in trouble. Useful product functionality is delivered in each iteration as requirements, architecture and designs emerge. Solution The Scrum Process Scrum is a process skeleton that includes a set of practices and predefined roles. The main roles in Scrum are the Scrum Master who maintains the processes and works as a project manager, the Product Owner who represents the stakeholders, and the Team that includes the developers. Product Backlog The product backlog is a high-level document for the entire project. The set of features that go into a sprint come from the product backlog, which is a prioritized set of high-level requirements of work to be done. Sprint Backlog The sprint backlog is a very detailed document containing information about how the team is going to implement the requirements for the upcoming sprint. Which backlog items go into the sprint from product backlog is determined during the sprint-planning meeting. During this meeting, the Product Owner informs the team of the items in the product backlog that he wants completed. The team determines how much of the proposed backlog they can commit to complete during the sprint. During a sprint, no one can change the sprint backlog, which means that the requirements are frozen for that sprint. After a sprint is completed, the team demonstrates the use of the software. Sprint Sprint is a time-boxed period of time (quite often 30 days) during which the Team works to turn the selected Product Backlog items into an increment of potentially demonstrable product functionality. At the end of each sprint, team must produce demonstrate-able, release-able software. After just a few sprints, the software is used in sales demonstrations. The product can be released to the market early with only the highest priority features. R U M
Scrum Roles Product Owner The Product Owner represents the voice of the customer. They ensure that the Scrum Team works with the prioritized backlog from the business perspective. The Product Owner writes User Stories, prioritizes them and then places them in the Product Backlog. Scrum Master (or Facilitator) A Scrum Master, whose primary job is to remove impediments that may stop or slow down the team from delivering the sprint goal, facilitates Scrum. The Scrum Master is not the leader of the team (as they are self-organizing) but acts as a buffer between the team and any distracting influences. The Scrum Master ensures that the Scrum process is used as intended. The Scrum Master is the enforcer of rules. Team The team has the responsibility to deliver the product. A small team (5-9 people) with crossfunctional skills such as designer, developer and tester etc. to do the actual work. The Scrum Meeting Each day during the sprint, a project status meeting occurs. This is called a Scrum or "the daily standup". The Scrum has specific guidelines: During the meeting, each team member answers three questions: What have you done since yesterday?
What are you planning to do by today? Do you have any problems preventing you from accomplishing your goal? (It is the role of the Scrum Master to take a note of these impediments.) At the end of every sprint cycle, a sprint retrospective is held during which all team members reflect about the past sprint. The purpose of the retrospective is to make continuous process improvement. Two main questions are asked in the sprint retrospective: What went well during the sprint? What could be improved in the next sprint? C R U M Mischievous Facts: The meeting starts precisely on time Often there are team-decided punishments for tardiness (e.g. money, push-ups) The meeting is time boxed at 15 minutes regardless of the team's size All attendees should stand (it helps to keep meetings short) The meeting should happen at the same location and same time every day Advantage Scrum A higher-quality solution: Improved communication between stakeholders and teams through regular demonstrations and the prioritized product backlogs
Testing being conducted throughout, rather than squeezed at the end An on-schedule solution: Scrum enables the creation of self-organizing teams by encouraging communication across all team members and disciplines that are involved in the project A release-able solution at the end of each sprint In a nutshell, Scrum provides a way for the business to maximize its ROI by using iterative development to rapidly create a working software. It ensures that the team is always working to deliver the highest priority features. The Scrum Approach Fastigium Way Improved Visibility: Uncovers many hidden issues that exist within teams in the beginning such as project and task estimation, lack of product focus/priorities and dependencies etc. Increased clarity and communication: Clears product expectations between both the product owner and the product team through dialogue Iterative innovation: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly Increased productivity, improved ownership and accountability, enhanced planning, improved collaboration and cooperation, focused quality are few salient advantages Fastigium Technologies has experienced with Agile & Scrum Implementation. For more information, contact Phone: +1 (646)-330-5942 Email: services@fastigiumtech.com Web site: www.fastigiumtech.com