17.2 Agile ways of working that may already exist
The most common agile approaches focus on product delivery and therefore they do not have processes beforehand to formally define any upfront work. Some agile approaches such as DSDM, DAD and FDD (see Table 2.1) do acknowledge the need to do this work; however, there is little standardization in this area across the agile community.
This is usually for one of two reasons; either the agile approach assumes that the upfront work would have already taken place, or it does not need it to be done.
Mature agile organizations using agile build their own processes for upfront work when they use agile in a project context.
Two concepts that occur quite frequently in agile are:
- project chartering or visioning
- sprint zero (iteration zero or (the) discovery (phase)) – see section 9.2.
Project chartering or visioning in agile is typically used to gain a basic understanding of the project and is seen as a short process where information is captured and recorded in a very simple form often using bullet points and visualization.
Sprint zero is a similar idea widely used by Scrum and agile teams but the concept is controversial in that it is seen by some as unnecessary and is not part of the Scrum Guide.
The amount of upfront work that takes place in an agile context is often a question of balancing the need to do some planning with the desire to let things emerge and use empiricism in order to adapt to changing circumstances. In a BAU context doing very little planning can be a very effective philosophy but in a project context where work will be more challenging this could be too risky.
A lot of guidance in agile starts with a backlog of features to build but in a project context this will need to be created.