los modelos estructurados dcu vs....

8
Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía. 1 Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012. Mg. María Mercedes Vitturini [[email protected]] Dpto. Cs. e Ingeniería de la Computación Universidad Nacional del Sur Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional – Descripción Estructurada de Procesos Modelos Orientados a Objetos Especificación Vista del Usuario y Funcional Vista Estructural AyDS2012 - Clase 14- MMV 2 DICCIONARIO DE DATOS (DD) 1ro • Diagrama de Conceptos de Negocio 2do • Diagrama de Clases • Diagrama de Objetos 1ro • Diagrama de Casos de Uso de alto nivel 2do • Diagrama de Casos de Uso detallado. 3ro • Descripción de Casos de Uso Los Modelos Estructurados Especificación Vista Funcional Vista Estructural AyDS2012 - Clase 14- MMV 3 DICCIONARIO DE DATOS (DD) 1ro • Diagrama Entidad Relación 2do • Modelo Relacional 3ro • Normalización 1ro • Diagrama de Contexto 2do • Diagrama de Flujo de Datos completo 3ro • Descripción estructurada de procesos DCU vs. DFD Metodología OO La herramienta gráfica más difundida es el DCU Características: Permite definir el alcance del sistema. Muestra cómo los “actores” interactúan con el sistema a través de los casos de uso. Los CU evolucionan con la vida del proyecto: “desarrollo guiado por los CU´sMetodología Estructurada La herramienta gráfica es el DFD. Características: Permite definir el alcance del sistema. Identifica “entidades externas” y cómo interactúan con el sistema a través de ingresar o consumir los flujos de entrada/salida. El nivel del DFD determina el nivel de detalle. AyDS2012 - Clase 14- MMV 4 Especificación funcional El DCU y el DFD ofrecen una representación gráfica para los servicios que el sistema ofrece. Sin embargo, cómo especificación ambos diagramas no resultan suficientes. Es necesario también especificar sin ambigüedad los trozos de funcionalidad del sistema. Esta descripción se puede realizar con distintas Técnicas de especificación funcional 5 AyDS2012 - Clase 14- MMV ¿Qué se especifica? Del Modelo de Casos de Uso Los Casos de Uso. La metodología sugiere especificar sólo aquellos cuya complejidad lo justifica Debe ser: • Clara • Concisa • Completa Usar especificaciones lógicas Del Diagrama de Flujo de Datos Aquellos procesos del DFD que corresponden con procesos primitivos. No debe ser: • Confusa • Ambigua • Narrada AyDS2012 - Clase 14- MMV 6 Características para una especificación correcta:

Upload: others

Post on 18-Aug-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

1

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

Mg. María Mercedes Vitturini [[email protected]]

Dpto. Cs. e Ingeniería de la Computación

Universidad Nacional del Sur

Primer cuatrimestre 2012

ANÁLISIS Y DISEÑO DE SISTEMAS

Clase 14: Modelado Funcional – Descripción Estructurada de Procesos

Modelos Orientados a Objetos

Especificación

Vista del Usuario y Funcional

Vista Estructural

AyDS2012 - Clase 14- MMV 2

DICCIONARIO

DE DATOS

(DD)

1ro • Diagrama de Conceptos

de Negocio

2do

• Diagrama de Clases

• Diagrama de Objetos

1ro • Diagrama de Casos de Uso de alto nivel

2do • Diagrama de Casos de Uso detallado.

3ro • Descripción de Casos de Uso

Los Modelos Estructurados

Especificación

Vista Funcional

Vista Estructural

AyDS2012 - Clase 14- MMV 3

DICCIONARIO

DE DATOS

(DD)

1ro • Diagrama Entidad Relación

2do • Modelo Relacional

3ro • Normalización

1ro • Diagrama de Contexto

2do • Diagrama de Flujo de Datos completo

3ro • Descripción estructurada de procesos

DCU vs. DFD

Metodología OO

• La herramienta gráfica más difundida es el DCU

• Características: – Permite definir el alcance del

sistema.

– Muestra cómo los “actores” interactúan con el sistema a través de los casos de uso.

