Agile refers to a group of software development methodologies that are based on iterative processes. Requirements, designs and solutions evolve continuously through collaboration across various functional teams.
In any company, the Agile project manager has the duties of managing the complex day to day operations that require accelerated delivery to customers. He must ensure that the Agile project is completed within the stipulated time, scope and cost constraints.
If you are looking to build your career as an Agile Manager or Developer, the following questions will help you prepare for your next interview:
1. Explain Agile Testing.
Agile Testing is a Quality Assurance technique that is performed in a dynamic environment where testing scenarios ad customer requirements change continuously. It is done parallel to development so that small pieces of code are sent to the testing team from the development team.
2. Differentiate between burn up and burn down chart
Burn up and burn down are terms used to denote the progress of a project. Burn up denotes how much work is completed in a project and burn down indicates how much work is left.
3. What are the various roles in a Scrum project?
Basically, a Scrum team can have 3 roles:
Project manager has the responsibility of managing product backlog. He works with the customers and end-users to collect the requirements and communicate it to the team to build the product.
Scrum Master works with the scrum team to ensure that each sprint is completed on time. Scrum master ensures proper workflow to the scrum team.
Scrum Team’s responsibility is to be dedicated, self-organized and responsible for delivery of high quality product.
4. Explain Product backlog and Sprint backlog.
Product owner maintains the product backlog that contains all features and requirements of the project.
The sprint backlog is a subset of the product backlog that contains the requirements and features of that sprint only.
5. What is Velocity in Agile?
Velocity is a metric that measures the sum of all efforts associated with users completed in an iteration. This gives a prediction as to how much work in Agile is completed in a sprint and how much more time is needed to complete a project.
6. How is Agile testing different from the traditional waterfall model?
In the traditional waterfall model, testing is done at the end of development whereas Agile testing is done in parallel to development.
In the waterfall model, testing is done on the whole product whereas in Agile, testing is done only on the small features.
You may also like: 10 Tips to stay focused in an Interview
7. What is Pair Programming? What are its benefits?
Pair programming is when two programmers work together as a team. One writes the code and the other reviews it. They can even reverse their roles.
The benefits of pair programming are that the code quality improves due to the simultaneous review.
It helps in easy knowledge transfer as one experienced programmer can teach the other one.
8. What is re-factoring?
Modification of code for improving performance without altering its functionality is called re-factoring.
9. Differentiate between Incremental and Iterative development in Agile.
Once the software is developed in iterative development, and delivered to the customer, feedback is taken from them. Based on that feedback, the software is developed again in cycles, sprints and releases.
For instance, if the software is developed in 5 sprints in the first release, the second release can be done in some released and so on.
In incremental development, software is developed in increments or parts. In every part, a portion of the whole product is delivered.
10. How will you deal with frequently changing requirements?
Consult with the project manager to understand the exact test case requirement and update the test cases accordingly. It’s important to understand the risks of changing requirements.
The test engineers must also be equipped to write genetic test plans and test cases. Automation must not be done until requirements are finalized.
11. List the qualities of a good Agile Tester.
Following are the qualities of a good Agile tester:
Agile tester must understand the project requirements very quickly.
He must understand the Agile concepts and principals in detail.
He must understand the risks in changing requirements.
He must know how to prioritize the work according to the changing requirements.
There must be constant communication between the Agile tester, developers and other associates.
12. What is Task board in Agile?
Task board in Agile means a dashboard that shows the progress of a project. A task board contains:
User Story that contains actual business requirement.
The tasks that need to be completed.
The tasks that are in progress.
Tasks that are pending for testing and verification.
Tasks that are completed.
Agile is the best methodology if you do not want to handle a task as a whole but break into smaller segments.