Analisis Estructurado De Diccionario de Datos
-
Upload
edison-mamani-ramirez -
Category
Documents
-
view
8 -
download
1
description
Transcript of Analisis Estructurado De Diccionario de Datos
-
Tema V1: Tema V1: Herramientas de AnHerramientas de Anlisis Estructuradolisis Estructurado
Diccionario de DatosDiccionario de Datos
Diana Marcela SDiana Marcela Snchez Fnchez FquenequeneIngeniera del Software de Gestin
-
ndicendice
Herramientas de documentacin del
Anlisis Estructurado
Diagramas de Flujo de Datos (DFDs)
Diccionario de Datos (DD) Diagramas de Entidad-Relacin (ER)
Diagramas de Transicin de Estado (DTEs)
Especificaciones de procesos
Ingeniera del Software de Gestin
-
Diccionario de Datos:Diccionario de Datos:
MotivaciMotivacinn Datos complejos descomposicin Elementos simples de datos Unidades y Valores vlidos
Es preciso disponer de una referencia Notacin compacta y concisa para definir
el significado de cada trmino
Ingeniera del Software de Gestin
-
- Marciano: Bien, qu es esto llamado nombre?- Usuario: Pues ver, es slo eso, un nombre. Quiero decir, es con lo que nos llamamos
unos a otros.- Marciano: Significa que se llaman de un modo cuando estn contentos y de otro cuando
estn enojados?- Usuario: No, claro que no!. Un nombre es el mismo siempre... Un nombre de una
persona lo distingue de otras personas.- Marciano: Ah! Ya entiendo!. Hacemos lo mismo en mi planeta. Mi nombre es
3,141592653589793238462643.- Usuario: Pero...eso es un nmero no un nombre!.- Marciano: Y es un muy buen nombre, me enorgullezco de l. Nadie tiene algo parecido.- Usuario: Pero...cul es su nombre y cul su apellido? O 3 es el nombre y el resto es
apellido?- Marciano: Qu esto de nombre y apellido? No entiendo. Tengo un solo nombre y
siempre es el mismo.- Usuario: Pues, no funcionan as las cosas aqu. Tenemos un nombre, un apellido, y en
algunos casos un segundo nombre tambin- Marciano: Significa eso que Ud. puede llamarse 23 45 99?Usuario: No, no permitimos nmeros en nuestros nombres. Slo pueden usarse los
caracteres alfabticos de la A a la Z.
Ingeniera del Software de Gestin
Diccionario de Datos:Diccionario de Datos:
MotivaciMotivacinn
-
Preguntas
1. Todas las personas deben tener un nombre?
2. Qu pasa con los signos de puntuacin en los apellidos? Ejemplo: DAgostino
3. Se permiten los segundos nombres abreviados? Ejemplo: Juan Fco.
4. Existe una longitud mnima para el nombre de una persona? Ejemplo: Podra una persona llamarse XY?
5. Cmo se deben tratar los sufijos que a veces siguen a un nombre? Ejemplo: Juan Prez Jr.
Se necesita una NOTACIN
Ingeniera del Software de Gestin
Diccionario de Datos:Diccionario de Datos:
MotivaciMotivacinn
-
Un diccionario de datos (DD) es una lista organizada de los datos relevantes para el sistema que contiene definiciones precisas y
rigurosas de los datos para facilitar la comunicacin
El DD describe los Flujos y Almacenes de datos de los DFD Paquetes complejos de datos Flujos Almacenes
Valores elementales Relaciones entre los almacenes (modelo E-R)
Ingeniera del Software de Gestin
Diccionario de DatosDiccionario de Datos
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
MetodologMetodologaa Sigue una aproximacin "top-down hasta obtener datos
elementalesEjemplo
El flujo de datos A est compuesto por los flujos B y C.B est compuesto de B1, B2 y B3, mientras que C es de C1 y C2.Se podra definir como:
A = B1 + B2 + B3 + C1 + C2
Pero es preferible definirlos en funcin de sus componentes subordinados:
A = B + CB = B1 + B2 + B3C = C1 + C2
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
NotaciNotacinn
Ingeniera del Software de Gestin
SMBOLO SIGNIFICADO= Composicin+ Inclusin (AND)( ) Opcional{ } Iteracin[ | ] Seleccin
*texto* Comentario@ Identificador
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
NotaciNotacinn Ejemplo de uso de la notacin
nombre_completo = (ttulo_cortesa) +nombre + (segundo_nombre) + apellido
ttulo_cortesa = [Sr. | Srta. | Sra. | Dr. ] nombre = {carcter_legal} segundo_nombre = {carcter_legal} apellido = {carcter_legal} carcter_legal = [A-Z | a-z | | | ]
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
ComposiciComposicin e inclusin e inclusinn El smbolo = indica
Se define como Est compuesto de Significa
A = B + C Completar definicin
Significado Unidades Rango de Valores
EjemplosPETICIN LIBROS = CARNET BIBLIOTECA + FICHA LIBROS
PESO = *peso del paciente cuando ingres en el hospital**unidades=kgs; rango=1-200*
Ingeniera del Software de Gestin
GESTIONAR PRESTAMOS DE
BIBLIOTECAUSUARIO
Peticin de libro
SISTEMA DEMANTENIMIENTO
DE PUBLICACIONES
LIBROSResguardo de
aceptacin
GESTIONAR PRESTAMOS DE
BIBLIOTECAUSUARIO
Peticin de libro
SISTEMA DEMANTENIMIENTO
DE PUBLICACIONES
LIBROSLIBROSResguardo de
aceptacin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
Datos elementalesDatos elementales Aquellos que no tiene sentido
descomponer Depende del contexto
Deben incluirse en el DD Comentario descriptivo (prescindible **) Rango de valores permitidos
Ejemplofecha-de-nacimiento = ***unidades: das desde 1/1/1900; rango: 0-36500*
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
SelecciSeleccinn La seleccin de un componente (sea un
elemento o un conjunto de elementos) se representa entre corchetes, separando cada opcin mediante el smbolo |
Indica una seleccin entre campos alternativos distintos
Ejemplosocio = nombre + domicilio + [NIF|CIF]sexo = [Hombre | Mujer]tipo-cliente = [Administracin | Empresa | Universidad |
Otros]
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
IteraciIteracinn La iteracin representa la repeticin de los
elementos incluidos entre parntesis.
Ejemploficha libros = {libros} 0 N ocurrencias de libros = signatura + ttulo + autorpedido = id-cliente + direccion-envio + {item}
Es posible representar los lmites inferior y/o superior sobre las ocurrencias de una estructura repetitiva
Ejemploficha libros = 1{libros}5
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
OpciOpcinn El dato opcional indica que puede o no estar
presente Ejemplo
direccion-cliente = (direccion-envio) + (direccion-fiscal)
direccion-cliente = [direccion-envio | direccion-fiscal | direccion-envio +
direccion-fiscal]direccion-cliente = direccion-fiscal + (direccion-
envio)
Ingeniera del Software de Gestin
-
Diccionario de DatosDiccionario de Datos
AliasAlias Una forma alternativa de nombrar un elemento
de datos Se incluye en el DD por completitud
Ejemploform-pedido = *alias para formulario2556*
Para evitar la redundancia, no se redefine el elemento
Debe minimizarse el uso de alias y cuando se hace, tratar de resaltarlo cliente*
Ingeniera del Software de Gestin
-
Diccionario de Datos (DD)Diccionario de Datos (DD)
DefiniciDefinicin de almacenesn de almacenes Se definen como entidades repetitivas de datos y/o
grupos de datos No es necesario indicar la estructura repetitiva con
llaves Se selecciona un Identificador para organizar la
coleccin de entradas
EjemploLIBROS DISPONIBLES = @SIGNATURA + TITULO
+ AUTOR + NUMERO UNIDADES * la signatura identifica cada ocurrencia del almacn *
Ingeniera del Software de Gestin
DIAGRAMA 0: GESTIONAR BIBLIOTECA
1
SANCIN
PEDIDOLIBROS
DEVOLUCINLIBROS
ALTAS/BAJASLIBROS
2
3
FICHASPRESTAMO
LIBROSDISPONIBLES
GESTIONARPEDIDOS
GESTIONARDEVOLUCIONES
ACTUALIZARLIBROS
DIAGRAMA 0: GESTIONAR BIBLIOTECA
1
SANCIN
PEDIDOLIBROS
DEVOLUCINLIBROS
ALTAS/BAJASLIBROS
2
3
FICHASPRESTAMO
LIBROSDISPONIBLES
GESTIONARPEDIDOS
GESTIONARDEVOLUCIONES
ACTUALIZARLIBROS
-
Diccionario de datos (DD)Diccionario de datos (DD)
CorrecciCorreccinn Se han recogido todos los flujos?
Se han definido todos los componentes de los flujos compuestos?
Se ha definido algn elemento varias veces?
Se ha utilizado la notacin correcta en todos los casos?
Hay algn elemento en el DD que no aparece en los DFD, E-R o DTE?
Ingeniera del Software de Gestin
-
ndicendice
Herramientas de documentacin del
Anlisis Estructurado
Diagramas de Flujo de Datos (DFDs)
Diccionario de Datos (DD)
Diagramas de Entidad-Relacin (ER)
Diagramas de Transicin de Estado (DTEs)
Especificaciones de procesos
Ingeniera del Software de Gestin
-
Especificaciones de Procesos (EP)Especificaciones de Procesos (EP)La especificacin de procesos (o tambin denominada
miniespecificacin) es una tcnica que define el procedimiento que realiza un proceso primitivo
Describe cmo se obtienen los flujos de datos de salida a partir de los flujos de datos de entrada, ms una informacin local al proceso
Alternativas para describir este procedimiento son las siguientes
Lenguaje estructurado rboles de decisin Tablas de decisin Diagramas de accin Precondiciones y poscondiciones
Ingeniera del Software de Gestin
-
Especificaciones de Procesos (EP)Especificaciones de Procesos (EP)
Lenguaje EstructuradoLenguaje Estructurado
Lenguaje
Subconjunto de palabras del idioma elegido construcciones propias de la programacin
estructurada
verbos que reflejan acciones simples: LEER, ESCRIBIR, BORRAR, ENCONTRAR, CALCULAR, VALIDAR, etc.
Conjunto de restricciones
Balance precisin / facilidad de comprensin
Ingeniera del Software de Gestin
E = V0 * T2 + * T2 Leer Datos Personales del Empleado
-
Especificaciones de Procesos (EP)Especificaciones de Procesos (EP)
Lenguaje EstructuradoLenguaje Estructurado
Ingeniera del Software de Gestin
Construcciones PermitidasAccion 1Accion 2Accion 3
Leer datos-clienteBuscar pedidos-clienteEmitir facturas
SI condicionAcciones
SINOAcciones
FINSI
SI edad-cliente > 65SET tarifa-facturacion = jubilado
SINOSET tarifa-facturacion = normal
FINSIDO CASE
CASE expresionacciones
..
DEFAULTacciones
ENDCASE
DO CASE nacionalidad-cliente CASE < italianoSET idioma = IT
..
DEFAULTSET idioma = ESP
END CASEWHILE condicionacciones
ENDWHILE
REPEATacciones
UNTIL condicion
-
Especificaciones de Procesos (EP)Especificaciones de Procesos (EP)
Lenguaje EstructuradoLenguaje Estructurado
Recomendaciones 1 pgina por especificacin
No ms de 3 niveles de anidamiento Usar otras herramientas
Formatear para aportar claridad
De cara al usuario Resaltar construcciones de programacin
Referirse a la especificacin como descripcin formal de SU poltica de negocio
Ingeniera del Software de Gestin
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Programa que lee los datos de un empleado de una empresa (DNI, Nombre y Apellidos, Edad, etc.) y los almacena como transacciones en un fichero de informacin de empleados
Ingeniera del Software de Gestin
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Diagrama de Contexto
Ingeniera del Software de Gestin
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Diagrama de Sistema (Nivel 1)
Ingeniera del Software de Gestin
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Ingeniera del Software de Gestin
Proceso 1: Leer Datos EmpleadoBotn = Visualizar datos personales()// DNI, nombre , apellidos, estado civil, direccinIF boton = cancelar
borrar_info_pantalla()ir a proceso 1
ELSEleer_datos_pantalla()boton = visualizar_datos_economicos()// sueldo, trienio, complementos, etc.IF boton = cancelar
borrar_info_pantalla()ir a proceso 1
ELSEleer_datos_pantalla()boton = visualizar_datos_academicos()// titulacion, cursos reealizados, etc.IF boton =cancelar
borrar_info_pantalla()ir a proceso 1
ELSEleer_datos_pantalla()ir a proceso_2
ENDIFENDIF
ENDIFEND Proceso
Especificacin del proceso 1: Leer Datos Empleado
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Ingeniera del Software de Gestin
Proceso 2: Validar Datos// El proceso 1 realiza una validacin sintctica de los datos (p.e: edad valor numrico),// mientras que el proceso 2 realiza una validacin semntica
ComprobarDatosPersonales() // comprobar direccin en Madrid, prefijo = 91
Comprobar DatosEconomicos() // no puede poner una gratificacin por destino en el extranjero si est// destinado en el pas de origen
ComprobarDatosAcademicos() // no puede poner una titulacin acadmica que no exista
IF error_validacionvisualizar_datos_erroneos()
ELSEir al proceso 3
ENDIFEND Proceso 2
Especificacin del proceso 2: Validar Datos
-
EspecificaciEspecificacin de Procesos: ejemplon de Procesos: ejemplo
Ingeniera del Software de Gestin
Proceso 3: Construir Registro TransaccinCrearTransaccion() // poner indicativo, transformar literales en cdigos, ajustar longitudes de campos
// quitar blancos, etc.Ir al proceso 4
END Proceso 3
Especificacin del proceso 3: Construir Registro Transaccin
Proceso 4: Grabar Registro TransaccinGrabarRegistro (fichero, movimientos) // Insertar el registro en el fichero de movimientos
// ordenado por indicativo y orden de llegada END Proceso 4
Especificacin del proceso 4: Grabar Registro Transaccin
-
EjercicioEjercicio Un centro docente desea informatizar su gestin acadmica. El centro
tienes unos 1000 alumnos y 80 profesores e imparte estudios universitarios. La direccin del centro desea realizar las siguientes acciones y obtener los siguientes productos: Dar de alta, baja o modificar los datos de un profesor
Dar de alta, baja o modificar los datos de un alumno
Dar de alta, baja o modificar los datos de una asignatura
Adems, se desea poder obtener listado alfabtico de profesores con las asignaturas que imparten
listado alfabtico de alumnos con las asignaturas en las que estn matriculados
listado alfabtico de Asignaturas
relacin de alumnos por asignatura (destinada al profesor)
actas de Junio y Septiembre para cada asignatura
certificado acadmico, con notas de las asignaturas matriculadas o certificado de estudios con todo el expediente acadmico
Ingeniera del Software de Gestin
-
Especificaciones de Procesos (EP): Especificaciones de Procesos (EP):
Precondiciones y poscondicionesPrecondiciones y poscondiciones Se centra en la relacin entre las entradas y las
salidas (no en el algoritmo)
Slo se indican: Precondiciones: las condiciones que se tienen que
cumplir para que el proceso pueda comenzar Entradas que debe haber y relaciones entre ellas
Registros de los Almacenes de datos y relaciones con ellos
Postcondiciones: las condiciones que deben cumplirse cuando el proceso ha concluido Salidas y relaciones entre ellas
Ejemplo
Ingeniera del Software de Gestin
PRECONDICINEntrada elemento X R
e
c
u
p
e
r
a
d
a
d
e
:
Just
Eno
ugh
Stru
ctur
ed A
naly
sis
(
Y
o
u
r
d
o
n
)
-
Especificaciones de Procesos (EP): Especificaciones de Procesos (EP):
Precondiciones y poscondicionesPrecondiciones y poscondiciones Describir primero las situaciones
normales
Pares pre/post-condiciones
Ingeniera del Software de Gestin
El usuario podr seleccionar el fichero a descargar, pulsando sobre la imagen de la cartula,tras comprobar sus credenciales, se le abrir una ventana con el e-link para descargar
PRECONDICIN 1 (situacin normal)Usuario loggeado pulsa sobre enlace vlido
POSTCONDICIN 1Abrir pop-up con e-link
PRECONDICION 2 (error)Error en Precondicin 1 porque el enlace seleccionado est roto
POSTCONDICION 2Mostrar mensaje de error y Notificar en Base de Datos
PRECONDICIN 3 (error)Error en Precondicin 1 porque el usuario no se ha loggeado
POSTCONDICIN 3Redirigir a la pgina de registro con mensaje en la parte superior invitando a que se registre
-
Especificaciones de Procesos (EP): Especificaciones de Procesos (EP):
Tablas de DecisiTablas de Decisinn Recomendado para ciertas situaciones Decisiones complejas Muchas variables con varios valores posibles
Muestra la funcin en forma tabular o matricial Condiciones o Entradas
Acciones o salidas
Ingeniera del Software de Gestin
-
Especificaciones de Procesos (EP): Especificaciones de Procesos (EP):
Tablas de DecisiTablas de Decisin n -- ejemplo ejemplo Supongamos la poltica de descuentos que realiza una empresa sobre
los pedidos de sus clientes dependiendo del volumen de compras del ao anterior
Si estos son clientes con ms de 5 aos de antigedad se le aplica un descuento del 25% si el valor de los pedidos anuales es superior a 50.000 .
Si el montante de los pedidos est entre los valores 50.000 y 30.000 el descuento efectuado ser del 15% y si no se alcanza la cifra de 30.000 se aplicar el 10%.
Para clientes entre 5 y 3 aos de antigedad se aplicar el 11% para compras por valor superior a 40.000 y el 5% por valor igual o inferior.
Si tienen menos aos de antigedad se aplicar el 9% si el valor de compras es superior a 40.000 .
A los clientes clasificados como especiales se le aplicar un descuento de 25% si el volumen de compras supera los 50.000 siendo del 20% en caso contrario.
Ingeniera del Software de Gestin
-
Especificaciones de Procesos (EP): Especificaciones de Procesos (EP):
Tablas de DecisiTablas de Decisin n -- ejemplo ejemplo
Ingeniera del Software de Gestin
CODICIOES Cliente especial Vol. compras > 50.000 Vol. compras = Vol. compras >= 30.000 Vol. compras < 30.000 Vol. compras > 40.000 Vol. compras 5 5 >= Aos ant. >= 3 Aos ant. < 3
S S - - - - - - - -
S - S - - - - - - -
NO S - - - - - S - -
NO -
NO S - - - S - -
NO - - - S - - S - -
NO - - - - S - - S -
NO - - - - - S - S -
NO - - - - S - - - S
NO - - - - - S - - S
ACCIOES Aplicar 25 % descuento. Aplicar 20% descuento. Aplicar 15% descuento. Aplicar 11% descuento. Aplicar 10% descuento. Aplicar 9% descuento. Aplicar 5% descuento. Sin descuento.
X
X
X
X
X
X
X
X
X
Tabla de Decisin
-
EspecificaciEspecificacin de Procesos (EP)n de Procesos (EP)
rboles de Decisirboles de DecisinnUn modelo de una funcin discreta en la que se
determina el valor de una variable y en funcin de ese valor se lleva a cabo una accin
Representacin en forma de rbol Valores de las variables
Acciones tomadas para cada valor
Orden en que se realiza la decisin
Ingeniera del Software de Gestin
-
EspecificaciEspecificacin de Procesos (EP)n de Procesos (EP)
rboles de Decisirboles de Decisin n -- EjemploEjemplo
Ingeniera del Software de Gestin
CLIETE
ESPECIAL
S
No
VOLUME
DE COMPRAS
> 50.000
5
= 3
< 3
VOLUME DE COMPRAS
> 50.000
= 30.000
< 30.000
> 40.000
40.000
-
EspecificaciEspecificacin de Procesosn de Procesos
Otras herramientasOtras herramientas Diagramas de transicin de Estados
Grficos
Ingeniera del Software de Gestin
Recuperada de: Just Enough Structured Analysis (Yourdon)
Recuperada de: Just Enough Structured Analysis (Yourdon)