– Los CU evolucionan con la vida del proyecto: “desarrollo guiado por los CU´s”

Metodología Estructurada

• La herramienta gráfica es el DFD.

• Características: – Permite definir el alcance del

sistema.

– Identifica “entidades externas” y cómo interactúan con el sistema a través de ingresar o consumir los flujos de entrada/salida.

– El nivel del DFD determina el nivel de detalle.

AyDS2012 - Clase 14- MMV 4

Especificación funcional

• El DCU y el DFD ofrecen una representación

gráfica para los servicios que el sistema ofrece.

• Sin embargo, cómo especificación ambos

diagramas no resultan suficientes.

• Es necesario también especificar sin

ambigüedad los trozos de funcionalidad del

sistema.

• Esta descripción se puede realizar con distintas

Técnicas de especificación funcional

5 AyDS2012 - Clase 14- MMV

¿Qué se especifica?

Del Modelo de Casos de Uso

• Los Casos de Uso. La metodología sugiere especificar sólo aquellos cuya complejidad lo justifica

• Debe ser: • Clara

• Concisa

• Completa

• Usar especificaciones lógicas

Del Diagrama de Flujo de Datos

• Aquellos procesos del DFD que corresponden con procesos primitivos.

• No debe ser: • Confusa

• Ambigua

• Narrada

AyDS2012 - Clase 14- MMV 6

Características para una especificación correcta:

Page 2: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

2

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

AyDS2012 - Clase 14- MMV

Técnicas de Especificación

• Para producir la descripción se pueden usar

distintas herramientas:

– Idioma estructurado (IE).

– Tablas de decisión.

– Condiciones Pre-Post.

– Otras.

• Diagramas de Actividades.

• Diagramas de Secuencia.

• Diagramas de Colaboración

7

Tipos de Procesos

• Típicamente, en un sistema de información

tradicional se encuentran los siguientes grupos de

funcionalidad:

– Para actualizar las entidades, diccionarios o

maestros del sistema (ABM).

– Para registrar información referente a las

actividades o eventos del sistema.

– Para generar las salidas del sistema (informes o

consultas).

– Para producir otros procesos de transformación o

cálculo.

– Otras. AyDS2012 - Clase 14- MMV 8

AyDS2012 - Clase 14- MMV

Especificación funcional • El especificador es libre de usar la herramienta de

especificación que desee. Se deben pesar:

– Las preferencias del usuario.

– Sus propias preferencias.

– La adaptabilidad de la herramienta para lo que se

desea especificar.

• No es necesario usar la misma herramienta para

todas las descripciones.

• Se pueden usar herramientas combinadas.

9

Es importante definir estándares para que la especificación resulte más fácil de

entender y mantener. AyDS2012 - Clase 14- MMV

Idioma Estructurado (IE) Idioma Estructurado – usa una mezcla de tips de

lenguajes:

– toma el vocabulario nativo (lenguaje natural),

– sobre la sintaxis del otro (constructores de lenguajes

de programación)

• En la descripción evitar:

– Adjetivos y adverbios.

– Oraciones compuestas.

– Modos verbales.

– Anotaciones fuera de línea.

10

IE – Buenas prácticas

• Usar verbos simples y claros sobre la acción que

realizan

– Ejemplos: Leer, validar, crear, guardar, etc.

• Usar los términos definidos en el Diccionario de

Datos

– Ejemplos: novedades_préstamos, libro.ISBN,

Libro

• Definir patrones de descripción.

– Ejemplos: es común la definición de estándares

para describir los procesos de actualizar.

AyDS2012 - Clase 14- MMV 11

Idioma Estructurado y DCU

• La descripción de casos de uso en lenguaje

natural debe describir la tarea que realiza el caso

de uso como una secuencia de eventos.

• La descripción incluye las sentencias asociadas al

camino básico y las sentencias asociadas a los

distintos caminos alternativos.

• Las sentencias típicas usadas en la descripción

son de la forma:

objeto que realiza la acción +

acción realizada +

elementos de datos involucrados 12 AyDS2012 - Clase 14- MMV

Page 3: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

