El uso de los metodos formales en la industria

Solo disponible en BuenasTareas
  • Páginas : 9 (2074 palabras )
  • Descarga(s) : 0
  • Publicado : 4 de marzo de 2011
Leer documento completo
Vista previa del texto
1. Abstract

La calidad de un sistema es uno de los problemas más importantes en los procesos de desarrollo de software. Es importante garantizar el correcto funcionamiento y el buen desempeño bajo situaciones no determinadas de un proyecto. Los métodos formales han surgido como enfoques analíticos en donde el desarrollo de software puede ser verificado por medio de poderosas teoríasmatemáticas, presentando ventajas en la calidad del software, tiempo de desarrollo, tamaño y complejidad de las pruebas. Este articulo muestra algunos proyectos en los que se emplearon métodos formales.

2. Introducción

¿Qué son los métodos formales?

Un método formal es una técnica matemática, usado para describir sistemas de hardware o software. (1)
Los métodos formales permiten representar laespecificación de requisitos, verificación y diseño de componentes mediante notaciones matemáticas. El uso de métodos formales permite plantear de manera clara los requerimientos de un sistema, generando especificaciones que definen el comportamiento en términos del”que debe hacer” y no del”cómo lo hace”. Gracias al correcto proceso de especificación, propiedades derivadas de cada modulo puedenser verificadas mediante técnicas de razonamiento asociadas a los modelos formales, como probadores de teoremas y verificadores de modelos. (2)
Para los procesos de especificación se reconoce las siguientes clasificaciones:
1. Lenguajes basados en modelos y estados (VDM, Z o sus posteriores extensiones en el método B). Permiten especificar el sistema mediante un concepto formal de estados yoperaciones sobre estados. Los datos y relaciones/funciones se describen en detalle y sus propiedades se expresan en lógica de primer orden. La semántica de los lenguajes está basada en la teoría de conjuntos.
2. Lenguajes basados en especificaciones algebraicas: proponen una descripción de estructuras de datos estableciendo tipos y operaciones sobre esos tipos. Para cada tipo se define unconjunto de valores y operaciones sobre dichos valores. Las operaciones de un tipo se definen a través de un conjunto de axiomas o ecuaciones que especifican las restricciones que deben satisfacer las operaciones. Métodos más conocidos: Larch, OBJ, TADs.
3. Lenguajes de especificación de comportamiento:
* Métodos basados en álgebra de procesos: modelan la interacción entre procesos concurrentes.Esto ha potenciado su difusión en la especificación de sistemas de comunicación (protocolos y servicios de telecomunicaciones) y de sistemas distribuidos y concurrentes. Los más conocidos son: CCS,CSP y LOTOS.
* Métodos basados en Redes de Petri: una red de petri es un formalismo basado en autómatas, es decir, un modelo formal basado en flujos de información. Permiten expresar eventosconcurrentes. Los formalismos basados en redes de petri establecen la noción de estado de un sistema mediante lugares que pueden contener marcas. Un conjunto de transiciones (con pre y post condiciones) describe la evolución del sistema entendida como la producción y consumo de marcas en varios puntos de la red.
* Métodos basados en lógica temporal: se usan para especificar sistemas concurrentes yreactivos. Los sistemas reactivos son aquellos que mantienen una continua interacción con su entorno respondiendo a los estímulos externos y produciendo salidas en respuestas a los mismos, por lo tanto el orden de los eventos en el sistema no es predecible y su ejecución no tiene por qué terminar.
4. Lenguajes de especificación para sistemas concurrentes (el caso de CSP o el cálculo ¼)
5.Lenguajes de especificación para sistemas temporales (TLZ, LOTOS y los cálculos basados en tcc).

En cuanto al proceso de verificación se tienen dos enfoques:
1. Los verificadores de modelos: realizan una búsqueda exhaustiva sobre los estados posibles de una especificación para encontrar posibles fallas no consideradas.
2. Los probadores de teoremas: en donde la especificación y sus...
tracking img