Best Agile Methodology Interview Questions and Answers for freshers & Experienced.
What is Agile?
In simple words: Agile is a different way of changing or managing IT development teams and Projects or products.
Some other definitions of Agile:
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.”
What are the powerful agile metrics?
- Agile Velocity
- Agile Vorticity
- Release burnup chart
- Sprint burndown chart
- Control Chart
- Work category allocation
- Cumulative flow diagram
- Recidivism
- Deliver business value
- Story point completion ratio
- Present item of blocked
- Code coverage
- Time coverage (Cycle Time, Blocked Time, and Lead Time)
- Failed deployments
What are values and principles guide the Agile method (Agile Manifesto Purpose)?
Agile Values:
- Individuals and Interactions Over Processes and Tools.
- Working Software Over Comprehensive Documentation
- Customer Collaboration Over Contract Negotiation
- Responding to change over following a plan
Agile Principles:
These 12 principles can be considered in four distinct groups i.e.,
Customer Satisfaction:
- Customer satisfaction through early and continuous software delivery.
- Enable face-to-face interactions.
- Regular reflection on how to become more effective.
Quality:
- Simplicity
- Accommodate changing requirements throughout the development process.
- Collaboration between the business stakeholders and developers throughout the project.
Teamwork:
- Timely and Frequent delivery of working software.
- Agile processes to support a consistent development pace.
- Self-organizing teams encourage great architectures, requirements, and designs.
- Support, trust, and motivate the people involved.
Project Management:
- Working software is the primary measure of progress.
- Attention to technical detail and design enhances agility.
When not to use Agile?
Some Questions for agile (before check)?
- your busines model set or not?
- Is functionality split-able?
- Are requirements flexible?
- Is customer available or not
- Is team skilled enough?
- Your team is resisting agile
- Is it time constrained?
You company does or not invest in spreading Agile practices among the developers, testers, and management
What kind of projects are fit for Agile?
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.
What is the difference between Burn Up and Burn down charts in Agile?
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.
Can you explain, how to know that you are using agile development?
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.
What is difference Between Product Backlog and Sprint backlog?
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.
What is the DoD?
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
What is the Continuous Integration? Why it is important for agile?
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.
- Agile and the frequent delivery of code can only be achieved if there is a CI/CD pipeline in place to automate manual processes for developers and streamline the process of writing and delivering code.
- It helps collaboration between various product teams within the same organization
- Decreases the risk of regression since the code is often churned by other developers.
- Allows earlier detection and prevention of defects.
What do you understand by Daily Stand-Up?
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:
- What was done yesterday?
- What is your plan for today?
- Is there any obstacle that restricts you to complete your task?
Can you explain Build Breaker?
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.
What is TDD?
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.
What is FDD?
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.
What is the duration of a scrum sprint?
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.
What is Sprint Length?
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.
What is an Increment?
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.
What is the difference between agile & scrum?
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.
What is Definition of Done in Agile?
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.”
What is Scrum-ban in Agile?
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.
Can you explain User story, theme, Epic, Task, and Sub Task?
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.
What are the Characteristics of a user story?
A well-formed user story needs to meet the following characteristics of bill Wake’s INVEST acronym
- I – Independent
- N – negotiable
- V – valuable
- E – estimable
- S – Small
- T – Testable
Can you explain Planning Poker?
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 > –
What is Pair Programming in Agile?
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.
What is meaning of DAD?
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.
What is AUP?
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.
What is SAFe?
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.
What is Extreme Programming in Agile?
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.
What are the twelve practices for XP ?
There are:
- The Planning Game
- Small Releases
- Metaphor
- Simple Design
- Testing
- Refactoring
- Pair Programming
- Collective Ownership
- Continuous Integration
- 40-hour week
- On-site Customer, and
- Coding Standard.
Can you define tracer bullet?
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.
Do you know about Sashimi?
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.
What do you know about Regression Testing?
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.
What is Impact Analysis?
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.
What is Acceptance Testing in Agile?
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.
What are the square measures the principles of agile testing?
Some major principles of agile testing are:
- Customer satisfaction
- Face to face communication
- Sustainable development
- Successive improvement
- Focus on essence
- Error-free clean node
- Collective work
- Quick answer changes
- Self-organized
- Continuous feedback
What are the major agile quality strategies?
- Re-factoring
- Small feedback cycles
- Iterations
- Dynamic code analysis
What are the agile-scrum certifications?
Certifications generally preferred by organizations are listed as follows:
- PMI-ACP – PMIAgile Certified Practitioner
- APMG International Agile Project Management (AgilePM)
- PSM -Professional Scrum Master
- ASM -Agile Scrum Master
- CSM -Certified Scrum Master
- CPO – Scrum Alliance Certified Product Owner
- CEC – Scrum Alliance Certified Enterprise Coach
- CSPO – Certified Scrum Product Owner
- ICP – ICAgile Certified Professional
- ICP- ACC – ICP-Agile Certified Coach
- SAFe Agilist
- DAC-CDA – Disciplined Agile Consortium Certified Disciplined Agilist
What are the most used agile development frameworks?
Some of the most used Agile Frameworks are:
- Scrum
- Kanban
- XP (Extreme Programming)
- Lean
- Crystal
- TDD (Test Driven Development)
- OpenUp
- DSDM (Dynamic Systems Development Method)
- FDD (Feature Driven Development)
What are tools for Agile Project Management?
- com
- ProjectManager
- Smartsheet
- Taiga
- Forecast
- Wrike
- Hubstaff
- Zoho Sprints
- Nutcache
- Ravetree
- SpiraTeam
- Wrike
- Hive
- Atlassian Jira
- Active Collab
- Agilo for Scrum
- SpiraTeam
- Pivotal Tracker
- VSTS
- Icescrum
- Gravity
- SprintGround
- VersionOne
- Taiga
- Quire
- Toggl Plan