  The pervasive adoption of Continuous Integration practices -- both in
industry and open source projects -- has led software building to become a
daily activity for thousands of developers around the world. Companies such as
Microsoft have invested in in-house infrastructures with the goal of optimizing
the build process. CloudBuild, a distributed and caching build service
developed internally by Microsoft, runs the build process in parallel in the
cloud and relies on caching to accelerate builds. This allows for agile
development and rapid delivery of software even several times a day. However,
moving towards faster builds requires not only improvements on the
infrastructure side, but also attention to developers' changes in the software.
Surely, architectural decisions and software changes, such as addition of
dependencies, can lead to significant build time increase. Yet, estimating the
impact of such changes on build time can be challenging when dealing with
complex, distributed, and cached build systems. In this paper, we envision a
predictive model able to preemptively alert developers on the extent to which
their software changes may impact future building activities. In particular, we
describe an approach that analyzes the developer's change and predicts (i)
whether it impacts (any of) the Longest Critical Path; (ii) may lead to build
time increase and its delta; and (iii) the percentage of future builds that
might be affected by such change.
