Introduction
The Agile methodology is a way to manage a project by breaking it up into several phases. It involves constant collaboration with stakeholders and continuous improvement at every stage. Once the work begins, teams’ cycle through a process of planning, executing, and evaluating. Agile project management works off the basis that a project can be continuously improved upon throughout its life cycle. Agile Methodology meaning a practice that promotes continuous iteration of development and testing throughout the software development lifecycle of the project.
Process of Agile Methodology
Scrum
SCRUM is an agile development method which concentrates specifically on how to manage tasks within a team-based development environment. Scrum methodology is a simple framework for working with complex projects
Agile software development methodologies are iterative, meaning the work is divided into iterations, which are called Sprints in the case of Scrum. Scrum is executed by small teams of between 7-9 people, including a Scrum Master and a Product Owner.
In Scrum, projects are divided into cycles (typically 2- or 3-week cycles) called Sprints. The Sprint represents a timebox within which a set of features must be developed. Multiple sprints might be combined to form a Release – where formal software/ product delivery is made to the customer/ market.
Scrum Roles:
- Scrum Master
- Product Owner
- Team
Scrum Master
- Scrum Master is responsible for setting up the team, sprint meeting and removes obstacles to progress.
- The ScrumMaster is responsible for making the process run smoothly, for removing obstacles that impact productivity, and for organizing and facilitating the critical meetings.
- Scrum master will be tracking each and every activity done by developers and Test engineers
- Scrum master will be working on the project management tool such as QC and JIRA and the epic and also create task for the stories.
Product Owner
- The Product Owner is the keeper of the requirements.
- The Product Owner provides the “single source of truth” for the Team regarding requirements and their planned order of implementation.
- In practice, the Product Owner is the interface between the business, the customers, and their product related needs on one side, and the Team on the other.
Team
- The Team is a self-organizing and cross-functional group of people who do the hands-on work of developing and testing the product.
- Since the Team is responsible for producing the product, it must also have the authority to make decisions about how to perform the work.
- The Team is therefore self-organizing: Team members decide how to break work into tasks, and how to allocate tasks to individuals, throughout the Sprint.
Sprint Planning
Sprint planning is a stage in Agile methodologies when teams decide which tasks they’ll complete in an upcoming sprint. Learn how you can easily begin sprint planning and ways to keep the Agile process organized for your team. this meeting is often run by the product owner or a Scrum master.
Product Backlog
This is a repository where requirements are tracked with details on the no of requirements (user stories) to be completed for each release. It should be maintained and prioritized by Product Owner, and it should be distributed to the scrum team. Team can also request for a new requirement addition or modification or deletion
Process flow of scrum testing
- Each iteration of a scrum is known as Sprint
- Product backlog is a list where all details are entered to get the end-product
- During each Sprint, top user stories of Product backlog are selected and turned into Sprint backlog
- Team works on the defined sprint backlog
- Team checks for the daily work
- At the end of the sprint, team delivers product functionality
Four Core values of Agile Methodology
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
Advantages of Agile Methodology
- Increase the quality of the deliverables
- Cope better with change (and expect the changes)
- Provide better estimates while spending less time creating them
- Be more in control of the project schedule and state
- Time consumed is very less