Agile Methodology Tutorial

Agile Tutorial

Agile Tutorial some times called agile methodology. This tutorial contains basic and advanced concepts of agile. Our Agile tutorial is designed for beginners and professionals. Agile is an iterative approach of software development methodology using short iterations of 1 to 4 weeks. Using Agile methodology, the software is distributed with fastest and fewer changes. The advantages of agile methodology are customer satisfaction by rapid, continuous development and delivery of useful software.

What is Agile Methodology?

An agile methodology is an iterative approach to software development. Each iteration of agile methodology takes a short time interval of 1 to 4 weeks. The agile development process is aligned to deliver the changing business requirement. It distributes the software with faster and fewer changes.

The single-phase software development takes 6 to 18 months. In single-phase development, all the requirement gathering and risks management factors are predicted initially.

The agile software development process frequently takes the feedback of workable product. The workable product is delivered within 1 to 4 weeks of iteration.

Agile Methodology

Roles in Agile

There are two different roles in a Agile methodology. These are the Scrum Master and Product Owner.

1. Scrum Master

The Scrum Master is a team leader and facility provider who helps the team member to follow agile practices, so that the team member meets their commitments and customers requirements. The scrum master plays the following responsibilities:

  • They enable the close co-operation between all the roles and functions.
  • They remove all the blocks which occur.
  • They safeguard the team from any disturbances.
  • They work with the organization to track the progress and processes of the company.
  • They ensure that Agile Inspect & Adapt processes are leveraged correctly which includes
    • Planned meetings
    • Daily stand-ups
    • Demo
    • Review
    • Retrospective meetings, and
    • Facilitate team meetings and decision-making process.

2. Product Owner

The Product Owner is one who runs the product from a business perspective. The Product Owner plays the following responsibilities:

  • He defines the requirements and prioritizes their values.
  • He sets the release date and contents.
  • He takes an active role in iteration and releasing planning meetings.
  • He ensures that the team is working on the most valued requirement.
  • He represents the voice of the customer.
  • He accepts the user stories that meet the definition of done and defined acceptance criteria.

Cross-functional team

Every agile team contains self-sufficient team with 5 to 9 team members. The average experience of each member ranges from 6 to 10 years. The agile team contains 3 to 4 developers, 1 tester, 1 technical lead, 1 scrum master and 1 product owner.

The Scrum master and Product owner are considered as a part of Team Interface, on the other hand remaining members are the part of Technical Interface.

Agile Methodology

How an Agile Team plan their work?

An Agile methodology is not a specific set of ceremonies or specific development techniques. Rather, it is a group of methodologies that demonstrate a commitment to tight feedback cycles and continuous improvement. An Agile team works in iterations to deliver the customer requirement, and each iteration takes 10 to 15 days. However, the original Agile Manifesto didn't set the time period of two-week iterations or an ideal team size.

Each user requirement is a planned based and their backlog prioritization and size. The team decides, how much scope they have and how many hours available with each team to perform their planed task.

Agile Methodology

What is a user requirement?

The user requirement defines the requirements of the user in terms of functionalities. There may be of two type of functionality.

  • As a <User Role> I want <Functionality> so that <Business Value>
  • In order to <Business value> as a <User Role> I want <Functionality>.

During software release planning, a rough estimate is given to a user requirement using relative scale points. During iteration planning, the requirement is broken down into tasks.

Relation between User requirement and Task

  • User requirement talks about what is to be done. It defines the needs of users.
  • Task talks about how it is to be done. It defines how functionality is implemented.
  • User requirements are implemented by tasks. Every requirement is gathering as the task.
  • User requirement is divided into different tasks when it is planned in current iteration.
  • User tasks are estimated in hours based, generally it is between 2 to 12 hours.
  • Requirements are validated using acceptance test.
Agile Methodology

When the requirement is completed

The Agile team decides the meaning of task done. There may be different criteria for it:

  • When the entire task (development, testing) are completed.
  • When all the acceptance tests are running and are passed.
  • When no defects found.
  • Product owner has accepted the requirement.
  • When the software product is delivered to the end user.

What is Software Acceptance Criteria?

Acceptance Criteria is defined as the functionality, behavior, and performance required by a product owner. It defines what is to be done so that the developer knows when a user requirement is complete.

Prerequisite

Before learning agile methodology, you should have a basic understanding of software engineering or software development life cycle.

Audience

Our agile tutorial is designed to help beginners and professionals.

Problems

We assure that you will not find any problem in this agile tutorial. But if there is any mistake, please post the problem in contact form.