3

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

Ejemplo Caso de Uso: ACTUALIZAR SOCIO

Parámetros de Entrada: Novedades_Socios

Descripción: funcionalidad para administrar socios (ABM Socios)

Clases / Asociaciones: Socio

Curso Básico:

1. El Empleado selecciona la opción “Actualizar Socio”

2. El sistema solicita [dni| nro_socio]

3. El Empleado ingresa [dni| nro_socio]

4. El sistema controla si existe el socio[C1.R7| C1.R8]

5. El Empleado ingresa los datos s/Novedades_Socios

6. El Empleado confirma la operación

7. El sistema valida datos de Novedades_Socios s/DD.

8. El sistema crea una nueva instancia de Socio s/Novedades_Socios.

9. El sistema almacena la información.

10. Finalizar

Caminos Alternativos:

4.1. El socio existe [C1.R7| C1.R8] y es una alta

4.1.1 Informar error.

4.1.2 Ir a 10.

4.2. El socio existe [C1.R7| C1.R8] y es una modificación

4.2.1. El sistema muestra los datos de socio

4.2.2. ir a 5

4.3. El socio existe [C1.R7| C1.R8] y es una baja

4.3.1. El sistema muestra los datos de socio.

4.3.2. El sistema controla que no existan préstamos para el socio.

4.3.3. El sistema solicita confirmación.

4.3.4. El empleado confirma la operación.

4.3.2. El socio tiene préstamos asociados.

4.3.2.1 Informar error.

4.3.2.2 Ir a 10.

6.1. El empleado cancela.

6.1.1 Ir a 10.

7.1. No validan los datos Novedades_Socios [C1.R*]

7.1.1 Informar error.

7.1.2 Ir a 5.

Fecha: 18/04/2008

Autor: Mercedes Vitturini 13

Empleado

Actualizar_Socios

AyDS2012 - Clase 14- MMV

Repaso del DD – Clase Socio NOMBRE: SOCIO - CÓDIGO: C3 - TIPO: Entidad

Atributo Tipo Reglas de Validación

nro_socio Numero entero R1:= no nulo. R2: = > 0

dni Número entero R3:= no nulo. R 4:= > 0 y <=99.999.999

apellido Cadena R5:= no nulo.

nombre Cadena R6 := no nulo.

domicilio Tipo_domicilio

sexo Carácter R7 := [‘M’ | ‘F’]

Restricciones sobre la clase: R7 := el dni es único (no existen dos objetos con el mismo valor para dni). R8 := el nro_socio es único.

AyDS2012 - Clase 14- MMV 14

SOCIO

+nro_socio

+dni

+nombre

+apellido

+domicilio: tipo_domicilio

+sexo

Ejemplo – Novedades_Socios

NOMBRE: NOVEDADES_SOCIOS TIPO: INPUT

Componente Tipo Reglas de Validación

nro_socio Like SOCIO.nro_socio Like SOCIO.nro_socio

dni Like SOCIO.dni Like SOCIO.dni

nombre Like SOCIO.nombre Like SOCIO.nombre

apellido Like SOCIO.apellido Like SOCIO.apellido

domicilio Like SOCIO.domicilio Like SOCIO.domicilio

sexo Like SOCIO.sexo Like SOCIO.sexo

AyDS2012 - Clase 14- MMV 15

SOCIO

+nro_socio

+dni

+nombre

+apellido

+domicilio: tipo_domicilio

+sexo

Idioma Estructurado y DFD

• El IE también es una técnica de especificación

que se aplica a los DFD, bajo el nombre

Descripción Estructurada de Procesos o

DEP’s

• Los procesos del DFD que requieren descripción

son los procesos primitivos.

• Además de las buenas prácticas para idioma

estructurado, se espera que la DEP asociada a

un proceso primitivo refleje:

– cuáles son los flujos de entrada que recibe el proceso,

– cómo dichos flujos se transforman,

– las salida/s que se generan. 16 AyDS2012 - Clase 14- MMV

AyDS2012 - Clase 14- MMV

Leer Novedades_Socio.

Validar Novedades_Socio según D.D.

