Método de desarrollo de Viena


El Método de Desarrollo de Viena ( VDM ) es uno de los métodos formales más antiguos para el desarrollo de sistemas basados ​​en computadora. Con origen en el trabajo realizado en el Laboratorio IBM de Viena [1] en la década de 1970, ha crecido hasta incluir un grupo de técnicas y herramientas basadas en un lenguaje de especificación formal: el lenguaje de especificación VDM (VDM-SL). Tiene una forma extendida, VDM++, [2] que soporta el modelado de objetosy sistemas concurrentes. El soporte para VDM incluye herramientas comerciales y académicas para analizar modelos, incluido el soporte para probar y comprobar las propiedades de los modelos y generar código de programa a partir de modelos VDM validados. Existe una historia de uso industrial de VDM y sus herramientas y un creciente cuerpo de investigación en el formalismo ha llevado a contribuciones notables a la ingeniería de sistemas críticos, compiladores , sistemas concurrentes y en lógica para informática .

Los sistemas informáticos se pueden modelar en VDM-SL a un nivel de abstracción más alto que el que se puede lograr con lenguajes de programación, lo que permite el análisis de diseños y la identificación de características clave, incluidos defectos, en una etapa temprana del desarrollo del sistema. Los modelos que han sido validados pueden transformarse en diseños de sistemas detallados a través de un proceso de refinamiento. El lenguaje tiene una semántica formal, lo que permite probar las propiedades de los modelos con un alto nivel de seguridad. También tiene un subconjunto ejecutable, de modo que los modelos pueden analizarse mediante pruebas y pueden ejecutarse a través de interfaces gráficas de usuario, de modo que los modelos pueden ser evaluados por expertos que no necesariamente están familiarizados con el lenguaje de modelado en sí.

Los orígenes de VDM-SL se encuentran en el laboratorio de IBM en Viena , donde la primera versión del lenguaje se denominó V ienna D efinition L anguage (VDL). [3] El VDL se usó esencialmente para dar descripciones de semántica operativa en contraste con el VDM – Meta-IV que proporcionó semántica denotacional [4]

«Hacia finales de 1972, el grupo de Viena volvió a centrar su atención en el problema de desarrollar sistemáticamente un compilador a partir de una definición de lenguaje. El enfoque general adoptado se ha denominado "Método de desarrollo de Viena"... El metalenguaje actualmente adoptado ("Meta-IV") se utiliza para definir partes importantes de PL/1 (como se indica en ECMA 74, curiosamente un "formal"). documento de normas escrito como un intérprete abstracto") en BEKIČ 74.» [5]

No hay conexión entre Meta-IV , [6] y el lenguaje Meta-II de Schorre , o su sucesor Tree Meta ; estos eran sistemas compilador-compilador en lugar de ser adecuados para descripciones formales de problemas.

Entonces, Meta-IV se "usó para definir porciones importantes" del lenguaje de programación PL/I . Otros lenguajes de programación descritos retrospectivamente, o descritos parcialmente, usando Meta-IV y VDM-SL incluyen el lenguaje de programación BASIC , FORTRAN , el lenguaje de programación APL , ALGOL 60, el lenguaje de programación Ada y el lenguaje de programación Pascal . Meta-IV evolucionó en varias variantes, generalmente descritas como las escuelas danesa, inglesa e irlandesa.