Tengo un tipo de proceso de "canalización" que esencialmente es solo unir un conjunto de herramientas existentes para automatizar un flujo de trabajo. Para uno de los pasos, hay una herramienta de línea de comandos existente que ya hace la carne de lo que ese paso debe hacer.
La herramienta CLI externa está basada en Java, y también lo es mi canalización, por lo que sería posible integrar la herramienta directamente en el paso de canalización, pero la herramienta es muy compleja y actualmente está estrechamente vinculada a tener una entrada de línea de comandos (algo así como 37 opciones de bandera de configuración).
La pregunta es: ¿es una mejor idea simplemente llamar e invocar el proceso externo, o sería mejor integrar el código externo dentro de mi aplicación?
¿Cuáles son las ventajas y desventajas de integrar frente a llamar al proceso externo?