Notaciones Relacionales

31
[TAC] [TAC] AUDITORIA AUDITORIA INFORMATICA INFORMATICA NOTACIONES RELACIONALES NOTACIONES RELACIONALES RAUL GARCIA TITOS

Transcript of Notaciones Relacionales

Page 1: Notaciones Relacionales

[TAC][TAC] AUDITORIA AUDITORIA INFORMATICAINFORMATICA

NOTACIONES RELACIONALESNOTACIONES RELACIONALES

RAUL GARCIA TITOS

Page 2: Notaciones Relacionales

INTRODUCCIONINTRODUCCION

La necesidad de contar con herramientas La necesidad de contar con herramientas estándar y fiables para el ejercicio de la estándar y fiables para el ejercicio de la auditoría informática ha promovido la creación auditoría informática ha promovido la creación y de desarrollo de mejores practicas como las y de desarrollo de mejores practicas como las notaciones relacionales.notaciones relacionales.

Las notaciones relacionales son una Las notaciones relacionales son una herramienta, con sintaxis y semántica formal, herramienta, con sintaxis y semántica formal, que podemos usar para crear un modelo que podemos usar para crear un modelo (abstracciones, organigramas,…) en base a (abstracciones, organigramas,…) en base a los requisitos de un sistema software.los requisitos de un sistema software.

Page 3: Notaciones Relacionales

SITUACION ACTUALSITUACION ACTUAL

Las herramientas de especificación son un instrumento para Las herramientas de especificación son un instrumento para representar el modelo de requerimientos del software. De esta forma y representar el modelo de requerimientos del software. De esta forma y según su grado de formalidad, se pueden clasificar en:según su grado de formalidad, se pueden clasificar en:

No Formales:No Formales: Lenguaje natural.Lenguaje natural. Lenguaje estructurado.Lenguaje estructurado.

Semi-Formales:Semi-Formales: con sintaxis formal. con sintaxis formal. Diagramas casos de uso.Diagramas casos de uso. Diagramas de clases.Diagramas de clases.

Formales:Formales: con sintaxis y semántica formal. con sintaxis y semántica formal. Notaciones relacionales.Notaciones relacionales. Tablas de decisión.Tablas de decisión. Notaciones orientadas a estados.Notaciones orientadas a estados.

Page 4: Notaciones Relacionales

VENTAJASVENTAJAS

Las notaciones formales en general tienen la ventaja Las notaciones formales en general tienen la ventaja de ser concisas evitando así la ambigüedad, apoyan el de ser concisas evitando así la ambigüedad, apoyan el razonamiento formal de las especificaciones razonamiento formal de las especificaciones funcionales y proporcionan de manera automática una funcionales y proporcionan de manera automática una base para la verificación y validación de los resultados base para la verificación y validación de los resultados de un producto de programación, haciéndolo de un producto de programación, haciéndolo coherente con el modelo del sistema y completo y coherente con el modelo del sistema y completo y correcto con las necesidades del usuario. Esto correcto con las necesidades del usuario. Esto proporciona una mayor facilidad para el auditor a la proporciona una mayor facilidad para el auditor a la hora de comprobar que el sistema cumple con los hora de comprobar que el sistema cumple con los requisitos necesarios.requisitos necesarios.

Page 5: Notaciones Relacionales

Las notaciones relacionales en particular se utilizan Las notaciones relacionales en particular se utilizan para especificar las características funcionales del para especificar las características funcionales del producto basándose en los conceptos de entidades y producto basándose en los conceptos de entidades y atributos. A las entidades se les llama elementos en un atributos. A las entidades se les llama elementos en un sistema. Los atributos se especifican al aplicar sistema. Los atributos se especifican al aplicar funciones y relaciones a las entidades nombradas. Los funciones y relaciones a las entidades nombradas. Los atributos especifican las operaciones permitidas con atributos especifican las operaciones permitidas con las entidades, las relaciones entre ellas, y el flujo de las entidades, las relaciones entre ellas, y el flujo de datos entre las entidades.datos entre las entidades.

