Agile Dev Methodologies Flashcards
Explain Agile, and how it differs from waterfall
Agile is an iterative and incremental approach to development
The key difference being dividing projects into small increments with minimal planning, while delivering a working product at the end of each iteration
Explain the core principles
*Individuals and interactions over processes and tools
* Working software over comprehensive documentation
*Customer collaboration over contract negotiation
*Responding to change over following a plan
Explain SCRUM
An agile framework that organizes work into time-boxed iterations called sprints
It emphasizes continuous improvement, collaboration, and adaptability
Product Backlog vs Sprint Backlock
Product - overall list of features, enhancements, and bug fixes for a product
Sprint - a subset of the product backlog selected for a specific sprint
How does Agile handle changing requirements?
It embraces changing requirements and encourages flexibility, allowing for continuous feedback
Priorities can change at the end of each iteration
Explain user stories
concise descriptions of a feature from an end user’s perspective.
Explain DoD
The Definition of Done is a checklist of criteria that a product increment must meet to be considered complete.
How does Agile support continuous integration and continuous delivery (CI/CD)?
It promotes frequent integration of code changes, automated testing, and continuous delivery
`
CI/CD pipelines automate the process of building, testing, and deploying software
What are some common Agile metrics used to measure team performance?
*Velocity: Measures the amount of work completed in a sprint.
*Burnup/Burndown charts: Visualize progress against time.
*Cycle time: Measures the time taken to complete a user story or task.
*Lead time: Measures the time from a task’s creation to its completion.