SI validaciones correctas ENTONCES

Buscar Nro_Socio en SOCIOS

EN CASO

CASO Alta

SI no existe Nro_Socio en SOCIOS ENTONCES

Agregar a SOCIOS s/Novedades_Socio

SINO

Informar Error: Ya existe el socio

FINSI

CASO Baja

SI existe Nro_Socio en SOCIOS ENTONCES

Borrar Nro_Socio de SOCIOS

SINO

Informar Error: No existe el socio

FINSI

CASO Modificación

SI existe Nro_Socio en SOCIOS ENTONCES

Actualizar Nro_Socio en SOCIOS s/Novedades_Clientes

SINO

Informar Error: no existe socio

FINSI

FINCASO

SINO

Informar Error: Problemas con los datos de entrada

FINSI

Actualizar

Socios 1.1

SOCIOS

17 AyDS2012 - Clase 14- MMV

IE – Visión Crítica Ventajas

– En general resulta claro de entender.

– Puede manejarse con procesadores de texto.

– Es rápido de hacer.

Desventajas

– No es formal.

– Es difícil determinar el grado de detalle.

– Es necesario fijar criterios.

18

Page 4: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

4

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

AyDS2012 - Clase 14- MMV

Tablas de Decisión (TD)

• Las Tablas de Decisión son útiles

cuando la lógica de la funcionalidad

está basada en múltiples condiciones.

19

Controlar Correlativas

3

Ejemplo:

“El control de las condiciones de correlativas que autoriza las inscripciones a cursado de materias de la Licenciatura en Ciencias de la Computación responde al siguiente esquema: si la materia de la inscripción se corresponde con una materia que es de primero, segundo o tercer año del plan de estudio, controlar únicamente las correlativas, considerando correlativas fuertes o débiles tal como lo indica el plan. Si la materia es de un año superior, además de las correlativas que indique el plan, deberá controlarse que el alumno cuente con la “Prueba de Suficiencia de Idioma Inglés” aprobada. Cualquiera de los casos anteriores que no se cumpla, la inscripción queda pendiente. Existe el caso especial de las materias que son optativas, las que además de las correlativas fuertes y débiles propias, para autorizar la inscripción a un alumno, éste debe contar con 16 materias del plan aprobadas o 18 materias cursadas. En cualquier caso si el alumno tiene la materia aprobada la inscripción a cursado queda pendiente”

inscripciones

Características

• Características del proceso «controlar

correlativas»:

– No tiene interacciones.

– La descripción es semejante a «un algoritmo»

– Está conducido por múltiples condiciones:

• El año del plan de estudio,

• Si es obligatorio u optativa,

• Si el alumno la tiene o no aprobada

previamente,

• Etc.

AyDS2012 - Clase 14- MMV 20

Controlar Correlativas

3

inscripciones

Tablas de Decisión

ORGANIZACIÓN – la TD define una matriz:

• Sobre la izquierda en la parte superior se ubican las condiciones, que constituyen el estado del sistema.

• Sobre la izquierda y por la parte inferior se ubican las acciones a realizar cuando se cumplen una o más condiciones.

• El panel derecho contiene las reglas que gobiernan las acciones en función de las condiciones

AyDS2012 - Clase 14- MMV 21

Condiciones

Acciones

Reglas

AyDS2012 - Clase 14- MMV

Tablas de Decisión

Condición 1 V V V F F

Condición 2 V V F V F

Condición 3 V F - - -

Acción 1 1 3 1 1

Acción 2 1 2 2

Acción 3 2 2 3

Acción 4 1 4

Matriz de

Condición

Matriz de

Acción

Reglas

Regla pura Regla mixta

Binaria: 2n

reglas

22

AyDS2012 - Clase 14- MMV

Lectura de una TD Condiciones

• En una tabla binaria, cada condición se evalúa con: – “S” o condición verdadera.

– “N” o condición falsa.

– ”---” o no interesa su valor (no se evalúa).

Acciones

• Las acciones se marcan las acciones que se ejecutan

para la combinación de condiciones de la regla: – con “X” o con un número (indica que la acción se

ejecuta).