Las notaciones relacionales incluyen ecuaciones Las notaciones relacionales incluyen ecuaciones implícitas, relaciones recurrentes, axiomas algebraicos implícitas, relaciones recurrentes, axiomas algebraicos y expresiones regulares. Comenzamos a explicarlas y expresiones regulares. Comenzamos a explicarlas más detalladamente.más detalladamente.

Page 6: Notaciones Relacionales

Ecuaciones ImplícitasEcuaciones Implícitas Establecen las características y las propiedades de una solución Establecen las características y las propiedades de una solución

sin establecer el método concreto para resolverla.sin establecer el método concreto para resolverla.

Ejemplo.-Ejemplo.-

Uno puede especificar la inversión de matrices como el Uno puede especificar la inversión de matrices como el producto de la matriz original M con su inversa M’ igual a la matriz producto de la matriz original M con su inversa M’ igual a la matriz identidad I junto con un margen de error computacional E identidad I junto con un margen de error computacional E permisible.permisible.

M x M’ = I ± EM x M’ = I ± E

Dada esta especificación funcional completa para la Dada esta especificación funcional completa para la inversión de matrices, el diseño implica la especificación de una inversión de matrices, el diseño implica la especificación de una estructura de datos, de un algoritmo para calcular el inverso y de estructura de datos, de un algoritmo para calcular el inverso y de una técnica de generación del modulo de inversión.una técnica de generación del modulo de inversión.

Page 7: Notaciones Relacionales

Ecuaciones ImplícitasEcuaciones Implícitas

Ejemplo.-Ejemplo.-

La especificación implícita de una función de La especificación implícita de una función de raíz cuadrada, SQRT se puede establecer comoraíz cuadrada, SQRT se puede establecer como

(0 <= X <= Y) [ABS(SQRT(X)**2 - X) < E](0 <= X <= Y) [ABS(SQRT(X)**2 - X) < E]

Esta ecuación establece que para todos los Esta ecuación establece que para todos los valores de X en el rango cerrado de 0 y Y, calculando valores de X en el rango cerrado de 0 y Y, calculando la raíz cuadrada de X, elevándola al cuadrado y la raíz cuadrada de X, elevándola al cuadrado y restando X, se obtiene un valor de error permisible.restando X, se obtiene un valor de error permisible.

Page 8: Notaciones Relacionales

Relaciones RecurrentesRelaciones Recurrentes

Una relación recurrente es una ecuación que Una relación recurrente es una ecuación que define una secuencia recursiva; cada término define una secuencia recursiva; cada término de la secuencia es definido como una función de la secuencia es definido como una función de términos anteriores.de términos anteriores.

Es una expresión que consta de una parte Es una expresión que consta de una parte inicial llamada base (o semilla) y una o más inicial llamada base (o semilla) y una o más partes recursivas. Las partes recursivas partes recursivas. Las partes recursivas describen el valor deseado de una función en describen el valor deseado de una función en términos de otros valores de la función.términos de otros valores de la función.

Page 9: Notaciones Relacionales

Relaciones RecurrentesRelaciones Recurrentes

Un método usual de simplificación de un Un método usual de simplificación de un problema complejo es la división de este problema complejo es la división de este en subproblemas del mismo tipo. Esta en subproblemas del mismo tipo. Esta técnica de programación se conoce técnica de programación se conoce como divide y vencerás y es el núcleo en como divide y vencerás y es el núcleo en el diseño de numerosos algoritmos de el diseño de numerosos algoritmos de gran importancia, así como también es gran importancia, así como también es parte fundamental de la programación parte fundamental de la programación dinámica.dinámica.

Page 10: Notaciones Relacionales

Relaciones RecurrentesRelaciones Recurrentes

Ejemplo.-Ejemplo.-

Con la suma de una progresión geométrica, tenemos la relación Con la suma de una progresión geométrica, tenemos la relación recurrente:recurrente:

Sn+1 - Sn = xn+1Sn+1 - Sn = xn+1

Ejemplo.-Ejemplo.-

La ecuación de recurrencia asociada con el problema de las La ecuación de recurrencia asociada con el problema de las Torres de Hanoi es la siguiente:Torres de Hanoi es la siguiente:

Tn = 2Tn-1 + 1Tn = 2Tn-1 + 1

Con las condiciones iniciales:Con las condiciones iniciales:T1 = 1 T1 = 1

Page 11: Notaciones Relacionales

Relaciones RecurrentesRelaciones Recurrentes

Ejemplo.-Ejemplo.-

El ejemplo más conocido es la definición El ejemplo más conocido es la definición recurrente de la función factorial recurrente de la función factorial n!n!::

Page 12: Notaciones Relacionales

Relaciones RecurrentesRelaciones Recurrentes

Ejemplo.-Ejemplo.-

Una de las más antiguas relaciones de Una de las más antiguas relaciones de recurrencia define la sucesión de Fibonacci.recurrencia define la sucesión de Fibonacci.

Los números sucesivos de Fibonacci se forman Los números sucesivos de Fibonacci se forman como la suma de los dos números de Fibonacci previos, como la suma de los dos números de Fibonacci previos, donde el primero es 0 y el segundo 1donde el primero es 0 y el segundo 1

FI(0) = 1FI(0) = 1FI(1) = 1FI(1) = 1FI(N) = FI(N - 1) + FI(N - 2)FI(N) = FI(N - 1) + FI(N - 2) para todo para todo

N > 1N > 1

Page 13: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

Es una "verdad evidente" que no requiere Es una "verdad evidente" que no requiere demostración, pues se justifica a sí misma, y sobre la demostración, pues se justifica a sí misma, y sobre la cual se construye el resto de conocimientos por medio cual se construye el resto de conocimientos por medio de la deducción.de la deducción.

El axioma gira siempre sobre sí mismo, mientras los El axioma gira siempre sobre sí mismo, mientras los postulados y conclusiones posteriores se deducen de postulados y conclusiones posteriores se deducen de este.este.

Especifican las propiedades fundamentales de un Especifican las propiedades fundamentales de un sistema y dan la base para derivar propiedades sistema y dan la base para derivar propiedades adicionales que están implicadas por los axiomas.adicionales que están implicadas por los axiomas.

Page 14: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

Para establecer un sistema matemático valido, el Para establecer un sistema matemático valido, el conjunto de axiomas debe ser completo y consistente, conjunto de axiomas debe ser completo y consistente, debe ser posible probar los resultados deseados debe ser posible probar los resultados deseados usando los axiomas.usando los axiomas.

Se logra elegancia en la definición si los axiomas son Se logra elegancia en la definición si los axiomas son independientes (ningún axioma se puede derivar de independientes (ningún axioma se puede derivar de otros axiomas).otros axiomas).

El punto de vista axiomático se puede usar para El punto de vista axiomático se puede usar para especificar las propiedades de los sistemas de especificar las propiedades de los sistemas de programación.programación.

Page 15: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

Ejemplo.-Ejemplo.-

Especificación axiomática de la propiedad ultimo que entra, Especificación axiomática de la propiedad ultimo que entra, primero que sale (LIFO: last-in, first-out) de los elementos de una pila.primero que sale (LIFO: last-in, first-out) de los elementos de una pila.

SINTAXIS:SINTAXIS:

OPERACIÓNOPERACIÓN DOMINIODOMINIO RANGORANGONUEVONUEVO ( ) − →( ) − → PILAPILAEMPUJAEMPUJA (PILA, ELEMENTO) − →(PILA, ELEMENTO) − → PILAPILAEXTRAEEXTRAE (PILA) − →(PILA) − → PILAPILATOPETOPE (PILA) − →(PILA) − → ELEMENTOELEMENTOVACIOVACIO (PILA) − →(PILA) − → VALOR DE BOOLEVALOR DE BOOLE

