Agile Know-How Magazine • Fall 2017
the backlog’s bigger items (Epics).
• To conduct basic research to be more familiar with a new
technology or a new line of business.
• To gain confidence in an approach (technical or functional)
to reduce the risk or uncertainty.
It is important to note that a spike needs to focus only on
the problem in question and must ignore any other point of
uncertainty. That is why the resulting code is rarely kept in the
final sources of the software; you must keep in mind that it is an
ephemeral code that will probably end up in the garbage.
the business logic, and one to show this data.
With Emergent Design, the architecture needs to be built little
by little with each sprint. We will thus be able to test a link
from the database layer all the way to the presentation layer
with the first sprint. This way, the team can test all levels of the
infrastructure very early on and implement full features without
having to wait for all involved parties to complete their parts.
Design in columns, not layers
Focusing only on the minimum required for each feature to be
implemented does not necessarily mean that the application’s
design will remain minimal.
However, it is necessary to change the way the infrastructure
is built. The traditional developer’s reflex is to design in layers,
with one layer for the database, one to access the data, one for
agileknowhow.com
47