– Si tiene número, indica el orden de ejecución de las

acciones.

23

• Las tablas pueden ser:

– Binarias: los valores de cada condición son verdadero o falso.

• Condición: Casado Verdadero, Falso

– Extendidas: cada decisión tiene múltiples valores posibles.

• Condición: Estado Civil Soltero, Casado, Viudo,...

Tablas de Decisión

AyDS2012 - Clase 14- MMV 24

Page 5: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

5

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

AyDS2012 - Clase 14- MMV

Matriz de Condiciones • En la sección de condiciones se define la lista de

condiciones

• La lista de condiciones de un problema debe ser

excluyente.

– En el ejemplo las condiciones son excluyentes:

• Aprobé el Proyecto de Cursado.

• Aprobé ambos parciales.

• Desaprobé alguno de los parciales con calificación «D».

• etc.

• En el ejemplo NO debería coexistir las condiciones:

– Desaprobé el proyecto de cursado

– Aprobé el proyecto de cursado.

25 AyDS2012 - Clase 14- MMV

Matriz de Acciones

• En la sección reservada para acciones se presenta la lista con las diferentes “órdenes” a seguir.

• En el ejemplo de control de correlativas acciones posibles son:

– Registrar la condición de cursado como aceptada.

– Registrar la condición de cursado como pendiente, adeuda correlativa.

– Registrar la condición de cursado como pendiente, requiere n materias aprobadas.

– Registrar la condición de cursado como pendiente, requiere suficiencia de idioma aprobada.

26

AyDS2012 - Clase 14- MMV

Reglas

• En la sección de reglas, para cada una de las

combinaciones de condiciones se establece la/s

acciones a tomar, de modo que refleje el

comportamiento correcto que se está

modelando.

– Para una combinación de condiciones pueden

darse más de una acción a realizar.

– Si fuera necesario se puede indicar un orden en

las acciones a ejecutar por un número.

27 AyDS2012 - Clase 14- MMV

Tipos de Reglas

r5

Aprobó Trabajo S

Aprobó Primer Parcial N

Aprobó Primer Recuperatorio S

Aprobó Segundo Parcial N

Aprobó Segundo Recuperatorio S

Cursar la Materia X

Perder el Cursado de la Materia

r1

Aprobó Trabajo S

Aprobó Primer Parcial S

Aprobó Primer Recuperatorio ***

Aprobó Segundo Parcial S

Aprobó Segundo Recuperatorio ***

Cursar la Materia X

Perder el Cursado de la Materia

Regla Pura: representa a

una única regla.

Regla Mixta: representan 2 o

más reglas puras.

28

AyDS2012 - Clase 14- MMV

Ejemplo, reglas mixtas

r1

Aprobó Trabajo S

Aprobó Primer Parcial S

Aprobó Primer Recuperatorio ***

Aprobó Segundo Parcial S

Aprobó Segundo Recuperatorio ***

Cursar la Materia X

Perder el Cursado de la Materia

• Representa a las siguiente cuatro reglas:

S S S S

S S S S

S S N N

S S S S

S N S N

29 AyDS2012 - Clase 14- MMV

IMPORTANTE

• Dadas n condiciones binarias, la tabla está

completa si se encontraron las 2n reglas.

• Además, al armar las reglas de una TD se debe

tener especial cuidado en no introducir

redundancias, ni inconsistencias.

– Las redundancias pueden dejar otras reglas

afuera.

– Las inconsistencias evidencian problemas en el

entendimiento de la transformación.

30

Page 6: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

6

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

AyDS2012 - Clase 14- MMV

Ejercicio

• Se desea especificar usando tablas de decisión las

condiciones de cursado del primer cuatrimestre de

2012 para la materia AyDS, sabemos que:

– Existen dos parciales y un recuperatorio final, un

proyecto final de cursado y laboratorios con asistencia

obligatoria.

– Para cursar la materia se necesitan: aprobar los dos

parciales o el recuperatorio final y el proyecto de

cursado.

– Para acceder a la promoción se requieren no haber

desaprobado los parciales con “D” y tener asistencia a

