L3 - Agile in Theory Flashcards
Agile Principles and Terms
problems with traditional waterfall methodology (5)
- late testing and feedback
- inflexibility to change
- risk of misalignment with customer needs
- long development cycles
- limited collaboration
processes and tools less important than?
individuals and interactions
comprehensive documentation less important than?
working software
contract negotiation less important than?
customer collaboration
following a plan less important than?
responding to change
non-project example of agile
agile includes any collaborative/supportive/non-hierarchical relationships that empower users and embrace change fall in this category
eg. the principles of feminine economy
core concepts of agile (7)
- epic and user stories
- product backlog
- burndown chart
- minimal viable product (mvp)
- velocity
- batch size
- estimation
define epic
large bodies of work that can be broken down into number of smaller tasks (stories)
define stories
also ‘user stories’
–> short requirements or requests written from the perspective of an end user
I.N.V.E.S.T - user stories
I - independent
N - negotiable
V - valuable
E - estimable
S - small
T - testable
define product backlog
comprehensive product ‘to do’ list
where does the PB come from?
product roadmap - strategic document/plan of action for how a product/solution will evolve over time outlining future product functionality + when new features will be released
what could be included in a PB? (3 examples)
- user stories
- features
- bug fixes
define burndown chart
graphical representation of work left v time left
vertical axis –> outstanding work
horizontal axis –> remaining time
burndown chart applications (4)
- predicting when work will be completed
- simple/easy to track daily progress of team
- allows problems to be seen early
- visually represents problems in software development
define MVP
minimal viable product
–> version of product with just enough features to be usable by early customers
–> can then provide feedback for future product development
define velocity
velocity = units of work (user stories) completed in given time frame (iterations/sprints/weeks)
application of velocity example
works out how much can be completed in each iteration –> creates accurate and efficient timelines
define batch size
number of items that will be worked on in one sprint + the total amount of WIP (work in process)
what does a large batch size lead to? (3)
- longer sprints
- slower adaptation
- holding cost
what does a small batch size lead to? (3)
- faster and more sprints
- more deployment costs
- transaction cost
holding cost
the bigger the batch, the more component parts, and more relationships between component parts
transaction cost
must reduce transaction cost by increasing transparency, making communication easier and automating/hardening processes
features used in agile estimation (5)
- business value
- done at a user story level
- units are story points
- are relative so no absolute time prediction
- can be/are revised in every iteration
how is agile estimation counted?
fibonacci sequence
–> easier to estimate when smaller