Agile Interview Questions Flashcards
What is agile? List some of Agile Frameworks?
Agile is a general approach to software development.
All agile methods emphasize teamwork, frequent deliveries of working software, close customer collaboration, and the ability to respond quickly to change.
Popular Agile frameworks:
● Scrum (70%)
● Kanban (5%)
● ScrumBan (8%)
● Extreme Programming (1%)
How is agile methodology different from the traditional waterfall process?
In agile methodology, features of the software are delivered frequently, so that the testing activity is done simultaneously with the development activity. Testing time is shortened as only small features need to be tested at once.
In agile methodology, changes are welcomed. For example, after the sprint demo if a client does not like something, feedback is taken to improve the product.
While in the waterfall model to implement any change in the requirements is hard.
Clients can’t see what they are going to get until a very late stage in the development life cycle. Testing activities take place at the end of the entire development process. Testing, in this case, occurs in one go.
Waterfall methodology is a closed process where all stakeholders are not involved in the development process whereas agile methodology requires an involvement of various stakeholders including customers.
Describe scrum? Scrum Framework
Scrum is an Agile framework for completing complex projects. It is applied to any product development effort.
Scrum Framework includes:
- Scrum Roles
- Scrum Ceremonies:
- Scrum Artifacts
Scrum Roles:
Scrum Team - Normally scrum teams have 5-9 team members. The development team can consist of Developers and Testers. This is a group of self-organized, value-driven and cross-functional team members.
Product Owner - He or she has the responsibility of delivering a whole concept of what to build and then convey the idea to the team. Also, they are the one who creates a wish list for the project which is called product backlog. Product owner usually prioritize the product backlog items and comes up with sprint backlog as well.
Scrum Master - He or she is responsible to move the team to the right direction and handle all needs of the team. Scrum master is the coordinator that assures team productivity and follows agile principles. Also, if there are any issues or blockers the scrum master is the point of contact to handle such matters.
Scrum Ceremonies:
Sprint Planning - Here the Product Owner selects the Product Backlog Items (User Stories) from the Product Backlog. Most important User Stories at the top of the list and least important User Stories at the bottom. The Scrum Development Team decides and provides the effort estimation. For example, 4 hours up to 20 hours etc.
Sprint Demo - This is usually led by SME or test lead where we will have a demo for clients (Stakeholders) and showcase what was developed and answer any questions they have in a quick walk through of what was built and also receive feedback.
Sprint Retrospective – Here the scrum team meet and document the lessons learned in the earlier sprint such as “What went well”, “What could be improved”. It helps the Scrum Team to avoid the mistakes in the next Sprints.
Daily Scrum - Everyday we will have a 15 minute scrum meeting to answer the following question:
● What did he/she do yesterday
● What he/she will do today
● What are the impediments(blockers) faced
Scrum Artifacts:
Product backlog - The entire application that we want to develop and sort in user stories.
Sprint Backlog - The items that we are going to develop in a specific sprint.
Burndown Chart - Chart to determine the progress on the sprint.
What’s a user story?
User stories are short and simple descriptions of capabilities. They are written from the perspective of a user or customer of the system. Another word for user story is Requirement.
EXAMPLE:
As a [valid user], I want [to access the system] so that [I can review my information].
As an [administrator], I want to [restrict access to the system to valid users] so that [I can ensure we protect user information].
What is an epic?
An epic is a large user story that cannot be delivered as defined within a single Sprint. It is large enough that it can be split into smaller user stories.
What is spike?
Spike is the type of story where the team needs to do some research related to the design or technical issues.
Spikes will have 0 story points.
What is a parking lot?
This usually comes up in meetings, especially daily stand up meetings.
It’s a problem not relevant to others in meetings and we should not discuss it to waste other team members time.
For that, scrum master can arrange separate meetings at a later time.
Explain what Velocity is in Agile?
Velocity is the sum of story points that a scrum team completes (meets the definition of done) over a sprint.
It figures out how much work a team can complete in a sprint and how much time will it need to finish a project.
How do you track your progress in a sprint?
The progress is tracked by a “Burn-Down chart”. A burndown chart is a graphical representation of work left to do versus time.
What is DoD? How is this achieved?
DoD stands for Definition of done.
It is achieved when:
● The story development is complete,
● QA complete,
● Regression around the story is complete,
● The feature is eligible to be shipped / deployed in production.
What challenges have you had in an agile environment?
● Changing of Requirements.
● Not Enough Information on the Story
● Estimating Time For Completing Task
● Waiting on Development to be completed before testing
Is it possible that you come across different story points for development and testing efforts? In that case how do you resolve this conflict?
Yes, this is a very common scenario. There may be a chance that the story point given by the development team is, say 3 but the tester gives it 5.
In that case both the developer and tester have to justify their story point, have discussion in the meeting and collaborate to conclude a common story point.
You are in the middle of a sprint and suddenly the product owner comes with a new requirement, what will you do?
In an ideal case, the requirement becomes a story and moves to the backlog. Then based on the priority, the team can take it up in the next sprint.
But if the priority of the requirement is really high, then the team will have to accommodate it in the sprint, but it has to be very well communicated to the stakeholders that incorporating a story in the middle of the sprint may result in spilling over a few stories to the next sprint.