los laboratorios obligatorios.

31 AyDS2012 - Clase 14- MMV

Ejemplo – Tabla de Decisión

32

Aprobé el Proyecto de cursado

S S S S S S N

Aprobé los parciales S S N N N N --

Aprobé el recuperatorio

-- -- S S S N --

Asistí a los laboratorios obligatorios

S N -- S S -- --

Despaprobé alguno de los parciales con “D”

-- -- S N S -- --

Curso AyDS X X X X X

No curso AyDS X x

Accedo a la promoción X X

AYDS: Condiciones p/cursar y promocionar – 1er. Cuatrimestre 2012

AyDS2012 - Clase 14- MMV

Ejemplo: Reglas Redundantes

c1 S S

c2 *** N

c3 *** S

a1 X X

a2 X X

Reglas Redundantes

33 AyDS2012 - Clase 14- MMV

Ejemplo: Reglas Contradictorias

c1 S S

c2 *** N

c3 *** S

a1 X

a2 X X

Reglas Contradictorias

34

AyDS2012 - Clase 14- MMV

TD - Balanceo

• Podemos asegurar que una tabla de decisión con

condiciones binarias (S, N o --) esta completa o

balanceada si:

– Tiene 2n reglas.

– No hay reglas redundantes.

– No hay reglas inconsistentes.

– Se agrego una columna con la leyenda “Otras” y

una fila con la acción “Investigar Error”.

• Esto es, finalmente, la TD está balanceada si

tiene 2n + 1 reglas.

35 AyDS2012 - Clase 14- MMV

Tablas de Decisión

Guía para su construcción:

• Identificar todas las condiciones o situaciones variables de la especificación.

– Verificar que no incluyeron condiciones múltiples o no excluyentes.

• Identificar cada una de las posibles acciones.

• Construir la tabla, incorporando las condiciones y las acciones.

• Definir las reglas.

• Analizar las omisiones, contradicciones o redundancias.

• Agregar la columna “otras” – “Investigar error”

36

Page 7: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

7

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

AyDS2012 - Clase 14- MMV

Ejemplo: Registrar_Préstamo_Libro

Si Novedades_Préstamos correcta s/DD S S S S N O

Si nro_socio existe en SOCIO S S S N --- T

Si lSBN existe en LIBRO S S N --- --- R

Si en LIBRO.estado = 'Disponible' S N --- --- -- A

Crear nuevo Préstamo 1

Asociar Préstamo con SOCIO.nro_número 2

Asociar Préstamo con LIBRO.ISBN 3

Cambiar LIBRO.estado = ‘Prestado’ 4

Rechazar préstamo. Informar situación 1 1 1 1

Investigar Error 1

37 AyDS2012 - Clase 14- MMV

Ejercicio • Hacer la tabla de decisión para el proceso de control de correlativas

de inscripciones a cursado para la Licenciatura en Ciencias de la Computación según el enunciado que se detalla:

• “El control de las condiciones de correlativas para autorizar las inscripciones a cursado de materias de la Licenciatura en Ciencias de la Computación responde al siguiente esquema: si la materia que se está controlando corresponde con una materia que es de primero, segundo o tercer año del plan de estudio, controlar únicamente las correlativas, considerando correlativas fuertes o débiles tal como lo indica el plan. Si la materia es de un año superior, además de las correlativas que indique el plan, deberá controlarse que el alumno cuente con la “Prueba de Suficiencia de Idioma Inglés” aprobada, caso contrario no estará en condiciones de cursar la materia. Existe también el caso especial de las materias que son optativas, las que además de las correlativas fuertes y débiles propias, para autorizar el cursado a un alumno, éste debe contar con 16 materias del plan aprobadas o 18 materias cursadas”.

38

AyDS2012 - Clase 14- MMV 39

Pre-Condiciones • Las pre-condiciones describen las cosas (si

existen) que deben ser ciertas antes de que el

proceso pueda comenzar a ejecutarse. Es una

garantía que se asegura.

• Ejemplos:

– El actor está registrado en el sistema.

– El actor está autorizado a realizar la operación.

