My live blogged notes from DevLearn in Las Vegas, November 3 2011.
Agile tools, tips and techniques to use for building your elearning.
There is no agile project management police – you can mix and match and do what works in your environment.
PMBOK (Project management body of knowledge) – it’s a guide.
What’s wrong with projects? They are creative things and sometimes things just don’t to plan. Projects have complexity.
“37% of all IT projects are troubled”
ADDIE – it’s a waterfall model. You do analysis – get approval (a gate), then go to design (gate)…
By the time you get to implement – what do you do if stuff happens?
The Agile Manifesto:
- values individuals and interactions over process and tools;
- working software over documentation;
- customer collab over contract negotiation;
- responding to change over following a plan.
- rapid delivery of useful software
- welcome changing requirements even late in dev
- face to face
- built around people and self-organizing teams
- regular adaptation to changing circumstances
The Iron Triangle: Scope/Cost/Schedule (pick any two) – quality is missing.
Agile: Value/Quality/Constraints (scope, cost, schedule)
Traditional vs. agile:
trad = it’s all about the plan and you need to enforce the plan
agile = iterations, control is through adaption/inspection, use agile proactively to manage change
Delivers quality improvements – fewer defects, more quality, more productive, faster to market, less $.
Agile aligns with Lean (toyota production method)
continuous, daily,iteration, release, strategy… a loop of iterations
Agile uses stories to gather customer requirements – collected into a backlog (a list of prioritized stories)
- As a …<user role>
- I want….<goal>
- So that…<business value>
Example: “As a learner, I want my elearning courses to have open navigation so I can freely move through the course.” + as a sme + as a manager…
Collect these requirements from the different personas.
What is better? What is true in one org may not be true in another org.
SCRUM = start the game over again. it’s a way to restart play in rugby – you pass it backwards to someone on your team. SCRUM calls for sprints – iterations of 2-4 weeks. Business set priorities for a SCRUM. Organize the best way to deliver the highest priority features. Then stop and ask “is this good enough?” or do we need to go back and do another sprint?
The Scrum Guide (available online)
“pigs and chickens”
Three roles in scrum:
- product owner (ensures team delivers value to the business) – this is one person
- Dev Team – your designers, dev, graphics, programmers 5-9 people (although not typical of many elearning projects)
- SCRUM master – facilitates the SCRUM meeting, main role to remove obstacles, enforce the rules of scrum, makes sure backlog is processed efficiently – protects team from distractions
Timeboxed Sprints – 2-4 weeks
Prescribed, limited meetings (timebox)
The SCRUM flow:
- product backlog (where you gather your requirements through user stories)
- planning session – pick the priority backlog for this spring
- 2-4 weeks sprint cycles
- ship product
Sprint Planning Activity:
- define sprint goal
- “here’s the backlog and here’s what we’re going to bite off and chew in this sprint” – select stories for the sprint
- select times for your daily scrum meetings
- define what “done” will mean
- “what are the tasks we need to get all of the things done?”
One of the challenges of scrum: how do you scale? Do you have multiple scrum teams if you’re running a big project with multiple deliverables?
The Daily Scrum
A daily meeting in which you ask three key questions:
- What did you do yesterday?
- What will you do today?
- What obstacles are there?
Ideally, the Scrum team is co-located so you do the daily scrum face-to-face in front of your scrum taskboard. The taskboard is essentially a grid for each of the “stories” or backlogs that you are going to address in the current sprint. You have five columns in the grid: story, to do, in progress, done, unplanned. Use sticky notes to identify where everything is on the board.
If you’re a virtual team, try to figure out the best tools for you to use virtually.
The Burndown Chart
X axis = date; y axis = work remaining…the ideal is a line that slopes down from left to right. you track where you are on this chart – if you’re above the line, then you’re behind; if you’re below the line then you’re not working to capacity and you didn’t pick enough stories/backlogs to cover in this sprint.
After the sprint is over – “here’s what we did, didn’t do, what worked, etc.” – pause and reflect within your scrum team.
another visual tool you can use with agile and perhaps better for elearning projects where you’re often just a one person team.
- provides a visual workflow – use a kanban taskboard
- Limit the # of tasks as in progress to 3
- Manage flow – helps you see where things are and where the bottlenecks are
- Process policies must be explicit
- Improve collaboration
- Kanban is not timeboxed like scrum
My editorial: This was a good intro to agile techniques, but I’m still not exactly clear on how to apply this to the many layers of an elearning project. We started talking about elearning projects in specific – for instance each of your tasks in SCRUM could be laid out – storyboard, graphics, etc – and then you break that down into more detailed tasks and assign those to your sprint. So the deliverable for the first sprint might be the storyboard and graphic mocks (for example).
I would like to have heard more about applying this to specific elearning projects. Don (@Dbolen) seems to be a great resource on agile and I will likely explore this more!