Las llamadas asÃncronas suponen una muy buena ventaja con respecto a realizar ejecuciones en el main thread alias (blocking call, blocking api, BlockingIO etc), nos permite de cierto modo ser más eficientes, hacer cosas en paralelo a la vez, sin esperar por esas operaciones que toman tiempo en finalizar, hasta la experiencia de usuario mejora drásticamente.
To do TDD it is very important to have a framework like mockito, JUnit, to test behaviors and results without the need to test the code in broad strokes.
It never entered my head, keeping that coupling with arduino via USB, it prevented me to explore remote area with sensors, also that the api JSSC de Alexey Sokolov is no longer maintained, only a fork that I see quite active people and it is here jSerialComm.