Agile Interview Questions and Answers
by Mohammed, on Mar 22, 2018 4:32:27 PM
Q1. What is Agile Testing?
Ans: Agile Testing is a practice that a QA follows in a dynamic environment where testing requirements keep changing according to the customer needs. It is done parallel to the development activity where testing team receives frequent small codes from the development team for testing.
Q2. What is re-factoring?
Ans: Modification of the code without changing its functionality to improve the performance is called re-factoring.
Q3. Explain Velocity in Agile?
Ans: Velocity is a metric that is calculated by addition of all efforts estimates associated with user stories completed in a iteration. It predicts how much work Agile can complete in a sprint and how much time will require to complete a project.
Q4. What is a test stub?
Ans: A small code which mimics a specific component in the system and can replace it. Its output is same as the component it replaces.
Q5. What is Test Driven Development (TDD)?
Ans: It is Test-first development technique in which we add a test first before we write a complete production code. Next we run the test and based on the result refactor the code to fulfill the test requirement.
Q6. What is Agile manifesto?
Ans: Agile manifesto defines an iterative and people-centric approach to software development. It has basically 4 key values and 12 principals.
Q7. What is the difference between burn-up and burn-down chart?
Ans: Burn-up and burn-down charts are used to keep track the progress of the project.
Burn-up charts represent how much work has been completed in any project whereas Burn-down chart represents the remaining work in a project.
Q8. What qualities should a good Agile tester have?
Ans:
- Agile tester should be able to understand the requirements quickly.
- Agile tester should know Agile concepts and principals.
- As requirements keep changing, he should understand the risk involve in it.
- Agile tester should be able to prioritize the work based on the requirements.
- Communication is must for a Agile tester as it requires a lot of communication with developers and business associates.
Q9. What is a Task board in Agile?
Ans: Task board is dash board which shows progress of the project. It contains:
- User Story: which has the actual business requirement.
- To Do: Tasks that can be worked on.
- In Progress: Tasks in progress.
- To Verify: Tasks pending for verification or testing
- Done: Completed tasks.
Q10. Define the roles in Scrum?
Ans: There are mainly three roles that a Scrum team have:
- Project Owner – who has the responsibility of managing product backlog. Works with end users and customers and provide proper requirement to the team to build the proper product.
- Scrum Master – who works with scrum team to make sure each sprint gets complete on time. Scrum master ensure proper work flow to the team.
- Scrum Team – Each member in the team should be self-organized, dedicated and responsible for high quality of the work.
Q11. What is Product backlog & Sprint Backlog?
Ans: Product backlog is maintained by the project owner which contains every feature and requirement of the product.
Sprint backlog can be treated as subset of product backlog which contains features and requirements related to that particular sprint only.
Q12. Explain the difference between traditional Waterfall model and Agile testing?
Ans: Agile testing is done parallel to the development activity whereas in traditional waterfall model testing is done at the end of the development.
As done in parallel, agile testing is done on small features whereas in waterfall model testing is done on whole application.
Q13. What is Zero sprint in Agile?
Ans: It can be defined as pre step to the first sprint. Activities like setting development environment, preparing backlog etc needs to be done before starting of the first sprint and can be treated as Sprint zero.
Q14. What is Spike?
Ans: There may be some technical issues or design problem in the project which needs to be resolved first. To provide the solution of these problem “Spikes” are created. Spikes are of two types- Functional and Technical.
Q15. Explain Pair Programming and its benefits?
Ans: Pair programming is a technique in which two programmer works as team in which one programmer writes code and other one reviews that code. They both can switch their roles.
Benefits:
- Improved code quality: As second partner reviews the code simultaneously, it reduces the chances of mistake.
- Knowledge transfer is easy: One experience partner can teach other partner about the techniques and codes.
Q16. Explain the Iterative and Incremental Development in Agile?
Ans: Iterative Development: Software is developed and delivered to customer and based on the feedback again developed in cycles or release and sprints. Say in Release 1 software is developed in 5 sprints and delivered to customer. Now customer wants some changes, then development team plan for 2nd release which can be completed in some sprints and so on.
Incremental Development:Software is development in parts or increments. In each increment a portion of the complete requirement is delivered.
Q17. How do you deal when requirements change frequently?
Ans: This question is to test the analytical capability of the candidate. Answer can be Work with PO to understand the exact requirement to update test cases. Also understand the risk in changing the requirement. Apart from this one should be able to write generic test plan and test cases. Don’t go for the automation until requirements are finalized.
Q18. What is Scrum ban?
Ans: It is a software development model which is combination of scrum and kanban. Scrumban is considered for maintenance projects in which there are frequent changes or unexpected user stories. It can reduce the minimum completion time for user stories.
Q19. What is Application Binary Interface?
Ans: Application Binary Interface or ABI defines an interface for complied application programs or we can say it describes the low level interface between an application and the operating system.
Q20. What is difference between Epic, User stories & Tasks?
Ans: User Stories:User Stories defines the actual business requirement. Generally created by Business owner.
Task: To accomplish the business requirements development team create tasks.
Epic: A group of related user stories is called an Epic.
Q21. How QA can add a value to an agile team?
Ans: QA can provide a value addition by thinking differently about the various scenarios to test a story. They can provide quick feedback to the developers whether new functionality is working fine or not.
Q22. Name some Agile quality strategies.
Ans: Some Agile quality strategies are-
- Re-factoring
- Small feedback cycles
- Dynamic code analysis
- Iteration
Q23. What is importance of daily stand up meeting?
Ans: Daily stand up meeting is essential for any team in which-
- Team discuss about how much work has been completed.
- What are the plans to resolve technical issues.
- What steps need to done to complete the projects etc.
Q24. What is tracer bullet?
Ans: It can be defined as spike with the current architecture or the current set of best practices.
The purpose of a tracer bullet is to examine how an end-to-end process will work and examine feasibility.
Q25. How the velocity of sprint is measured?
Ans: If capacity is measured as a percentage of a 40 hours weeks then completed story points * team capacity
If capacity is measured in man hours then Completed story points / team capacity
Q26. Explain how you can measure the velocity of the sprint with varying team capacity?
Ans: When planning a sprint usually, the velocity of the sprint is measured on the basis of professional judgement based on historical data. However, the mathematical formula used to measure the velocity of the sprint are,
- first – completed story points X team capacity: If you measure capacity as a percentage of a 40 hours weeks
- Second – completed story points / team capacity: If you measure capacity in man-hours
For our scenario second method is applicable.
Q27. What is an epic, user stories and task?
Ans: Epic: A customer described software feature that is itemized in the product backlog is known as epic. Epics are sub-divided into stories
User Stories: From the client perspective user stories are prepared which defines project or business functions, and it is delivered in a particular sprint as expected.
Task: Further down user stories are broken down into different task
Q28. What are the differences between RUP (Rational Unified Process) and Scrum methodologies?
Ans:
RUP | SCRUM |
– Formal Cycle is defined across four phases, but some workflows can be concurrent | – Each sprint is a complete cycle |
– Formal project plan, associated with multiple iterations is used. | – No end to end project plan. Each next iteration plan is determined at the end of the current iteration |
– Scope is predefined ahead of the project start and documented in the scope document. During the project, scope can be revised. | – It uses a project backlog instead of scope scrum |
– Artifacts include Scope Document, formal functional requirements package, system architecture document, development plan, test scripts, etc. | – Operational software is the only formal artifacts |
– Recommended for long term, large, enterprise level projects with medium to high complexity | – Recommended for quick enhancements and organization that are not dependent on a deadline |
Q29. As a tester what should be your approach when requirements change continuously?
Ans: When requirement keeps changing, continuously agile tester should take following approach
- Write generic test plans and test cases, which focuses on the intent of the requirement rather than its exact details
- To understand the scope of change, work closely with the product owners or business analyst
- Make sure team understand the risks involved in changing requirements especially at the end of the sprint
- Until the feature is stable, and the requirements are finalized, it is best to wait if you are going to automate the feature
- Changes can be kept to a minimum by negotiating or implement the changes in the next sprint
Q30. Explain the difference between Extreme programming and Scrum?
Ans:
Scrum | Extreme Programing (XP) |
– Scrum teams usually have to work in iterations called sprints which usually last up to two weeks to one month long | – XP team works in iteration that last for one or two weeks |
– Scrum teams do not allow change into their sprints | – XP teams are more flexible and change their iterations |
– In scrum, the product owner prioritizes the product backlog but the team decides the sequence in which they will develop the backlog items | – XP team work in strict priority order, features developed are prioritized by the customer |
– Scrum does not prescribe any engineering practices | – XP does prescribe engineering practices |