Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos ...
-
Upload
dolores-moya-carrasco -
Category
Documents
-
view
215 -
download
0
Transcript of Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos ...
![Page 1: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/1.jpg)
Especificaciones de
software
![Page 2: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/2.jpg)
Especificaciones de software
Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño
Puede decirnos Qué hacer Cómo hacerlo División no tan clara
![Page 3: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/3.jpg)
Uso de las especificaciones
Dar los requisitos del cliente.Dar los requisitos de diseño.Verificar la implementación.Como punto de referencia en el
mantenimiento. mantenimiento correctivo. mantenimiento adaptativo. mantenimiento perfectivo.
![Page 4: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/4.jpg)
Cualidades de las especificaciones
Claras, no ambiguas y entendibles.
“Seleccionar es el proceso para designar áreas del documento sobre las cuales se quiera trabajar. La mayoría de las acciones de formateado requieren de dos pasos: primero se debe seleccionar el área donde se quiere trabajar y luego iniciar la acción apropiada”.
![Page 5: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/5.jpg)
Cualidades de las especificaciones
Consistentes.
Completas Internamente.Respecto a los requisitos.
![Page 6: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/6.jpg)
Estilos de especificaciones
Formales vs. informales
Operacionales vs. descriptivas.
![Page 7: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/7.jpg)
Estilos de especificaciones
“Sea a un arreglo de n elementos. El resultado de ordenar a es un arreglo b de n elementos tal que el primer elemento de b es el mínimo de a (si varios elementos de a tienen el mismo valor, cualquiera de ellos es aceptable), el segundo elemento de b es el mínimo del arreglo de n-1 elementos obtenidos de a al remover su mínimo elemento; y así sucesivamente hasta que todos los n elementos de a hayan sido removidos”.
![Page 8: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/8.jpg)
Estilos de especificaciones
“El resultado de ordenar a es un arreglo b el cual es una permutación de a y está ordenado”.
![Page 9: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/9.jpg)
Estilos de especificaciones
Primero, a debe estar ordenado; donde la definición de “ordenado” se encuentra dada en la especificación descriptiva anterior.
Luego, cualquier elemento duplicado del arreglo ordenado debe ser eliminado del arreglo.
![Page 10: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/10.jpg)
Conclusiones
No siempre existe una distinción muy clara entre las especificaciones descriptivas y operacionales.
No existe un estilo que sea adecuado para todo tipo de problema.
Ningún estilo garantizará la calidad de la especificación.
![Page 11: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/11.jpg)
Modelos del
Análisis
![Page 12: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/12.jpg)
Modelado del Análisis
Análisis Estructurado
Análisis Orientado a Objetos
![Page 13: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/13.jpg)
Análisis EstructuradoElementos del modelo de análisis
![Page 14: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/14.jpg)
Modelo de datos
¿Qué es un modelo?
MODELO REALIDAD
RepresentaciónAbstractade la realidad
![Page 15: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/15.jpg)
Modelo de datosDiagramas de Entidad-Relación
Modelo de Datos ¿Cuáles son los objetos de datos primarios que
va a procesar el sistema? ¿Cuál es la composición de cada uno de estos
objetos y qué atributos los describen? ¿Cuál son las relaciones entre dichos objetos?
Primitivas de los DER Entidades Relaciones Atributos
![Page 16: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/16.jpg)
Entidades y atributos
Entidad Abstracción de un objeto del mundo real. Representa una colección de objetos que tienen
propiedades comunes. Ejemplo: CLIENTE
Atributo Propiedad de una entidad Ejemplo: Nombre y apellido, edad, dirección, etc.
Instancia de una entidad Ejemplo.
![Page 17: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/17.jpg)
Entidades y atributos
numero_cliente nombre direccion
CLIENTE
Area de Datos (Atributos no-clave)
Area de Clave Primaria (Atributos de clave primaria).
![Page 18: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/18.jpg)
Relaciones
compra CLIENTE PRODUCTO
Modelo conceptual
• En IDEF1X las relaciones son binarias.
•Entidades asociativas
![Page 19: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/19.jpg)
Relaciones uno a muchos
esta_formado EQUIPO JUGADOR
Entidad hijoEntidad padre
Cardinalidad: cero, una o más
![Page 20: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/20.jpg)
Cardinalidades
“P” indica uno o más.“Z” indica cero o una.“n” indica exactamente n. ausencia de símbolo indica cero o más.
esta_formado
EQUIPO JUGADOR 22
![Page 21: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/21.jpg)
Relaciones muchos a muchos
No específicas No hay padre ni hay hijo
alquila
PERSONA COPIA_PELICULA
COPIA_PELICULA
ALQUILER
PERSONA registra es_registrada
Entidad asociativa
![Page 22: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/22.jpg)
Relaciones identificantes y no-identificantes
Identificantes: la clave primaria del padre pasa a ser parte de la clave primaria del hijo.
Depende para Formar su identidad Existir
Siempre mandatorias.
esta_en_stock_como PELICULA COPIA_PELICULA numero_pelicula nombre_pelicula
numero_pelicula (FK) numero_copia
Línea llena
Entidad dependiente
![Page 23: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/23.jpg)
Relaciones identificantes y no-identificantes No-identificantes:la clave primaria del padre no migra a la clave del
hijo. Puede ser opcional. No depende su identidad.
Puede depender su existencia.
COPIA_PELICULA
numero_copia
numero_pelicula (FK)
esta_en_stock_como PELICULA numero_pelicula nombre_pelicula
cubre VENDEDOR CIUDAD vendedor_id nombre
ciudad_id
vendedor_id (FK)
![Page 24: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/24.jpg)
Relaciones identificantes y no-identificantes
Uno a exacta-mente n
Uno a cero o más
Uno a uno o más
Uno a cero o uno
Uno a exacta-mente n
Relaciones identificantes (siempre mandatorias)
Relaciones no-identificantes (opcionales o mandatorias)
Uno a cero o más
Uno a uno o más
Cero o uno a exactamente n
Cero o uno a cero o más
Uno a cero o uno
Cero o uno a uno o más
Cero o uno a cero o uno
Z
n
P
n
P
ZP
Z
n
![Page 25: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/25.jpg)
Capacidad expresiva de los DER
En cada curso el número de alumnos inscriptos no puede ser menor de 5 ni puede exceder el valor del
atributo “max_inscriptos” de la entidad CURSO.
id_alumno
CURSO
INSCRIPCION
id_alumno (FK) id_curso (FK)
id_curso nombre max_inscriptos
ALUMNO
![Page 26: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/26.jpg)
Entidades dependientes e independientes
id_alumno
CURSO
INSCRIPCION
id_alumno (FK) id_curso (FK)
id_curso nombre max_inscriptos
ALUMNO
Entidad independiente
Entidad dependiente
Entidad independiente
![Page 27: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/27.jpg)
Jerarquías de generalizaciónJerarquía OR
Agrupamiento de entidades que comparten características comunes.
CAJA_AHORRO
CUENTA nro_cta tipo_cta fecha_apertura
Entidad Generalización o Padre Genérico
Entidades Categoría
tipo_cta Discriminante de categoría
CTA_CTE
nro_cta (FK)
saldo_cheques descubierto cargo_cheque
nro_cta (FK)
saldo tasa_intereses intereses_ganados
CTA_PRESTAMO
nro_cta (FK)
saldo_deudor cantidad-prestada tasa_intereses
![Page 28: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/28.jpg)
Jerarquías de generalizaciónJerarquía OR
CUENTA CTA_CTE nro_cta tipo_cta fecha_apertura nro_cta saldo_cheques descubierto cargo_cheque
1 corriente 15/1/2000 1 12000 11500 1 2 corriente 20/1/2000 2 500 1000 1.2 3 ahorro 21/2/2000 4 ahorro 25/2/2000 CAJA_AHORRO 5 prestamo 4/3/2000 nro_cta saldo tasa_intereses intereses_ganados
3 45000 6.5% 1443 4 1223 5% 85
CTA_PRESTAMO nro_cta saldo_deudor cantidad_prestada tasa_intereses
5 5424 10000 12.5%
![Page 29: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/29.jpg)
Jerarquías de generalizaciónJerarquía AND
CUENTA nro_cta fecha-apertura indicador_cta_c indicador_caja_a indicador_cta_p
indicador_caja_a
CAJA_AHORRO
nro_cta (FK)
saldo tasa_intereses intereses_ganados
CTA_PRESTAMO
nro_cta (FK)
saldo_deudor cantidad-prestada tasa_intereses
indicador_cta_c indicador_cta_p
CTA_CTE
nro_cta (FK)
saldo_cheques descubierto cargo_cheque
![Page 30: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/30.jpg)
Jerarquías de generalizaciónJerarquía AND
CUENTA
CTA_CTE nro_cta indicador
_cta_c indicador_caja_a
indicador_cta_p
fecha_apertura nro_cta saldo_ cheques
descubierto cargo_ cheque
1 1 0 1 15/1/2000 1 12000 11500 1 2 1 0 0 20/1/2000 2 500 1000 1.2 3 0 1 0 21/2/2000 5 876 760 1.2 4 0 1 1 25/2/2000 5 1 0 0 4/3/2000 CAJA_AHORRO
nro_cta saldo tasa_ intereses
intereses_ ganados
3 45000 6.5% 1443 CTA_PRESTAMO 4 1223 5% 85
nro_cta saldo_ deudor
cantidad_ prestada
tasa_ intereses
1 5424 10000 12.5% 4 345 4000 12.5%
![Page 31: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/31.jpg)
Jerarquías de generalización completas e incompletas
Estructura de Categoría Completa
Estructura de Categoría Incompleta
![Page 32: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/32.jpg)
Relaciones Recursivas
es_dueño
COMPAÑIA
compañía_id
nombre
dueño.compañía_id (FK)
![Page 33: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/33.jpg)
Conclusiones DER
Notación semi-formalDescriptivaExpresividad limitadaAltamente intuitivos
![Page 34: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/34.jpg)
Modelo de ProcesosDiagrama de Flujo de Datos (DFD)
Características Fáciles de comunicar Notación operacional semi-formal Variedad de nombres y notación Aplicabilidad amplia Descomposición por niveles
DD
DFDDER
DTE
![Page 35: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/35.jpg)
Componentes de un DFD
Procesos
Flujos de datos
Almacenes
Terminadores o Entidades Externas.
![Page 36: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/36.jpg)
Procesos
Una actividad, tarea, proceso, función, etc. Transforma entradas en salidas Representación Gráfica
1SOLICITARTARJETA
procesoburbujafuncióntransformación
verbo-objeto (qué)en modelos de procesadores (quién)
![Page 37: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/37.jpg)
Flujo de Datos
Representan datos en movimiento lógicamente relacionados.
Describen el movimiento de paquetes de datos de una parte del sistema a otra.
etiqueta del flujo
![Page 38: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/38.jpg)
Flujo de Datos
Entra a o sale de proceso entidad externa almacén
2
VALIDARUSUARIO
contraseña +nro_usuario
respuesta de validación
dirección
Elegir nombres significativos
![Page 39: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/39.jpg)
Flujos de DatosDiálogo
pregunta sobre estado de pedido
respuesta sobre estado de pedido
1DETERM. ESTADO
DEL PEDIDO
pregunta sobre estado de pedido
respuesta sobre estado de pedido
1DETERM. ESTADO
DEL PEDIDO
![Page 40: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/40.jpg)
Flujos de Datos Divergentes
OBTENERDETALLE
DEORDEN
GENERAR FACTURA
detalle de pedidosorden de compra
ACTUALIZAR
INVENTARIO
VALIDARNUMEROTELEFO-
NO
VALIDARCODIGOPOSTAL
domicilio
VALIDAR CALLE
código postal
numero teléfono
calle
![Page 41: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/41.jpg)
Flujos de Datos Convergentes
OBTENERNUMEROTELEFO-
NO
OBTENERCODIGOPOSTAL
domicilio
OBTENER CALLE
código postal
numero teléfono
calle
VALIDAR DOMICILIO
![Page 42: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/42.jpg)
Aplicabilidad
1MEZCLAR
INGRE-DIENTES
harinamasa
leche azúcar
manteca
huevos
2
HORNEAR
torta
![Page 43: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/43.jpg)
Almacén de Datos
Colección de datos en reposo. archivo en disco microfichas datos en un fichero de papel etc.
Representación gráfica:
nombre del almacén
![Page 44: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/44.jpg)
Almacén de DatosLectura
OBTENERDATOS
PERSONALES
CLIENTESdatos_cliente
no destructiva
pasivonombre en plural
nro_cliente
datos_cliente
![Page 45: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/45.jpg)
Almacén de DatosEscritura
ACTUALIZARINFORMACION DE CONTACTO
DECLIENTE
CLIENTES
info_contacto
escritura
sólo paquetes que el almacén pueda guardar
nro_cliente
info_contacto
![Page 46: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/46.jpg)
CLIENTES = {CLIENTE}
CLIENTE = @nro_cliente + nombre + domicilio + teléfono
nro_cliente = ...
nombre = *nombre de una persona*
primer nombre + (segundo nombre) + apellido
domicilio = ...
teléfono = ...
primer nombre = ...
segundo nombre = ...
apellido = ...
datos_cliente = nombre + domicilio + teléfono
info_contacto = [domicilio + telefono | domicilio | telefono]
![Page 47: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/47.jpg)
Diccionario de Datos - Notación
= Está compuesto por+ y() Opcionalidad{} Iteración. Cero o más ocurrencias. [] Selección de una de varias alternativas. | Separador de opciones alternativas.* Principio y fin de comentario. @ Identificador de clave para un almacén. Se
coloca precediendo la clave.
![Page 48: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/48.jpg)
Entidad Externa o Terminador
Representan objetos con los cuales el sistema se comunica. personas agrupamientos organizaciones otros sistemas de software o hardware
Se encuentran por fuera del sistema. Representación gráfica:
nombre del terminador
![Page 49: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/49.jpg)
Entidad Externa o Terminador
Proveen con datos al sistema y/o esperan algún tipo de salida.
“Cuando recibimos los formularios XYZ de Contaduría debemos producir los reportes financieros para el Comité de finanzas”.
CONTADURIACOMITÉ DE FINANZASPRODUCIR
REPORTESFINANCIEROSformularios_XYZ
reportes_financieros
![Page 50: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/50.jpg)
DFDs por niveles
Cuando el DFD es muy complejo.Organización por niveles
DFD de nivel inferior proporciona más detalles sobre proceso en DFD de nivel superior.
![Page 51: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/51.jpg)
DFDs por niveles
Diagrama de Contexto Nivel más alto. Visión más abstracta del
sistema.
Da la visión externa del sistema.
Muestra todo el sistema proceso único flujos de entrada y salida entidades externas
Propósito: delinear el alcance del sistema.
![Page 52: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/52.jpg)
DFDs por niveles
Figura 0 Muestra procesos de más alto nivel y sus
interfaces. Numerar burbujas.
Cada burbuja i de un nivel particular se asocia con una figura del nivel siguiente (si es que se explotó).
![Page 53: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/53.jpg)
0EL
SISTEMA
E1 E2
E3
a b
c
Diagrama deContexto
Figura 3: PC
3.1PE
3.2PF
3.3PG
z
y
x
o
t
1
PA2
PB
4
PD3
PC
a
z
b
yx
c
w
v
Figura 0: EL SISTEMA
![Page 54: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/54.jpg)
DFDs por niveles
¿Cómo se realiza la partición de los DFDs por niveles? Dos enfoques.
¿Cuántos niveles tiene que tener un DFD? Cada burbuja lleva a cabo un función única indivisible. Pistas para saber que no hemos particionado lo
suficiente: proceso difícil de nombrar. proceso con demasiadas entradas y salidas.
¿Deben desarrollarse todas las partes del sistema con el mismo número de niveles?
¿Cómo asegurar que los niveles de un DFD sean consistentes entre sí?
![Page 55: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/55.jpg)
Guía práctica
Escoger nombres significativos. Numerar los procesos. Redibujar. Evitar complejidad => niveles Evitar los flujos y procesos no etiquetados. Controlar consistencia entre niveles. Tener cuidado con los almacenes de solo
lectura o solo escritura.
![Page 56: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/56.jpg)
Guía práctica Evitar sumideros infinitos.Los datos que entran a una burbuja deberían ser usados.
Evitar burbujas de generación espontánea. Los datos no pueden ser generados de la nada.
Excepciones: fecha y hora; nro rándom.
Un “milagro”
un “agujero negro”
![Page 57: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/57.jpg)
Observaciones sobre los DFDs
• Fáciles de comunicar.
• Carecen de un significado preciso:– La semántica de los componentes usados
solamente se encuentra especificada por los nombres elegidos por el analista.
– Carecen de aspectos de control.
![Page 58: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/58.jpg)
Modelo de ComportamientoDiagramas de Transición de Estados (DTE)
Notación gráfica semi-formal operacional.
Permite construir modelos de
comportamiento dependientes del tiempo.
Componentes: Estados
Transiciones Condiciones
Acciones
![Page 59: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/59.jpg)
Estados
El sistema está esperando que: algo ocurra en el ambiente externo (evento)
o, alguna actividad que se está realizando en
ese momento cambie a otra.
Representación gráfica:
nombre del estado
![Page 60: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/60.jpg)
Transiciones
Representan cambios de un estado a otro.
ESTADO 1
ESTADO 2
ESTADO 3
estado inicial
estado final
transición
![Page 61: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/61.jpg)
Condiciones y Acciones
Pueden aparecer asociadas a una transición.
ESTADO 1
ESTADO 2
Condición
Acción
![Page 62: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/62.jpg)
ESPERANDO TARJETA
ESPERANDO OPCION
Mostrar menú de opciones
Se ingresó contraseña
ESPERANDO CONTRASEÑA
Se ingresó tarjeta
Mostrar “Ingrese contraseña”
Se pulsó CancelarDevolver Trajeta
EXTRACCION
Se pulsó “Extraer efectivo”
TRANSFERENCIA
Se pulsó “Transferir Fondos”
CONSULTAS
Se pulsó “Realizar Consulta”Mostrar opciones de consulta
Se pulsó CancelarDevolver Tarjeta
Se pulsó “Finalizar”Devolver Tarjeta
Mostrar menú de opciones
![Page 63: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/63.jpg)
ESPERANDO ELECCION
IMPRIMIENDO SALDO IMPRIMIENDO MOVIMIENTOS
Se pulsó “Consulta de Saldo”
Se pulsó “Consulta de Ultimos Movimientos”
![Page 64: Especificaciones de software. Acuerdo entre dos partes Especificaciones de requisitos Especificaciones de diseño Puede decirnos Qué hacer Cómo.](https://reader036.fdocuments.ec/reader036/viewer/2022062519/5665b4a31a28abb57c92e39c/html5/thumbnails/64.jpg)
Balanceo de modelos
Balanceo del DFD con el DD Cada flujo de datos y cada almacén de datos deben
estar definidos en el DD. Caso contrario se dice que el dato está indefinido.
Cada dato y almacén que se define en el DD debe encontrase en alguna parte del DFD. Si no aparece se dice que es un dato fantasma.
Balanceo del DFD con el DER Cada almacén del DFD debe corresponderse con una
entidad dependiente o independiente del DER. Los nombres de objetos en el DER deben coincidir con
los nombres de los almacenes de datos del DFD. CLIENTES = {CLIENTE}CLIENTE = nombre + domicilio + teléfono + ...nombre = ...