Agile/Scrum
for Dummies Roboticists
A methodology created for small, cross-functional teams
Main characteristics
- Deliver value to your customers
- Use iterative development
- Adapt to change
The infamous "project triangle"

Davide's tip: contrariwise to what other say, the area or the triangle in not constant
Waterfall
Project management "de toda la vida"

Waterfall
The analog version

Davide's tip: this model is still the best for some kind of projects
The "agile triangle"

Deliver value

Davide's tip: value is the happiness of the stackeholders,
including the team itself

Incremental value
Any iteration should deliver incremental value


How does it work?

Step 1: define the project requirements and intermediate deadlines
Known as "project backlog"
"AS A [type of user],
I WANT TO [do this thing],
SO THAT I CAN [accomplish this goal]."
Davide's tip: Try to decompose them hierarchically
"THE ROBOT,
CAN NAVIGATE AUTONOMOUSLY
TO A GIVEN POINT OF THE SEWER"
Step 2: split an intermediate deadline into small tasks
Davide's tip: if the unit is days, never more than 5
Each task has an estimated "effort"...
use fibonacci number to take uncertaincy into account
1 / 2 / 3 / 5 / 8 / 13 / ...

Beware useless work!
Step 3: arrange tasks into sprints
- Any sprint should have a high level goal and a deliverable.
- Sprint shall always have a review phase.
- Team members pull tasks form the backlog.

Daily stand-up meeting

- What did I do yesterday that helped our team meet the sprint goal?
- What will I do today to help our team meet the sprint goal?
- Do I see any impediments that prevent me from meeting the sprint goal?
How do we define

?

Step 4: retrospective
- Define what was achieved.
- Find opportunities for improvements.
- Add/remove tasks to the backlog

Keep
Iterating

Agile for roboticists
By Davide Faconti
Agile for roboticists
- 668