economies quickly and unpredictably change, tradi-
tional software development practices, tool and tech-
niques become difficult to apply and to follow ap-
propriately. In addition, these changes impact on
the software development project, which commonly
grows both in scope and cost, a phenomenon known
as Scope Creep (Barry et al., 2002). This results in
high costs for the development, maintenance and up-
date of software products, thus reducing the competi-
tiveness of software development companies.
In this context, as faster and more flexible soft-
ware development techniques became more neces-
sary, in 2001, the “Manifesto for Agile Software De-
velopment” (Beck et al., 2001) was created. As core
principles for software development, the Manifesto
proposes valuing:
• Individuals and interactions over processes and
tools;
• Working software over comprehensive documen-
tation;
• Customer collaboration over contract negotiation
and;
• Responding to change over following a plan.
Thus, Agile Methodologies, as defined by Press-
man (Pressman, 2005), are a modern approach to de-
velop software. By embracing continuous change,
emphasizing quick deployment of functional software
and relying heavily on a close collaboration with the
customer during the development lifecycle, agile is
suitable to be applied in a variety of projects, even
outside of the software development realm.
Although the Manifesto states that less value is
put in the processes used for developing software,
Agile has some commonly applied development ap-
proaches. Some of the most commonly applied are
Extreme Programming, Feature-Driven Development
and Scrum (Anand and Dinakaran, 2016).
Extreme Programming (XP), as well as other agile
methods were presented as an approach for software
development projects (Conboy and Fitzgerald, 2010).
XP is a software development approach which em-
phasizes productivity, flexibility, informality, team-
work, a limited usage of tech outside of programming
and working in short cycles, where each cycle be-
gins by choosing requirements from a backlog (Ma-
cias et al., 2003). Beck (Beck and Andres, 2004) pre-
sented XP as a lightweight methodology for small and
medium size software development teams which deal
with vague and fast-changing requirements.
There are many agile methods and, according to
recent research performed by Version One with 3,925
participants from North America and Europe (One,
2015), Scrum methods and practices are the used by
majority of the industry. Mariz et al. (de Souza Mariz
et al., 2010) presented an investigation the relation-
ship among agile practices and the success of projects
using Scrum. In this investigation, with 62 software
engineers which were associated with 11 projects in
nine different companies, results show that eight out
of 25 attributes which are associated with agile prac-
tices have a significant correlation with project suc-
cess, suggesting that it is important to consider agile
as a way to improve efficacy in projects in the soft-
ware industry.
Scrum is an agile, iterative and incremental soft-
ware development approach (Schwaber, 2004) which
is also used in complex projects, in which is impos-
sible to predict how everything will occur. Further,
Scrum offers a framework and set of practices which
keep things visible, allowing teams to know exactly
what is happening and adjust as needed to maintain
project progress. As Scrum practices are part of an
iterative and incremental process, the output of each
iteration is a product increment, and the iterations re-
peat until the project is completed or is terminated.
Each iteration in Scrum is called a sprint and lasts
from one to four weeks. There are three main arte-
facts in Scrum: Product Backlog, Sprint Backlog and
a potentially functional product increment (Schwaber,
2004). The Product Backlog is a priority-ordered re-
quirements list, usually written as user stories. The
Sprint Backlog is a sprint subset of the Product Back-
log which is organized during the planning of a sprint,
where user stories are identified and implemented ac-
cording to their priority. In Scrum, activities are esti-
mated in hours by teams (Reichlmayr, 2011), however
this approach is not the only option, as there are others
such as complexity points.
During each sprint, daily meetings are conducted.
In these meetings, each team member lets the team
know what he/she has done the previous day, what
will be done in the current day and what impediments
are blocking development. At the end of each sprint, a
product demonstration called Sprint Review held and
after this review, a meeting to discuss lessons learned
and next steps called Sprint Retrospective (Scharff
and Verma, 2010).
In agile software development, given the context
of the software industry, there are some relevant as-
pect that have to be considered, and also in software
development more broadly, such as the task of con-
stantly manage people. In this sense, e.g. People
Management (de Alc
ˆ
antara et al., 2018), an approach
which understand people involved in a team or an or-
ganization as human beings, plays a fundamental role
of effectively adding to the organization effectiveness.
Further, It is also important to note that a team’s ex-
Is There an Optimal Sprint Length on Agile Software Development Projects?
99