Best Agile Methodology Interview Questions and Answers for freshers & Experienced.
In simple words: Agile is a different way of changing or managing IT development teams and Projects or products. Definition No.1: According to the Agile Alliance: “Agile is the ability to create and respond to change. It is a way of dealing with, and ultimately succeeding in, an uncertain and turbulent environment.” Definition No.2: “Agile is a software development methodology around the idea of iterative development, where requirements and solutions evolve through collaboration between self-organizing and cross-functional teams.” Definition No.3: “Agile is a project management methodology that uses short development cycles called sprints to focus on continuous improvement in the development of a product or service.” Definition No.4: “Agile is a term used to describe approaches to software development emphasizing incremental delivery, team collaboration, continual planning, and continual learning.”
These 12 principles can be considered in four distinct groups i.e.,
Some Questions for agile (before check)? You company does or not invest in spreading Agile practices among the developers, testers, and management
There are several factors that can make a project a better fit for agile. These include: Small to medium-sized software developments, ultra-complex to simple projects, co-located to distributed projects, critical to toy projects, application development to system architecture to embedded software projects, open source to commercial projects, customer application to off-the-shelf integration projects, in-house development to co-sourced development to out-sourced development and so on.
Burn Up Chart: It shows the progress of stories done over time. Burn-up charts has one important advantage that it allows to divide the scope and the progress whereas, in the Burn-down it is combined and it doesn’t allow to visualize and identify changes in scope and/or progress. Burn Down Chart: Burn down charts display comparisons of outstanding work against available time. You can view a burn down chart for any sprint.
You will know that you are using agile development is when you are using time-boxed task board, test-driven development, daily stand-up meetings, pair programming and many more.
Product Backlog: It is a priority list of requirements for users which uses cases to be done for a product to be created, maintained, and sustained. These included both functional and non-functional customer requirements, as well as technical team-generated requirements. While there are multiple inputs to the product backlog, it is the sole responsibility of the product owner to prioritize the product backlog. Sprint Backlog: It is a subset of the Product Backlog. For each of the sprints, the Scrum team would pick user stories from the Product Backlog. It is owned by development team and commits to deliver it in a sprint.
DoD stands for Definition of Done. It is a checklist of the work types that the team is supposed to finish successfully before declaring the work to be potentially shippable. These work types depend on a number of variables like: The nature of the product being developed The technologies being used to develop it The organization that is building the product The present obstacles that impact the possibility
Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily – leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly. -Martin Fowler ‘The main purpose of Continuous Integration is to prevent developers stepping over each other code and eliminate integration issues.
The daily stand-up is the day-to-day meeting (mostly in the morning) in which the whole team meets around 15 minutes to find the answer for the following three questions:
It is a breaker is a situation that arises when there is a bug in the software. Due to this sudden unexpected bug, compilation process stops or execution fails or a warning is generated. The responsibility of the tester is then to get the software back to the normal working stage removing the bug.
TDD stands for Test Driven Development. It is also known as Test Driven Design. It is a one of the techniques for building software that guides software development by writing tests. It is the process of using coding’s failure to pass test cases to identify the coding necessary to be written by the development team. The primary feature of the process is a very short Test cycle used to code a single requirement in order to pass a single test case.
FDD stands for Feature Driven Development. It is an agile software development methodology that employs a short-iteration model and is intended for use by large teams.
Generally, the duration of a sprint is determined at the beginning of your agile project and it should be followed throughout your project. The team size may vary from 3-9 members. In general, a scrum script complete in 3-4 weeks. Thus, on an average, the duration of a scrum sprint (scrum cycle) is 4-weeks. Scrum guidelines state that Sprint lengths shouldn’t exceed 4 weeks and it is ideal to have 2-week sprints.
It is the defined interval within which the team delivers an incremental workable solution that meets the definition of done and therefore acceptable to the customer.
It is the sum of all the Product Backlog items completed during a Sprint and the value of the Increments of all previous Sprints. Each increment includes all the previous sprint increment values as it is cumulative. It must be in the available mode in the subsequent release as it is a step to reach your goal.
An Agile team has a more centralized leadership structure, with a major share of the responsibilities resting on the shoulders of the product or project owner. Scrum is a part of the Agile Methodology, both of them promote the completion of projects incrementally in small fragments. Also, both methodologies are iterative in nature. However, the main difference between Agile and Scrum is that the former has a broader spectrum. While Agile Methodology is used for project management, Scrum is ideal for projects where the requirements change rapidly. In the Agile Methodology, leadership holds the most pivotal position, whereas Scrum encourages the creation of a self-organizing and cross-functional team.
DoD or Definition of Done is one type of working agreement. It is an agreed upon set of items that must be completed before a project or user story can be considered complete. It is applied consistently and serves as an official gate separating things from being “in progress” to “done.”
Scrum-ban is the combination of Scrum and Kanban and tries to use features from both the software development models. Scrum: It is one of the most popular agile project management frameworks that facilitates effective team collaboration and boosts team performance. It is primarily used by development teams. Scrum follows the values and principles of Agile but includes some specifics regarding certain software development practices. Kanban: It is also rooted in Agile methodology. It is a visual system for managing work as it moves through a process, and it is primarily focused on visual workflow organization.
User story: User stories are the smallest units of user functionality in agile which can be delivered in one agile sprint. Theme: It is a group of user stories that share a common attribute, and for convenience they are grouped together. Epic: It is useful as placeholders for large requirements. It probably won’t fit into a sprint and should be broken down into stories. Task: Tasks are the sub-divisions of Stories. In other words, they are smaller segments of work contributing to the construction of the Story. Task is typically something like code this, design that, create test data for such-and-such, automate that, and so on. Sub task: Sub-tasks are the smallest unit of work that you assign to individual team members for them to work on during each sprint cycle.
A well-formed user story needs to meet the following characteristics of bill Wake’s INVEST acronym
Planning Poker (Also known as Scrum Poker) is a is a consensus-based, highly efficient agile planning and estimating technique. To start a poker planning session, the product owner or customer reads an agile user story or describes a feature to the estimators. Each estimator is holding a deck of Planning Poker cards with values like 0, ½, 1, 2, 3, 5, 8, 13, 20, 40,100, and Infinite () which is the sequence we recommend. The values represent the number of story points, ideal days, or other units in which the team estimates. 0 : It means task is already completed. 1/2 : It means task is tiny. 1, 2 and 3 : These are used for small tasks. (Small organizations) 5, 8, and 13 : These are used for medium sized tasks. 20, and 40 : These are used for large tasks. 100 : It is used for very large tasks. <infinity> : The task is huge. ? (Question Mark): No idea how long it takes to complete this task. <other > –
Pair Programming is one of the techniques is used in Agile Software Development. It means two programmers work together at one work station. It helpful for knowledge sharing, improve team collaboration and communication, helps in team-building, get immediate feedback, code review.
DAD stands for Disciplined Agile Delivery. It is an Agile software development framework. It is a people-first, learning-oriented, hybrid agile approach to IT solution focused.
AUP stands for Agile Unified Process. It is a simplified version of the Rational Unified Process (RUP) developed by Scott Ambler. It is a simple and very easy to understand methodology for development of application software for business. The AUP makes use of agile concepts and techniques but remains true to its origin i.e., the Rational Unified Process.
SAFe stands for Scaled agile Framework. It is a collection of principles, structures, and practices that has been shown to consistently and successfully scale Agile practices and deliver the benefits of Agile to organizations that had been working in waterfall or ad-hoc methodologies.
Extreme Programming (XP) is a one of the Agile software development frameworks. It is a project management process with an added emphasis on engineering practices that enhance the quality of software products.
There are:
Tracer bullet examines the working and examines the feasibility of an end-to-end process. It is the spike with the current set of practices or architecture.
Sashimi is a Japanese word. It means a pierced body. Sashimi is a technique used by Scrum to check the completion of all the functions created by the developers. Sashimi in scrum methodology means every phase of the software development cycle in a sprint which includes requirement analysis, planning & design, development, testing, documentation is complete or not and the product is ready to be displayed, etc.
Regression testing is a combination of all the functional test cases, integration and system test cases. In agile, regression testing helps development teams concentrate on new functionality, while maintaining stability with every new product increment. Teams use regression testing to make sure that tested software continues to perform after every modification.
Impact analysis is basically analysing the impact of the changes in the deployed product or application. Or Impact Analysis is used to define all the risks associated with any kind of changes in a product being tested.
Acceptance testing is the functional testing that is based on a user’s stated needs in Agile development. Functional tests are designed based on those needs. Some of the functional test are automated, while others are performed manually. In agile methods, the developer may be the one actually performing these tests. This means that the user may or may not be observing the results of the test.
Some major principles of agile testing are:
Certifications generally preferred by organizations are listed as follows:
Some of the most used Agile Frameworks are:
What is Agile?
Some other definitions of Agile:
What are the powerful agile metrics?
What are values and principles guide the Agile method (Agile Manifesto Purpose)?
Agile Values:
Agile Principles:
Customer Satisfaction:
Quality:
Teamwork:
Project Management:
When not to use Agile?
What kind of projects are fit for Agile?
What is the difference between Burn Up and Burn down charts in Agile?
Can you explain, how to know that you are using agile development?
What is difference Between Product Backlog and Sprint backlog?
What is the DoD?
What is the Continuous Integration? Why it is important for agile?
What do you understand by Daily Stand-Up?
Can you explain Build Breaker?
What is TDD?
What is FDD?
What is the duration of a scrum sprint?
What is Sprint Length?
What is an Increment?
What is the difference between agile & scrum?
What is Definition of Done in Agile?
What is Scrum-ban in Agile?
Can you explain User story, theme, Epic, Task, and Sub Task?
What are the Characteristics of a user story?
Can you explain Planning Poker?
What is Pair Programming in Agile?
What is meaning of DAD?
What is AUP?
What is SAFe?
What is Extreme Programming in Agile?
What are the twelve practices for XP ?
Can you define tracer bullet?
Do you know about Sashimi?
What do you know about Regression Testing?
What is Impact Analysis?
What is Acceptance Testing in Agile?
What are the square measures the principles of agile testing?
What are the major agile quality strategies?
What are the agile-scrum certifications?
What are the most used agile development frameworks?
What are tools for Agile Project Management?