– Es el tiempo correcto para realizar la operación (ya se

ejecutaron procesos anteriores).

AyDS2012 - Clase 14- MMV 40

Post-Condiciones • Las post-condiciones describen las cosas que

deben darse cuando el proceso finalice. Es una

garantía que el proceso debe asegurar.

• Ejemplo de post-condiciones:

– Las salidas que genera el proceso se pueden imprimir o

guardar.

– El sistema guarda pistas de auditoria de las

operaciones realizadas.

– El usuario queda registrado.

AyDS2012 - Clase 14- MMV 41

Ejemplos

• Pre-condiciones

– CU: Registrar Venta

• Pre: el cajero se identificó en el sistema.

– CU: Controlar Temperatura Motor

• Pre: el sistema tiene definidos los valores normales de

temperatura.

• Post-condiciones

– CU: Registrar Venta

• Post: queda registro de auditoria sobre el cajero, terminal y

hora.

– CU: Controlar Temperatura Motor

• Post: queda registro de los días y horarios que el sistema salió

de los valores normales.

Condiciones Pre-Post y DFD

• El estilo de especificación con Condiciones Pre-

Post también se aplica como DEP para

procesos primitivos.

• En este caso, se acepta hacer la descripción

completa de un proceso con unos o más pares

de condiciones pre-post.

42 AyDS2012 - Clase 14- MMV

Page 8: Los Modelos Estructurados DCU vs. DFDcs.uns.edu.ar/~td/ayds2012/downloads/Clases/ADS_14_2012...Primer cuatrimestre 2012 ANÁLISIS Y DISEÑO DE SISTEMAS Clase 14: Modelado Funcional

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.

8

Universidad Nacional del Sur – Departamento de Ciencias e Ingeniería de la Computación Análisis y Diseño de Sistemas – 1er.Cuatrimestre de 2012.

• Precondición1:

– Si Alta y (Novedades_clientes correctas s/DD) y (

Cliente_ID en CLIENTES)

• Postcondición1:

– Cliente_ID es incorporado a CLIENTES s/

Novedades_Clientes

• Precondición2:

– Si Alta y (Novedades_clientes correctas s/DD) y (

Cliente_ID en CLIENTES)

• Postcondición2:

– Error informado: “Existe el cliente”

AyDS2012 - Clase 14- MMV 43

Pre-Post: Actualizar_Clientes

AyDS2012 - Clase 14- MMV 44

... Continua ... • Precondición3:

– Si Baja y (Novedades_clientes correctas s/DD) y ( Cliente_ID en CLIENTES)

• Postcondición3:

– Cliente_ID eliminando de CLIENTES

• Precondición4:

– Si Baja y y (Novedades_clientes correctas s/DD) y ( Cliente_ID en CLIENTES)

• Postcondición4:

– Error informado: No existe el cliente

AyDS2012 - Clase 14- MMV 45

... Continua ... • Precondición5:

– Si Modificación y (Novedades_clientes correctas s/DD) y ( Cliente_ID en CLIENTES)

• Postcondición5:

– Cliente_ID actualizado en CLIENTES s/Novedades_Clientes

• Precondición6:

– Si Modificación y (Novedades_clientes correctas s/DD) y ( Cliente_ID en CLIENTES)

• Postcondición6:

– Error informado: No existe Cliente

... Continua ...

• Precondición7:

– Si Novedades_clientes no son correctas s/DD

• Postcondición7:

– Error informado: Novedades_Clientes inválidas

AyDS2012 - Clase 14- MMV 46

AyDS2012 - Clase 14- MMV

Temas de la clase de hoy

• Descripción funcional con CU y DFD. Comparación

• Estilos de Especificación Funcional. – Idioma estructurado

– Tablas de decisión

– Condiciones pre-post

• Bibliografía:

– Object‐Oriented Modeling and Design with UML. M. Blaha, J.

Rumbaugh. Capítulos 7 y 8.

– Análisis Estructurado Moderno. Edward Yourdon – Capítulos

13

– Software requirements – Styles and techniques. S. Lauesen.

Capítulo 4

47