Hi David,
First of all: I totally agree with Peter. You don't want to go down this
rabbit hole! The effort would simply be unreasonable.
Long build times however can be bothersome. One needs to decide how
much. If the build server takes a long time, I believe this is okay.
This it, what a System CI is for: to do the jobs that need doing. Long
build times for the developer in the IDE on the other hand can be a real
pain in the ass and decrease the efficiency of a developer.
Some things can't be helped, like unit tests that take a long time or
NPM. Sometimes it simply is what it is. Besides that, we found that long
build times can be a sign off an unnecessary complex structure. If we
have such a Situation we usually ask ourself the following questions:
* Does everything need to be build together? Meaning do we have bundles
that have a low change frequency, that can be put in a separate
Workspace/Repo (like e.g. Framework, Core or Common).
* Do we have bundles that change frequently and cause a lot of dependent
projects to be build? Typical candidates are e.g. common bundles where
you keep your Util classes. Do all classes need to be in one bundle or
can they become separate bundles or part of the functional bundle where
they belong?
To conclude: Long build times can be a sign of too much complexity. The
build simply exposes this. Improve the build speed by restructuring
usually leads automatically to an improvement in your overall architecture.
I hope this helps,
Jürgen.
--
Jürgen Albert
Geschäftsführer
Data In Motion Consulting GmbH
Kahlaische Str. 4
07745 Jena
Mobil: 0157-72521634
E-Mail:
j.al...@datainmotion.de
Web:
www.datainmotion.de
XING:
https://www.xing.com/profile/Juergen_Albert5
Rechtliches
Jena HBR 513025