  With the proliferation of IoT and edge devices, we are observing a lot of
consumer electronics becoming yet another IoT and edge devices. Unlike
traditional smart devices, such as smart phones, consumer electronics, in
general, have significant diversities with fewer number of devices per product
model. With such high diversities, the proliferation of edge devices requires
frequent and seamless updates of consumer electronics, which makes the
manufacturers prone to regressions because the manufacturers have less resource
per an instance of software release; i.e., they need to repeat releases by the
number of product models times the number of updates. Continuous Integration
(CI) systems can help prevent regression bugs from actively developing software
packages including the frequently updated device software platforms. The
proposed CI system provides a portable and modular software platform
automatically inspecting potential issues of incoming changes with the enabled
modules: code format and style, performance regressions, static checks on the
source code, build and packaging tests, and dynamic checks with the built
binary before deploying a platform image on the IoT and edge devices. Besides,
our proposed approach is lightweight enough to be hosted in normal desktop
computers even for dozens of developers. As a result, it can be easily applied
to a lot of various source code repositories. Evaluation results demonstrate
that the proposed method drastically improves plug-ins execution time and
memory consumption, compared with methods in previous studies.

Software Engineering;Performance