Page 16: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

DEFINICIONES INTUITIVAS:DEFINICIONES INTUITIVAS:

NUEVO crea una nueva pila.NUEVO crea una nueva pila.

EMPUJA añade un nuevo elemento en el tope de la pila; requiere EMPUJA añade un nuevo elemento en el tope de la pila; requiere dos argumentos, una pila y un elemento.dos argumentos, una pila y un elemento.

TOPE regresa una copia del elemento ubicado en el tope; TOPE regresa una copia del elemento ubicado en el tope; requiere una pila.requiere una pila.

EXTRAE remueve el elemento del tope; requiere una pila como EXTRAE remueve el elemento del tope; requiere una pila como su argumento.su argumento.

VACIO prueba si la pila esta vacía.VACIO prueba si la pila esta vacía.

Page 17: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

AXIOMAS:AXIOMAS:(pil es de tipo PILA, ele es de tipo ELEMENTO)(pil es de tipo PILA, ele es de tipo ELEMENTO)

1) VACIO (NUEVO) = verdadero1) VACIO (NUEVO) = verdadero

2) VACIO (EMPUJA (pil, ele)) = falso2) VACIO (EMPUJA (pil, ele)) = falso

3) EXTRAE (NUEVO) = error3) EXTRAE (NUEVO) = error

4) TOPE (NUEVO) = error4) TOPE (NUEVO) = error

5) EXTRAE (EMPUJA (pil, ele)) = pil5) EXTRAE (EMPUJA (pil, ele)) = pil

6) TOPE (EMPUJA (pil, ele)) = ele6) TOPE (EMPUJA (pil, ele)) = ele

Page 18: Notaciones Relacionales

Axiomas AlgebraicosAxiomas AlgebraicosLos axiomas se pueden establecer en español como sigue:Los axiomas se pueden establecer en español como sigue:

1) Una pila nueva esta vacía.1) Una pila nueva esta vacía.

2) Una pila no esta vacía inmediatamente después de empujar un 2) Una pila no esta vacía inmediatamente después de empujar un elemento en ella.elemento en ella.

3) Si se intenta extraer de una pila nueva se obtiene un error.3) Si se intenta extraer de una pila nueva se obtiene un error.

4) No existe elemento en una pila nueva.4) No existe elemento en una pila nueva.

5) Empujar un elemento en una pila y extraerlo de inmediato, deja a 5) Empujar un elemento en una pila y extraerlo de inmediato, deja a la pila sin cambiar.la pila sin cambiar.

6) Empujar un elemento en la pila y en seguida solicitar el elemento 6) Empujar un elemento en la pila y en seguida solicitar el elemento tope, regresa el elemento que se acaba de empujar en la pila.tope, regresa el elemento que se acaba de empujar en la pila.

Page 19: Notaciones Relacionales

Axiomas AlgebraicosAxiomas Algebraicos

Si las características funcionales deseadas de Si las características funcionales deseadas de un sistema de programación están integra y un sistema de programación están integra y consistentemente especificadas, y la consistentemente especificadas, y la instrumentación satisface específicamente, no instrumentación satisface específicamente, no hay necesidad para pruebas o verificaciones hay necesidad para pruebas o verificaciones del código fuente, excepto para verificar del código fuente, excepto para verificar rendimiento, y para verificar que el código no rendimiento, y para verificar que el código no produce efectos colaterales no deseados.produce efectos colaterales no deseados.

Page 20: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

Se pueden emplear para especificar la estructura Se pueden emplear para especificar la estructura sintáctica de cadenas de símbolos.sintáctica de cadenas de símbolos.

Debido a la forma como muchos productos de Debido a la forma como muchos productos de programación comprenden al procesamiento de programación comprenden al procesamiento de cadenas de símbolos, las expresiones regulares cadenas de símbolos, las expresiones regulares proporcionan una notación poderosa y empleada de proporcionan una notación poderosa y empleada de manera amplia en la ingeniería de programación.manera amplia en la ingeniería de programación.

