También describiría esto como elegante, pero me gustaría agregar el problema, si me perdonan mi intrusión.
Sé que hay paquetes de software muy costosos para resolver situaciones como esta, pero en la empresa en la que trabajo no podemos pagar el costo a menos que estemos seguros de que hace lo que necesitamos.
Test Driven Development (TDD) es uno de los mejores sistemas de los que he escuchado para el desarrollo, y lo disfruto, pero los problemas que me llevan el tiempo normalmente son causados por interrupciones complejas y eventos de hardware que muchos llamarían fallos. Parece un problema menor tener un problema cada 2 horas cuando las estrellas se alinean, pero si tu teléfono se congela una vez a la semana, maldecirías el nombre de los ingenieros. En nuestro caso, tenemos que entrar en un lote de alimentos cuando las cosas realmente se rompen, lo que, como pueden imaginar, me gusta evitar.
He visto soluciones muy inteligentes para verificar la funcionalidad de los subsistemas, que, si se implementan correctamente, probablemente me ahorrarían 3 horas de una semana laboral de 50 horas, pero si existiera una forma inteligente de encontrar situaciones de falla podría salvarme semanas de trabajo buscando el "error" que ocurre en el campo ocasionalmente bajo una carga pesada.
Es probable que esta publicación no ayude a una gran cantidad, pero creo que traer todo a la luz hace que todo sea más fácil de resolver. Si hubiera un método TDD para encontrar situaciones de falla, podría obtener 10s de miles asignados para pagar por ello.
-Max