Lenguaje
Z.
Es un
lenguaje de especificación formal empleado en Ingeniería de software para la
especificación formal de un sistema de cómputo, se emplea de forma previa a la
programación, desarrollado por Jean-Raymound Abrial en los laboratorios de
computación de la universidad de Oxford.
Se sustenta
en la teoría de conjuntos, cálculo de lambda y la lógica de primer orden,
emplea esquemas para la representación de estados del sistema y las operaciones
que se efectúan sobre el mismo, los cuales contienen variables y predicados que
afectan los valores de las variables.
Un ejemplo
de esquema se muestra a continuación:
En donde
la primera línea establece el conjunto de todos los nombres NAME y el conjunto
de todas las fechas DATE.
Brithdaybook
es el esquema principal y define el espacio
de estados del sistema. Se establecen las variables: known (Contacto) el cual representa el conjunto de nombres con
cumpleaños agendados y birthday (cumpleaños)
es una función parcial con dominio en el conjunto NAME e imagen en el conjunto DATE;
en la siguiente parte del esquema se define una condición que indica que el
conjunto know es igual al dominio de la función birthday.
Por
otra parte en la búsqueda de información al respecto de las ventajas y
desventajas de Z, es bastante la falta de documentación al respecto, se podrían
citar como tal las ventajas y desventajas de los método formales, sin embargo
engloban el conjunto de todos los métodos formales, por lo que externo lo que
percibí al respecto durante la presente búsqueda de información.
Ventajas:
Se
convirtió en una norma internacional bajo ISO denominada: ISO/IEC 13568
Existen
distintas herramientas de apoyo para el
testeo como: Z Word Tools y Community Z
Tools Project (CZT)
Desventajas:
Poca
documentación que guíe a fondo el aprendizaje e implementación de método
formal.
Carencia
de ejemplos prácticos de aplicación.
Pocos
casos de éxito docmentados.
Referencias.
Wikipedia.
2013. Artículo. Lenguaje Z. Consultado
el 08 de diciembre de 2013 en http://es.wikipedia.org/wiki/Lenguaje_Z
Ejemplo
de Especificación en Z, consultado el 08 de diciembre de 2013 en http://trevinca.ei.uvigo.es/~alma/docencia/mfes/TRANS_TEMA2.pdf
Enlaces.
Proyecto(CZT)
Blog Ingeniería en Software
No hay comentarios:
Publicar un comentario