Cada conjunto de cadenas de símbolos especificado Cada conjunto de cadenas de símbolos especificado por una expresión regular define un lenguaje formal. por una expresión regular define un lenguaje formal. Las expresiones regulares se pueden ver entonces Las expresiones regulares se pueden ver entonces como generadores de lenguajes.como generadores de lenguajes.

Page 21: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

Reglas para formar expresiones regulares:Reglas para formar expresiones regulares:

1) Átomos: los símbolos básicos en el alfabeto de interés forman 1) Átomos: los símbolos básicos en el alfabeto de interés forman expresiones regulares.expresiones regulares.

2) Diferencia: si R1 y R2 son expresiones regulares, entonces (R1/R2) 2) Diferencia: si R1 y R2 son expresiones regulares, entonces (R1/R2) es una expresión regular y representa la elección de R1 ó R2.es una expresión regular y representa la elección de R1 ó R2.

3) Concatenación: si R1 y R2 son expresiones regulares, entonces (R1 3) Concatenación: si R1 y R2 son expresiones regulares, entonces (R1 R2) es una expresión regular y representa la concatenación de ambas, R2) es una expresión regular y representa la concatenación de ambas, es decir, R1R2.es decir, R1R2.

4) Cierre o cláusula de R1: si R1 es una expresión regular, entonces 4) Cierre o cláusula de R1: si R1 es una expresión regular, entonces (R1)* es una expresión regular y representa el conjunto de cadenas (R1)* es una expresión regular y representa el conjunto de cadenas formadas por la concatenación de cero o más cadenas de R1 con cero formadas por la concatenación de cero o más cadenas de R1 con cero o más cadenas de R1.o más cadenas de R1.

Page 22: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

5) Unión: si R1 y R2 son expresiones regulares, entonces (R1 5) Unión: si R1 y R2 son expresiones regulares, entonces (R1 U R2) es una expresión regular y representa la unión de U R2) es una expresión regular y representa la unión de ambas.ambas.

6) Cierre o cláusula positiva de R1: si R1 es una expresión 6) Cierre o cláusula positiva de R1: si R1 es una expresión regular, entonces (R1)+ es una expresión regular y representa regular, entonces (R1)+ es una expresión regular y representa el conjunto de cadenas formadas por la concatenación de una el conjunto de cadenas formadas por la concatenación de una o más cadenas de R1 con una o más cadenas de R1.o más cadenas de R1 con una o más cadenas de R1.

7) ε: es una expresión regular que representa la cadena vacía.7) ε: es una expresión regular que representa la cadena vacía.

8)Integridad: ninguna mas es una expresión regular.8)Integridad: ninguna mas es una expresión regular.

Page 23: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

Ejemplo.-Ejemplo.-

1) ab = {ab}1) ab = {ab}

2) abUc = {ab, c}2) abUc = {ab, c}

3) (abUc)(dUef) = {ab, c}{d, ef} = {abd, abef, cd, cef}3) (abUc)(dUef) = {ab, c}{d, ef} = {abd, abef, cd, cef}

4) c* = {4) c* = {, c, cc, ccc, ...}, c, cc, ccc, ...}

5) (ab)* = {5) (ab)* = {, ab, abab, ababab, ...}, ab, abab, ababab, ...}

Page 24: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

6) (abUc)* = {ab, c}* = {6) (abUc)* = {ab, c}* = {, ab, c, abab, ababab, ..., abc, , ab, c, abab, ababab, ..., abc, cab, cc, ccc, ..., abcc, abccc, ..., ababc, abababc, ..., cab, cc, ccc, ..., abcc, abccc, ..., ababc, abababc, ..., ababcc, ..., ccab, ..., cabab, ..., ccabab, ...}ababcc, ..., ccab, ..., cabab, ..., ccabab, ...}

7) ab* = {a, ab, abb, ...}7) ab* = {a, ab, abb, ...}

