Você está na página 1de 7

Agile Interview Questions

Here are some of important Agile Interview Questions that one should be aware of:
1.

Whats the benefit of using Agile over conventional


Waterfall methodology for developing software?

Benefit of Agile Methodology

It provides greater visibility to stakeholder from the start of the sprint, which in turn
provide early feedback and ensures project success.

Risks are greatly reduced and handled in better way in agile.

Products can be delivered early.

Clients are more involved and have greater satisfaction.

Greater agility, changes could be incorporated early.

Development could be started early.


2. What are the different meetings in Agile? What is purpose of Release Planning,
Sprint Planning meetings, Scrum Meeting, Sprint Review Meeting, Retrospection?

Release Planning
In this release plan is prepared, which include list of features that needs to be delivered, release
date of software into Production, number of iterations/sprints for that release etc.
Spring Planning
In this product Owner presents the set of features he would like and the team asks questions to
understand the requirements in sufficient detail to enable them to commit to delivering the listed
features in sprint.
Daily Scrum Meeting
Daily Scrum Meeting is for answering the following 3 questions:
1. What have you done since yesterdays meeting?
2. What are you going to get done today?
3. What obstacles do you need to be removed?
Sprint Review
It is demonstration of the new features the team has completed during the sprint; it is used to
gather early feedback.

Sprint Retrospection
It follows immediately after the sprint review. It is focused on the process, the way in which
the Scrum team is working together, including their technical skills and the software
development practices and tools they are using.
In this meeting team discuss on following points:
1. What went wrong?
2. What went well?
3. What can be improved?
3. How you do Estimation in Agile? How to estimate using Planning Poker?
In Agile often estimation is done using planning poker:

Each member of team is given deck of card which contains stories points in Fibonacci
sequence: 0, 1, 2, 3, 5, 8, 13...

Scrum Master lists the user stories and provides brief overview of them. Team discusses
and clarifies any questions/risks.

Each team member privately assigns a card representing his estimate of the size for the
user story.

Later on all estimates are revealed and people having low estimates and high estimates
need to provide justification for the same and after discussion within team story point is
finalized for use story. Same is repeated for all user stories.
4. What is Continuous Integration and why it is important for Agile? What are the
software/tools available for the same?

Check this Continuous Integration


5. What is difference between Product backlog & Sprint Backlog?
Product backlog is owned by the product owner, which contains list of all desired features.
Sprint backlog is created in Sprint Planning Meeting. It is subset of product backlog which is
owned by development Team, who commits it to deliver in a sprint.
6. What is difference between Epic, User stories & Tasks? Who should create User
stories & Task?
User Stories defines business requirement from the client perspective and it is supposed to be
delivered in particular sprint.
Task: User Stories are further broken down into different task from technical perspective.

Epic is a group of related User Stories, or it is large use story which cannot be completed in
single Sprint.
User stories should be created by Product Owner as these are written from client perspective.
Tasks should be created by someone from Development Team who is aware about them from
technical perspective.
7. What is Pair Programming? Whats the benefit of that?
As per Wiki Pair programming is defined as:
Pair programming is an agile software development technique in which two programmers
work together at one workstation. One, the driver, writes code while the other, the observer or
navigator, reviews each line of code as it is typed in. The two programmers switch roles
frequently
Benefits of Pair Programming:

It helps in business and technical knowledge transfer within the team.

It improves code quality and helps in building better design.

In short term there may be loss of productivity but it increase productivity of resource
due to gain in business or technical knowledge.
8. What is TDD (Test Driven Development)?

As per Wiki TDD is defined as:


Test-DrivenDevelopment (TDD) is a software development process that relies on the repetition
of a very short development cycle: first the developer writes an (initially failing) automated test
case that defines a desired improvement or new function, then produces the minimum amount of
code to pass that test, and finally refactors the new code to acceptable standards.
9. What do you mean by Iterative and Incremental Development in Agile?
Iterative: In iterative development, software development is done in repeated cycles (Releases &
Sprints).In each iteration planned use stories are designed, developed, tested and deployed for
customer's feedback.
Release 1: Sprint 1, 2n
Release 1: Sprint 1, 2n
..
Release n: Sprint 1, 2n
Incremental:

As per Wiki Incremental Development defined as:


Incremental development slices the system functionality into increments (portions). In each
increment, a slice of functionality is delivered through cross-discipline work, from the
requirements to the deployment. The unified process groups increments/iterations into phases:
inception, elaboration, construction, and transition.
10. What is Burn-Down or Burn-Up Chart in Agile?
Burn Up and Burn Down charts are used to track project progress.
Burnup Chart shows progress of stories done over time. X Axis: Time, Y Axis: no. of user
stories completed.
Burndown Chart shows how much work was left to do over time. X Axis: Time, Y Axis: no. of
user stories remaining.
11. What do you mean by Velocity in Agile?
As per Wiki Velocity is defined as:
The velocity is calculated by counting the number of units of work completed in a certain
interval, the length of which is determined at the start of the project
Velocity is used in Agile to calculate the no. of stories that can be delivered in particular sprint
based on previous delivery.
12. What does Task board indicates in Agile?
Task board is used to track progress in agile. Generally it has following columns:
Use Story: Use Story under consideration for current sprint.
To Do: Tasks that needs to be picked up.
In Progress: Tasks that are currently in progress.
To Verify: Tasks that needs to verified/tested.
Done: Tasks that are completed.
Responsibilities Of Scrum Master In Agile

Scrum Master is important role in Agile Methodology.Following are the roles and
responsibility that scrum master plays in any agile project :
1. He leads and facilitates the daily Scrum Meetings.
2. He looks out for any impediments for team and removes them.
3. He participates in Release Planning Meeting.

4. He participates in Sprint Planning Meeting, where he provides story points to


user stories under discussion and also clarifies use stories.
5. He ensures that there are no business or technical implementation issues
with any of the user stories under current sprint, if there are any, he
escalates the same to other stakeholders.
6. He takes part in technical/design/business discussions.
7. He facilitates Demo of product features to product owner.
8. He leads and facilitates Retrospective Meetings and take corrective actions.
9. He report status of team to stakeholders, generally using burn up or burn
down chart.
10.He participates in Scrum of Scrum meetings(optional), and provide daily
status of his team and highlights any blocker/issues.
11.He coach the team to follow Agile Practices.
12.He ensures that product gets delivered on time and with good quality.
Scrum Master Interview Questions

Here are some of Important Scrum Master Interview Questions that one should
be aware of:
1. What are Responsibilities of Scrum Master?
Check this Responsibilities of Scrum Master
2. How you report status of your team in Agile?
In Agile team progress can be shown using Burnup or Burndown chart.
Burnup Chart shows progress of stories done over time. X Axis: Time, Y Axis: no. of
user stories completed.
Burndown Chart shows how much work was left to do over time. X Axis: Time, Y
Axis: no. of user stories remaining.
3. What are the challenges you have faced in your project while
adopting to agile methodology?
Depends on individual experience, you need to think of the challenges faced on the
line of agile process like: Changing requirements, Refactoring challenges,
aggressive delivery timeline, quality, integration issues, team velocity issues etc.

4.

What are the different tools for Agile?

Some of the important commercial tools available for agile project management:
Jira GreenHopper, VersionOne, Rally, Team Foundation (by Microsoft), Mingle (by
ThoughtWorks)
5. What you will do if you are in the middle of Sprint and know that
team will not be able to deliver on time?
Scrum master needs to be proactive in handling such situations and must share
information to stakeholder for any blocker/impediments. In such cases scrum
master needs to move some user stories out of the scope of sprint or add to new
resources after having agreement with stakeholders.
6. How you do Estimation in Agile? How to Estimate using Planning
Poker?

In Agile often estimation is done using planning poker:


Each member of team is given deck of card which contains stories points in
Fibonacci sequence: 0, 1, 2, 3, 5, 8, 13...
Scrum Master lists the user stories and provides brief overview of them. Team
discusses and clarifies any questions/risks.
Each team member privately assigns a card representing his estimate of the size
for the user story.
Later on all estimates are revealed and people having low estimates and high
estimates need to provide justification for the same and after discussion within
team story point is finalized for use story. Same is repeated for all user stories.
7. How you handle team's leaves in Agile?
In agile each member should declare his leave in advance so that it can be
considered during capacity planning of team.
8. What you will do if particular team member is not performing well?
If some team member is not performing well, then you need to make sure to take
this into considerations while calculating team velocity & capacity. Also you need to
arrange for special mentoring/ pair programming to help team members to come up
with speed.
9. What are different Agile Practices?

Some of the Best Practices that are adopted in Agile projects...


Daily Scrum Meetings
Pair Programming
Continuous Integration

Test Driven Development


Frequent Refactoring
Small Release cycles
Frequent Demo to users
Retrospection within team
Using Planning Poker for estimation
10.What is Spike and Zero Sprint in Agile? What is the purpose of that?
Sprint Zero is introduced to perform some research or initial work that is must
before starting first sprint. It is used during start of the project for activities like
preparing product backlog, setting development environment etc. If team need to
acquire enough business and technical knowledge before starting development than
zero sprint can be taken.
Spikes can be taken in between sprints for any POC, analysis work or work
related to any technical/design issue. Spikes are generally not showed in burndown.
11.How you will calculate velocity of your Team?
Velocity is calculated by adding user stories completed in sprint. Generally Scrum
Master tracks multiple sprints velocity to finalize team velocity.