Process and progress of requirement formalization in Software Engineering
Proceso y progreso de la formalización de requisitos en Ingeniería del Software
Desde mediados del siglo pasado se inició la investigación en métodos formales y se presentaron propuestas y metodologías para aplicarlos en el desarrollo de software. La idea era superar la diagnosticada crisis del software mediante la matematización del ciclo de vida del desarrollo de este producto. En este artículo se presentan los resultados de una revisión de la literatura, acerca del progreso y desarrollo de la formalización de requisitos. La conclusión es que ambos aspectos son lentos: no hay interés suficiente en la industria, la academia no capacita en métodos formales, no hay patrocinio para este campo de investigación, los profesionales le temen a las matemáticas y las metodologías tradicionales de la Ingeniería del Software siguen siendo las más utilizadas en los equipos de desarrollo. Debido a la deficiencia en la calidad, la seguridad y la fiabilidad del software, es necesario reactivar la investigación y experimentación con los métodos formales, porque la esperanza es que las matemáticas sean la herramienta con la que se supere la crisis del software promulgada en los años 60.
INTRODUCCIÓN
Las empresas que se enfrentan a un entorno cambiante en el que hay que analizar y evaluar cuidadosamente las demandas y soluciones de nuevos productos. Para mantener la competitividad, deben elegir una combinación adecuada de funciones y tecnologías, y ser capaces de ponerlas en el mercado de la forma más económica posible. Con ciclos de vida más cortos, se ven obligados a llevar los productos aún más rápido a la madurez del mercado 1. Además, hay que sincronizar cuidadosamente el tiempo o los horizontes de planificación de los nuevos productos. De este modo, es posible desarrollar y alinear las soluciones a las necesidades de los usuarios.
Cuando se diseña un sistema, se recomienda identificar los objetivos, las funcionalidades y las restricciones con la mayor precisión posible. Esto es lo que constituye el documento de requisitos o la especificación del mismo. Algo que se repite a diario en este proceso en el que se suelen escribir los requisitos en un lenguaje natural, bien porque el ingeniero no conoce los lenguajes formales o porque considera que es demasiado pronto en el ciclo de vida para utilizar una especificación formal (es decir, aduce no tener suficientes datos para escribir con éxito un requisito formal). El principal problema de la escritura de requisitos en el lenguaje natural es que no puede servir como suministro para la verificación y validación de técnicas automatizadas.
De hecho, los lenguajes formales son obligatorios si se pretende que el plan de pruebas utilice técnicas automatizadas verificadas porque son los únicos lenguajes que los ordenadores pueden entender. Por otra parte, no son ambiguos, es decir, la frase no puede ser entendida de diferentes maneras. Esto implica que los humanos también pueden beneficiarse del uso de estos lenguajes porque entenderán completamente el requisito sin una interpretación previa del usuario.
Recursos
-
Formatopdf
-
Idioma:inglés
-
Tamaño:121 kb