What is Agile Development?
Agile Development is a process that speeds the delivery of functionality to end users by segmenting a system into pieces for delivery, rather than delivering all of the system functionality in one large implementation. The goal is to reduce the time between requests and delivery of Business Application Systems.
Pierson’s Agile Training for BAs & Product Owners will teach you how to gather agile requirements and use collaborative techniques for Agile Projects. The training focuses on the scrum process and provides group exercises in conducting scrum meetings, grooming sessions, building backlogs, sizing & estimating and sprint planning.
What is the Agile Methodology SCRUM Process?
To be successful, agile projects require a consistent management process. Below is a description of the various roles and essential tasks from planning to deployment.
(Before the sprint starts) The Product Owner gathers the project goals and features they would like built. The project team works with the product owner to identify these system features which are captured on product backlogs and prioritized. Once the product backlogs are created and prioritized the team creates the user stories and estimates the size.
Plan the First Sprint
Sprint Planning Meeting should occur before each Sprint begins with the development team and business users to determine the items that should be developed next based on the business priority and dependencies. Agile projects are divided into iterations or sprints based on time and development effort. Sprints are typically between 2 – 4 weeks. The goal is to deliver usable software to the business at the end of each sprint. The team will perform requirements analysis, analysis, design, code and test tasks for the user stories in each sprint. A sprint plan defines the teaks required to complete the product backlog item or user story with the estimated man hours for each task.
The Scrum Master is responsible for facilitating the 15 minute brief daily status meetings called scrum meetings.Agile project teams conduct these meetings to ensure everyone is on task and has the tools and information needed to complete their tasks. Each member is asked to speak about the status of their work by answering the following:
- What have I accomplished since our last meeting?
- What I will work on today?
- What impediments or blockers that might prevent me from making progress?
Backlog Refinement Meetings
Most User Stories initially need refinement because they are too large and poorly understood. Teams have found it useful to conduct a refinement or grooming session to discuss the next sprint and prepare a backlog. The team estimates the amount of effort they would need to complete the items on the product backlogs. The Product Owner prioritizes the user stories. Typically, prior to the new sprint the following will occur:
- Reviewing and prioritizing the product backlog
- Re-sizing the user stories using story points or t-shirt size
Demo or Review Meetings
At the end of the sprint, the team holds a meeting to demonstrate a working product increment to the Product Owner and anyone else interested. The Product Owner reviews the commitments made at the Sprint Planning Meeting and determines the user stories that he/she considers done. The team discusses the stories that will be completed in the upcoming sprint. New features might be added to the product backlogs due to increased understanding of the features needed by the business.
Each Sprint ends with a retrospective. To continue improve, the sprint team will meet and answer these three questions:
- What things should we stop doing?
- What should we start doing?
- What things are working well for us, so we should continue to do them?
The Scrum Master is responsible for reviewing the sprint status, discussing the changes required to improve the results for the next sprint. The team gains agreement on how the next sprint will be run and makes adjustments to improve the efficiency of the sprint process.
Product and Sprint Release
At the end of the sprint, the Product Owner decides whether to ship and release. They communicate to the stakeholder community:
- When the contents of the sprint are ready for deployment
- Inform the user population of the changes to the system
They provide training for the new functionality to the stakeholder community including the help desk.