La evaluación del prototipo que se desarrolla en un trabajo científico es una parte muy importante de la investigación puesto que determina si el sistema propuesto cumple con sus objetivos y cómo de bien lo hace, lo cual es esencial para hacer comparaciones con otras soluciones y reproducir resultados previos. Una parte común en la mayoría de los trabajos es la evaluación del rendimiento, ya que todo mecanismo de seguridad introduce algún tipo de sobrecarga de rendimiento. El objetivo es mantener la sobrecarga en el nivel más bajo posible mientras se proporciona el mayor grado de seguridad posible. Como resultado, la investigación actual en seguridad de sistemas se centra en defensas prácticas que sacrifican cierta seguridad para lograr garantías de rendimiento realistas.
Inspirados por una web publicada en el año 2010 sobre lo que se denominó “benchmarking crimes”, investigadores de la universidad de Vrije en Amsterdam han realizado un estudio para analizar su magnitud en el área de seguridad de sistemas, tomando como referencia 50 artículos de defensas publicados en las conferencias top. Han ideado una serie de requisitos de benchmarking y han propuesto una clasificación de dichos “crímenes”, además de un análisis sistemático para mostrar que este fenómeno es un problema cada vez más relevante en artículos sobre mecanismos de defensa publicados en las conferencias top de seguridad de sistemas.
Para permitir la comparación con otras soluciones, una evaluación debe cumplir con una serie de requisitos. En primer lugar, debe ser completa en el sentido de que debe verificar todas las contribuciones declaradas sobre el sistema y mostrar el alcance de cualquier impacto negativo que pueda producir. Todos los resultados presentados deben ser relevantes en el sentido de que realmente le digan al lector algo significativo sobre el sistema. Por otra parte debe ser sólida, lo que requiere que todos los números midan lo que se pretende con una precisión y repetibilidad razonables. Por último, uno de los principios generales de la ciencia requiere que los artículos sean reproducibles. Es decir, la información provista debería ser suficiente para permitir que otras personas construyen el sistema y lo evalúen de la misma manera que el original.
En la investigación han identificado 22 fallos (“benchmarking crimes”) más o menos comunes que afectan a la validez de los resultados por violar alguno de los requisitos mencionados. Dichos fallos se agrupan en las siguientes categorías (Para la lista completa echar un vistazo al artículo original):
- 1. Benchmarking selectivo. Sucede cuando, por ejemplo, se escoge arbitrariamente un subconjunto de benchmarks y se presenta como un único valor total de sobrecarga de rendimiento.
- 2. Manejo inadecuado de los resultados. En este grupo se encuentran los casos en los que incluso ejecutando los benchmarks correctos la presentación de los resultados puede ser engañosa si se procesan e interpretan de manera incorrecta.
- 3. Uso de benchmarks incorrectos. Como por ejemplo escoger benchmarks que no son adecuados para medir la sobrecarga esperada.
- 4. Comparación inadecuada de los resultados. Para que los números tengan sentido es necesario un punto de referencia común, por lo que en este grupo se encuentran fallos como calcular la sobrecarga en comparación con un punto de referencia inadecuado.
- 5. Omisiones. Por ejemplo al medir únicamente la sobrecarga de tiempo de ejecución pero no la de memoria.
- 6. Falta de información. No incluir información importante en el artículo, como por ejemplo no especificar la plataforma sobre la que se han ejecutado los experimentos.
Los resultados de la investigación han demostrado que los “benchmarking crimes” son un fenómeno extendido en seguridad de sistemas cuya prevalencia no ha cambiado con el tiempo, pero que la mayoría puede prevenirse fácilmente.