Something that bugs me with sprint planning, is where training fits in. Let's say you have a requirement to learn JQuery for a small web application. There would seem to be a number of possible approaches - each with their own potential pitfalls.Specific taskA task is added to the sprint to learn the technology. The danger is the technology could be complex and so could span a number of sprints turning into a fatlog.Coupled taskThe exact requirements are teased out in advance and are coupled to a bona fide development task.Inflate task estimateThe development estimate is inflated to include the training. But again, it is perfectly possible the task could overrun.Assume it will happen in non-productive timeMost sprints allow some slack for non-project work/admin. Just assume that any learning will take place here.Ignore itAssume it will just magically happen (dev picks this up in their own time).Deallocate developerThe developer concerned misses a sprint (in part or in whole) to pick the technology up.All the scrum documentation I've seen is oddly silent on the matter. Seasoned project managers often seem unsure what to do. As long as the task is done, they don't seem to care how it is achieved.Is there a canonical way of handling this or is everyone just doing their own thing?
How should training activities be handled in Agile/Scrum
agile;scrum