8) (a?b*)c+ = {c, cc, ..., ac, acc, ..., bc, bcc, ..., bbc, …, 8) (a?b*)c+ = {c, cc, ..., ac, acc, ..., bc, bcc, ..., bbc, …, abc, abbc, abbcc, abbbccc, …}abc, abbc, abbcc, abbbccc, …}

9) (a/b)c = {ac}/{bc}9) (a/b)c = {ac}/{bc}

Page 25: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

Ejemplo.-Ejemplo.-

10) Ejemplo de expresiones regulares para una calculadora:10) Ejemplo de expresiones regulares para una calculadora:

<signo> <signo> +/-+/- <digito> <digito> 0/1/2/…/90/1/2/…/9 <natural> <natural> <digito>/<digito><natural><digito>/<digito><natural> <entero> <entero> <natural>/<signo><natural><natural>/<signo><natural> <real> <real> <entero>/<entero>./<entero>.<natural>/<entero>/<entero>./<entero>.<natural>/

/<entero>.<natural>E<entero>/<entero>.<natural>E<entero>

Page 26: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares

A las expresiones regulares se les pueden dar muchas diferentesA las expresiones regulares se les pueden dar muchas diferentesinterpretaciones, y son entonces útiles en distintas situaciones:interpretaciones, y son entonces útiles en distintas situaciones:

Un conjunto de datos, si a, b y c son símbolos de datos de Un conjunto de datos, si a, b y c son símbolos de datos de entrada.entrada.

Transmisión de mensajes, a, b y c se pueden interpretar como de Transmisión de mensajes, a, b y c se pueden interpretar como de tipo de mensaje tales como la solicitud o liberación de un recurso, tipo de mensaje tales como la solicitud o liberación de un recurso, solicitud de inicio de un trabajo o fin de archivo.solicitud de inicio de un trabajo o fin de archivo.

Secuencia de operaciones, si a, b y c representan Secuencia de operaciones, si a, b y c representan procedimientos.procedimientos.

Flujo de recursos. Los símbolos a, b y c pueden denotar Flujo de recursos. Los símbolos a, b y c pueden denotar componentes de un sistema tales como un proceso o un usuario.componentes de un sistema tales como un proceso o un usuario.

Page 27: Notaciones Relacionales

Expresiones RegularesExpresiones Regulares La notación de expresiones regulares se puede extender para La notación de expresiones regulares se puede extender para

permitir el modelado de concurrencia. El efecto de la ejecución permitir el modelado de concurrencia. El efecto de la ejecución concurrente de dos componentes de programación P1 y P2 es el concurrente de dos componentes de programación P1 y P2 es el mismo.mismo.

El intercambio de las expresiones regulares para P1 y P2 se puede El intercambio de las expresiones regulares para P1 y P2 se puede especificar si se utiliza una operación conocida como el ‘‘operador de especificar si se utiliza una operación conocida como el ‘‘operador de barajeo’’. Las expresiones resultantes se llaman expresiones de barajeo’’. Las expresiones resultantes se llaman expresiones de transferencia de mensajes, expresiones de flujo, y expresiones de transferencia de mensajes, expresiones de flujo, y expresiones de eventos.eventos.

Las expresiones de trayectoria son otra notación útil basada en Las expresiones de trayectoria son otra notación útil basada en expresiones regulares. Se pueden usar para especificar la secuencia expresiones regulares. Se pueden usar para especificar la secuencia de operaciones en sistemas concurrentes.de operaciones en sistemas concurrentes.

Otra importante aplicación de expresiones regulares es en la Otra importante aplicación de expresiones regulares es en la definición de dialogos de interface con el usuario.definición de dialogos de interface con el usuario.

Page 28: Notaciones Relacionales

PROBLEMA PROBLEMA

Existe poca formalidad en el desarrollo de Existe poca formalidad en el desarrollo de productos de programación.productos de programación.

