Hay varios aspectos diferentes de la ingeniería de software que están influenciados por el aprendizaje automático y la ciencia de datos: qué y cómo construimos programas de software, así como por qué las técnicas basadas en datos son importantes para el diseño de software.
Primero, veremos más y más kits de herramientas y bibliotecas de ciencia de datos y aprendizaje automático, así como productos de software, a medida que aumente la popularidad (e importancia) de DS y ML.
En segundo lugar, he oído hablar de algunos trabajos de investigación que identifican y depuran automáticamente errores sintéticos y semánticos en el programa que no están alineados con los objetivos originales de las funciones. Dicha técnica se deriva en gran medida de las técnicas de aprendizaje automático y ciencia de datos (por ejemplo, análisis de datos estadísticos).
- ¿Qué es una hoja de ruta UX? ¿Cuándo y por qué se crea?
- ¿Qué es el servicio de datos sensibles a la latencia y el procesamiento por lotes orientado al rendimiento?
- ¿Debo comprar HP Pavilion 15-au003tx o Dell Inspiron 15 5559?
- ¿Hemos podido utilizar la computadora más rápida a su máximo potencial teórico?
- ¿Cuáles son los pros y los contras de ir a la UC Santa Cruz para la informática? ¿Cómo pesa UCSC en comparación con otras universidades en términos de CS y empleo después de la universidad?
En tercer lugar, este concepto de la denominada ingeniería de software basada en datos ha existido por un tiempo. A diferencia de gobernar el flujo de trabajo del programa mediante un conjunto de reglas o lógica codificada, los datos en sí mismos definirían el flujo de trabajo del programa de software. Esto es mucho más poderoso y genérico que un montón de declaraciones if-else.
Además de lo anterior, debe haber muchas otras formas en que DS y ML influirán en la ingeniería / diseño de software. Como muchas personas han señalado, es difícil predecir el impacto en su totalidad, pero esto solo hace que las cosas sean más emocionantes.