
El software especializado se utiliza en casi todos los campos de la ciencia, pero su calidad no siempre es buena. (Foto: Markus Breig, KIT). Fuente: Markus Breig, KIT
Las herramientas computacionales son fundamentales en casi todas las disciplinas científicas. Especialmente en los casos en que se generan grandes cantidades de datos de investigación y requieren un procesamiento rápido, un software confiable y cuidadosamente desarrollado es crucial para el análisis y la interpretación correcta de dichos datos. Sin embargo, el software científico puede tener deficiencias cualitativas. Para evaluar la calidad del software de forma automatizada, científicos informáticos del Instituto de Tecnología de Karlsruhe (KIT) y el Instituto de Estudios Teóricos de Heidelberg (HITS) diseñaron la herramienta SoftWipe.
“La adherencia a los estándares de codificación rara vez es una consideración en el software científico, aunque incluso puede conducir a resultados científicos erróneos”, dice el profesor Alexandros Stamatakis, que trabaja tanto en HITS como en el Instituto KIT de Informática Teórica (ITI). La herramienta de software de código abierto de SoftWipe proporciona un enfoque rápido, confiable y rentable para resolver este problema al evaluar automáticamente el cumplimiento de los estándares de desarrollo de software. Además del diseño de los mencionados herramienta, la Especialistas en TI analizó 48 herramientas de software científico de diferentes áreas de investigación para evaluar qué tan bien cumplen con los estándares de codificación.
“SoftWipe también se puede utilizar en el proceso de revisión de software científico y respaldar el proceso de selección de software”, añade Adrian Zapletal. El aprendiz del maestro y su colega Dimitri Höhler contribuyeron significativamente al desarrollo de SoftWipe. Para seleccionar los criterios de evaluación, se basaron en los estándares existentes utilizados en entornos críticos para la seguridad como la NASA y el CERN.
“Nuestra investigación ha revelado enormes discrepancias en la calidad del software”, dice el coautor, el profesor Carsten Sinz de ITI. Muchos programas, como covid-sim, que se utiliza en el Reino Unido para el modelado matemático de la enfermedad COVID-19, tenían una puntuación de calidad muy baja y, por lo tanto, una puntuación deficiente. Los investigadores recomiendan que programas como SoftWipe se utilicen de forma predeterminada en el proceso de selección y revisión de software con fines de investigación.
¿Cómo funciona SoftWipe?
SoftWipe es una canalización escrita en el lenguaje de programación Python3 que utiliza varios analizadores de código estático y dinámico disponibles (la mayoría de ellos están disponibles gratuitamente) para evaluar la calidad del código de software escrito en C / C ++. En este proceso, SoftWipe compila software y luego lo ejecuta para que se puedan detectar errores de programación durante la ejecución. Según el resultado de las herramientas de análisis de código utilizadas, SoftWipe calcula un puntaje de calidad de 0 (deficiente) a 10 (excelente) para calcular el puntaje final general.
Entregado por
Instituto de Tecnología de Karlsruhe