Las notaciones formales no son apropiadas en Las notaciones formales no son apropiadas en todas las situaciones ni para todo tipo de todas las situaciones ni para todo tipo de sistemas.sistemas.

En el caso de las ecuaciones implícitas, ocurre En el caso de las ecuaciones implícitas, ocurre que no todos los problemas especificados de que no todos los problemas especificados de manera implícita tienen una solución manera implícita tienen una solución garantizada.garantizada.

Page 29: Notaciones Relacionales

PROBLEMAPROBLEMA

Ejemplo.-Ejemplo.-

Una variante del ultimo problema de Fermat se puede establecer comoUna variante del ultimo problema de Fermat se puede establecer como

(N > 2) [X**N + Y**N = Z**N](N > 2) [X**N + Y**N = Z**N]

Esta ecuación implica encontrar valores de X, Y y Z tales que la ecuación Esta ecuación implica encontrar valores de X, Y y Z tales que la ecuación se satisface para los valores arbitrarios de N.se satisface para los valores arbitrarios de N.

No se han descubierto soluciones a este problema para valores de N No se han descubierto soluciones a este problema para valores de N mayores que 3.mayores que 3.

En el caso de las relaciones recurrentes, se transforman con facilidad en En el caso de las relaciones recurrentes, se transforman con facilidad en programas recursivos; sin embargo, no es forzoso que toda programas recursivos; sin embargo, no es forzoso que toda especificación recursiva se deba instrumentar como un programa especificación recursiva se deba instrumentar como un programa recursivo.recursivo.

Page 30: Notaciones Relacionales

CONCLUSIONESCONCLUSIONES

Las herramientas formales como las notaciones Las herramientas formales como las notaciones relacionales son precisas y exactas a la hora de relacionales son precisas y exactas a la hora de realizar o comprobar un sistema software y resuelven realizar o comprobar un sistema software y resuelven de forma automática su codificación. Sin embargo de forma automática su codificación. Sin embargo resultan mas complicadas a la hora de conocer y resultan mas complicadas a la hora de conocer y comprender su contenido y lo que representan, que si comprender su contenido y lo que representan, que si realizásemos un diagrama u otra herramienta de tipo realizásemos un diagrama u otra herramienta de tipo grafica que resultan sencillas de ver y entender mas grafica que resultan sencillas de ver y entender mas rápidamente, de ahí que sean mas comúnmente rápidamente, de ahí que sean mas comúnmente usadas las herramientas semi-formales para modelar usadas las herramientas semi-formales para modelar un sistema, que aun teniendo una sintaxis formal, su un sistema, que aun teniendo una sintaxis formal, su semántica se especifica de manera visual.semántica se especifica de manera visual.

Page 31: Notaciones Relacionales

REFERENCIAS REFERENCIAS INGENIERIA DEL SOFTWARE, Ingeniería Técnica de Sistemas INGENIERIA DEL SOFTWARE, Ingeniería Técnica de Sistemas

(Segundo Curso - B).(Segundo Curso - B).Autores:Autores: Sergio D., Zoraida C., Nuria M. Sergio D., Zoraida C., Nuria M.

INGENIERIA DEL SOFTWARE, (Mc Graw Hill).INGENIERIA DEL SOFTWARE, (Mc Graw Hill).Autores:Autores: Richard Fairley. Richard Fairley.

http://es.wikipedia.org/wiki/Ecuaci%C3%B3n_recurrentehttp://es.wikipedia.org/wiki/Ecuaci%C3%B3n_recurrente

http://mate.cucei.udg.mx/matdis/3rec/3rel2.htmhttp://mate.cucei.udg.mx/matdis/3rec/3rel2.htm

http://es.wikipedia.org/wiki/Recurrenciahttp://es.wikipedia.org/wiki/Recurrencia

http://es.wikipedia.org/wiki/Axiomahttp://es.wikipedia.org/wiki/Axioma

http://es.wikipedia.org/wiki/Expresi%C3%B3n_regularhttp://es.wikipedia.org/wiki/Expresi%C3%B3n_regular