Post on 21-Apr-2020
Elaborado por:
� Jorge Danilo Reyes Saavedra � Marcos Antonio Avendaño Montoya “Grupo No 4 ” � Sergio Antonio Rodríguez Ocón
5t3 Computación
Plan de trabajo a Seguir en Análisis y diseño Orientado a Datos.
I.Análisis orientado a datos
1. Modelado de datos
� Diagrama entidad relación
� Detalle del proceso de normalización
� Diagrama relacional
� Diccionario de Datos
2. Diagrama de descomposición funcional
3. Diagrama de dependencia de procesos (DDP)
4. Diagrama del flujo de datos de procesos (DFDP)
5. Matriz CRUD
II.Diseño orientado a datos
1. Matriz Proceso Localidad
2. Matriz de Datos Localidad
3. Matriz Volumen transacción
4. Plan de seguridad y recuperación de los datos y de la
aplicación
5. Estructura de menú
6. Diagrama de Flujo de Dialogo
7. Interfases diagramas de acción (estructuras de Seudo código).
1- Modelado de Datos 1.1- Diagrama Entidad – Relación (DER) Para poder realizar el DER se necesita en primer lugar identificar las entidades (que pueden ser personas, objetos, conceptos, etc.) junto a los atributos que estas poseen. Dentro de “Power House Gym” tenemos lo siguiente: Entidades Identificadas
• Cliente • Pagos • Usuario
Descripción de los Atributos Cliente:
� Id � Nombre y Apellido � Edad � Sexo � Dirección � Teléfono � Celular � E-mail � Fecha de Ingreso � Peso � Estatura � Medida de los bíceps � Medida de los
antebrazos � Medida de los
pectorales � Medidas del abdomen � Medidas de las piernas � Medidas de las
pantorrillas � Fecha de Medidas
Pagos: � Numero � Fecha � Hora � Tipo de Pago � Costo unitario � Cantidad a
Pagar � Total � Fecha de Inicio � Fecha de Fin
Usuario: � Id � Nombre y
Apellido � Cod_cargo � Cargo Asignado � Login � Contraseña � Cod_grupo � Grupo de
Usuario
Figura No 1, Representación Gráfica del diagrama E/R, se muestran únicamente las entidades y sus relaciones 1.2- Normalización del Diagrama Entidad – Relación La normalización de los datos puede considerarse un proceso durante el cual los esquemas de relación que no cumplen las condiciones, se descomponen repartiendo sus atributos entre esquemas de relación más pequeños que cumplen las condiciones establecidas (1FN, 2FN, 3FN). El objetivo de este proceso de normalización es garantizar que no ocurran anomalías en el funcionamiento del sistema ni en su proceso de trabajo como en su actualización. Es por eso que cada entidad junto con sus atributos fue analizada paso a paso para una buena normalización. Primera Forma Normal: Una relación está en Primera Forma Normal si y sólo si todos los dominios son atómicos. Un dominio es atómico si los elementos del dominio son indivisibles. Clientes � Id, Nombre, Apellido, Edad ,Sexo, Dirección, Teléfono, Celular, E-mail, Fecha de Ingreso, Peso, Estatura, Fecha de Medidas, Medida de los bíceps, Medida de los antebrazos, Medida de los pectorales, Medidas del abdomen, Medidas de las piernas, Medidas de las pantorrillas. Pagos � Número, Fecha, Hora, Tipo de Pago, Costo unitario, Cantidad a Pagar, Total. Fecha de Inicio, Fecha de Fin. Usuario � Id, Nombre, Apellido, Cod_cargo, Cargo Asignado, Login, Contraseña, Cod_grupo, Grupo de Usuario.
Segunda Forma Normal: Dependencia completa. Esta en 2NF si esta en 1NF y si sus atributos no principales dependen de forma completa de la clave principal. Toda columna que no sea clave debe depender por completo de la clave primaria. Los atributos dependen de la clave. Varía la clave y varían los atributos. En Nuestro Caso ya está en segunda forma normal. Tercera Forma Normal: Un diagrama E/R está en tercera forma normal (3NF) si los atributos no clave (si los hay) son:
a. Mutuamente independientes b. Dependientes por completo de la clave primaria
En nuestro caso podemos identificar con facilidad que no existe una independencia mutua entre los atributos no clave. En la identidad Clientes todos los atributos correspondientes a las medidas darán origen a una nueva entidad “Medidas”. En pagos podemos observar que el tipo de pago y el costo unitario son dependientes entre si, esto dará origen a una nueva entidad “Tipos de Pagos” En Usuarios se presenta el caso de que los atributos “Cod_cargo”, “Cargo Asignado” y “Cod_grupo”, “Grupo de Usuario” respectivamente son dependientes entre si. Como resultado tenemos: Clientes � Id, Nombre, Apellido, Edad, Sexo, Dirección, Teléfono, Celular, E-mail, Fecha de Ingreso, Peso, Estatura. Medidas � Código medidas, Fecha de Medidas, Medida de los bíceps, Medida de los antebrazos, Medida de los pectorales, Medidas del abdomen, Medidas de las piernas, Medidas de las pantorrillas. Pagos � Número, Fecha, Hora, Cantidad a Pagar, Total. Fecha de Inicio, Fecha de Fin. Tipos de Pagos � Código _ pago, Tipo de Pago, Costo unitario Usuario � Id, Nombre, Apellido, Login, Contraseña Cargos � Cod_cargo, Cargo Asignado Grupo � Cod_grupo, Grupo de Usuario
1.3- Diagrama Relacional A través de la Normalización se da origen a lo que se conoce como diagrama relacional. En la figura No 2 mostramos el diagrama relacional que se utilizará para desarrollar el sistema. En el se agregaron las nuevas tablas y los atributos (llaves foráneas) para poder establecer las cardinalidades de las relaciones definidas.
Figura No 2, Diagrama relacional, diseñado en Access 2003
DICCIONARIO DE DATOS
En el siguiente diccionario de datos están contenidas todas las características lógicas de los datos que se van a utilizar en el sistema “Power House Gym” que estamos analizando, incluyendo nombre, tipo, alias y descripción.
Nombre del flujo :
“Registro de Usuario”
Tipo : “ENTRADA” Alias : “Registrar Usuario por Usuario”
Descripción : Nombre+apellido+pass Word+login+id_ grupo+cod_cargo.
Nombre del flujo :
“Registro de Pagos”
Tipo : “ENTRADA” Alias : “Registrar pago por pago
Descripción : Numero+Fecha+tipo de pago+cantidad a pagar+total+fecha de inicio+fecha final.
Nombre del flujo :
“Registro del cliente”
Tipo : “ENTRADA” Alias : “Registrar cliente por cliente”
Descripción: Nombre+apellido+edad+sexo+fecha de ingreso..
2- Diagrama de Descomposición Funcional: Se identificaran las principales actividades, procesos y subprocesos de las funciones que se llevan a cabo en gimnasio, desde el punto de vista general de la organización. En este caso podemos mencionar tres de ellas:
� Registrar y Mantener Clientes
� Registrar y Mantener Usuarios
� Registrar los Pagos realizados
Figura No 3, Diagrama de Descomposición Funcional
Diagrama de Dependencia de Procesos (“Power House Gym”)
Este diagrama de dependencia de procesos es semejante a un diagrama entidad-relación para datos. Por medio de este diagrama identificamos la secuencia y tipos de relaciones entre los procesos que se realizan en Power House Gym. Estos procesos describen las conexiones lógicas que incluyen la secuencia, iteración y selección de componentes de cada proceso.
Figura No 4, Diagrama de Dependencia de proceso
El diagrama de dependencia de procesos (Power House Gym), muestra, los cuatro principales procesos que se realizan desde el momento que el cliente se inscribe. Haciendo este proceso que se active una serie de procesos que es desde el proceso pagar siguiendo simultáneamente el proceso del ingreso de los datos requeridos para el último proceso donde el cliente se almacena en el sistema y se le imprime la factura de cancelación de pago.
Diagrama de Flujo de datos de Proceso (“Power House Gym”)
El diagrama de flujo de datos de procesos es producto de la expansión del diagrama de dependencia de procesos donde se incluyen las entidades y almacenes de datos. Por medio de este diagrama podemos identificar que dato es el que causa que un proceso se ejecute, así mismo para identificar los datos que circulan de un proceso a otro. Por otra parte los eventos externos pueden causar la activación de procesos. Estos activadores externos nos demuestran que los datos alguna inscripción del gimnasio causa procesamiento en una secuencia de eventos.
Figura No 5, Diagrama de Dependencia de proceso
Análisis y desarrollo de Matriz CRUD Como último paso en el Análisis Orientado a Datos se realiza la Matriz CRUD mejor conocida como matriz procesos entidad. En esta matriz según las siglas que se utilizan y las cuales están descritas a continuación se analiza el grado de prioridad que cada entidad tiene sobre cada uno de los procesos que se realizan en Power House Gym. C= CREAR R=LEER U=ACTUALIZAR D=BORRAR
Figura No 6, Matriz CRUD
Matriz de Procesos / Localidad En esta primera fase del Diseño Orientado a Datos, determinamos el grado de prioridad de acceso que cada entidad tiene con respecto a ciertos procesos que se realizan en Power House Gym. Dentro de las entidades y procesos identificados tenemos los siguientes:
Procesos � Inscribirse � Definir tipos/formas de pagos � Pagar � Ingresar Datos requeridos � Imprimir Factura � Almacenar Datos � Generara Reportes � Actualizar ó modificar
Localidades ó Entidades � Usuario � Administrador � Cliente
Para una mayor claridad de las relaciones, utilizamos los siguientes indicadores: % Representa Mayor prioridad. X Representa Menor prioridad. N Representa Ninguna Prioridad
Matriz Proceso Localidad Proceso /Localidad
Usuario
Administrador
Cliente
Inscribirse N N %
Definir tipos/formas de pagos
N
%
N
Pagar N N %
Ingresar Datos requeridos
% % N
Imprimir Factura % % N
Almacenar Datos % % N
Generara Reportes X % N
Actualizar ó modificar
%
Figura No 7, Matriz Proceso Localidad Matriz de Datos localidad En esta fase del Diseño Orientado a Datos, determinamos por medio de los datos y las localidades (entidades) que localidades pueden actualizar y recuperar datos utilizando las siglas siguientes: U: Actualizar R: Recuperar Datos / Localidad
Usuario
Administrador
Cliente Todos UR Subconjunto
Información de los clientes Todos UR Todos UR
Recibo de los clientes Todos UR Subconjunto
Registro de los clientes
Todos UR Todos UR
Reportes Subconjunto Todos UR
Figura No 8, Matriz Datos Localidad
Matriz del volumen de transacción (Localidad Función) En esta fase del Diseño Orientado a Datos, determinamos por medio de las funciones y las localidades (entidades) cuales de estas realizan la mayor cantidad de funciones de acuerdo a las siguientes siglas U: Crear, eliminar o actualizar. R: Recuperar.
Matriz Volumen Transacción
Localidad/Función Ingresar cliente Modificar Cliente Generar Reportes Definir tipo de pagos A Usuario 300 U 30U 200 R 10U B Administrador 20U 10U 300 R 100U
Figura No 9, Matriz volumen transacción
Plan de seguridad y recuperación de los datos de la aplicación
Para un buen plan de seguridad el local donde para va a estar localizada la
computadora (hardware), debe de constar con las siguientes condiciones:
� Acceso restringido a personal no autorizado.,( Clientes, vendedores
,etc...)
� Buena estructura física segura contra todo siniestro.
Además de lo anterior el sistema constará con las siguientes
características:
� Generador de respaldos de la base de datos
� Únicamente el administrador tendrá acceso total al sistema,
restringiendo al usuario corriente modificar datos.
Diagrama de Menús En el siguiente Diagrama se muestra el Menú principal que va a tener la aplicación a la hora de su uso y explotación.
Figura No 9, Diagrama de Menús
DIAGRAMA DE FLUJO DE DIALOGO
Menú Principal_____________________________________________________ REGISTRO DEL CLIENTE____________________________________________ Información del cliente________________________________________________ Buscar Cliente______________________________________________________ REGISTRO DE PAGOS______________________________________________ Ingresar nuevo pago ________________________________________________ Administrador de pagos______________________________________________ Tipos de pagos_____________________________________________________ Consulta de pagos__________________________________________________ REGISTRO DE USUARIO____________________________________________ Administrador de Usuario ____________________________________________ Cambiar Contraseña ________________________________________________ Cerrar sesión ______________________________________________________ Ver accesos_______________________________________________________ GESTIÓN DE REPORTES____________________________________________ CLIENTES________________________________________________________ Clientes inscritos ____________________________________________________ Clasificados por sexo_________________________________________________ Tiempo de Inscripción ________________________________________________ PAGOS ___________________________________________________________ Rango de fecha _____________________________________________________ Pagos/Usuarios_____________________________________________________ Pagos por vencer___________________________________________________ Pagos/ clientes______________________________________________________ AYUDA___________________________________________________________ Ayuda del sistema ___________________________________________________ Acerca del sistema __________________________________________________
Figura No 9, Diagrama de Flujo de Dialogo
En el diagrama de la figura 9 mostramos las diferentes comunicaciones de diálogos que existen en el menú.
Diseño de Interfaces Entrada al Sistema Ventana que se activa una ves iniciado el sistema esta se encarga de decepcionar los datos correspondientes a los Usuarios del sistema y si permite o niega el acceso.
Menú principal del sistema: En el menú principal estarán lo descrito en el Diagrama de Menús desarrollado anteriormente, esté estará ubicado en una ventana, que será la principal del sistema.
Información de los Clientes Esta ventana contendrá todo lo referente a los clientes del gimnasio, en ella se podrán crear nuevos cliente, editar, buscar
Buscar Clientes En esta ventana se realiza a búsqueda de los clientes almacenados en el sistema, habrán distintos filtros que la determinen
Realizar Pagos En esta ventana se decepcionan los pagos que realizan los clientes al gimnasio por los servicios que este brinda.
Administrador de Usuario En esta ventana se administra todo lo referente a los usuarios, se crean nuevos y se eliminan los que ya no están en uso.
Cambiar Contraseña A esta ventana podrán acceder cada uno de los usuarios si desean cambiar la contraseña de acceso que poseen en ese momento.
Ver accesos Esta ventana servirá al administrador del sistema para controlar los accesos de los usuarios al sistema
Diagrama de Acción Entrada al Sistema:
Si (Presiona Aceptar) entonces Si Nombre Usuario <>” ” AND Contraseña <>” ” entonces Si Datos Coinciden con la base de datos entonces Ingresar al Sistema, Ventana Principal Si No Mensaje: “No coinciden los datos con los almacenados” Fin Si Si No Mensaje: “Debe de llenar los dos campos” Fin Si Si No (Presiona Cancelar) entonces Salir del sistema Fin Si
Menú Principal:
Si (Presiona Menú Clientes) entonces Si (Presiona Sub-Menú información de Cliente) entonces Cargar Ventana de información de Cliente Si No (Presiona Sub-Menú Buscar Cliente) entonces Cargar Ventana de Búsqueda de Cliente Fin Si Si No (Presiona Menú Clientes) entonces Si (Presiona Sub-Menú Realizar Pago) entonces Cargar Ventana Pagos Si No (Presiona Sub-Menú Administrador de Pagos) entonces Cargar Ventana Administrador de Pagos
Si No (Presiona Sub-Menú Tipos de Pagos) entonces Cargar Ventana Tipos de Pagos
Si No (Presiona Sub-Menú Consultas de Pagos) entonces Cargar Ventana Consultas Pagos Fin Si Si No (Presiona Menú Usuarios) entonces Si (Presiona Sub-Menú Administrador de Usuarios) entonces Cargar Ventana Pagos Si No (Presiona Sub-Menú Cambiar Contraseña) entonces Cargar Ventana Cambiar Contraseña
Si No (Presiona Sub-Menú Cerrar Sesión) entonces Si (Presiona Aceptar) entonces Salir del Sistema Si No (Presiona Cancelar) entonces Retornar al Sistema Fin Si
Si No (Presiona Sub-Menú Ver Accesos) entonces Cargar Ventana Ver Accesos Fin Si
Si No (Presiona Menú Reportes) entonces Si (Presiona Sub-Menú Clientes) entonces Cargar Reportes de Clientes Si No (Presiona Sub-Menú Pagos) entonces Cargar Reportes de Pagos Fin Si Si No (Presiona Menú Ayuda) entonces Si (Presiona Sub-Menú Ayuda del Sistema) entonces Cargar Ayuda del Sistema Si No (Presiona Sub-Menú Acerca de…) entonces Cargar Ventana Acerca de… Fin Si Si No (Presiona Menú Ayuda) entonces Salir del Sistema Fin Si
Información del Cliente Carga inicial
Función Cargar Datos
Si (Carga inicial) entonces Abrir enlace con el gestor de bases de datos Mover a Primer registro Cargar datos en los campos asignados Habilitar el Botón Nuevo Habilitar el Botón Editar Habilitar el Botón buscar Fin Si
Nuevo cliente
Si (Presiona Nuevo) entonces Habilitar Campos de Recepción Limpiar Información de actual de los Campos Habilitar el Botón Guardar Habilitar el Botón Cancelar
Deshabilitar el Botón Nuevo Deshabilitar el Botón Editar Deshabilitar el Botón Buscar Deshabilitar el Botones de Navegación Fin Si
Si (Presiona Guardar) entonces Si Campos Obligatorios <>” ” entonces Almacenar registro del Cliente en la base de datos Deshabilitar el Botón Guardar Deshabilitar el Botón Cancelar
Habilitar el Botón Nuevo Habilitar el Botón Editar
Habilitar el Botón Buscar Habilitar el Botones de Navegación Mover al Ultimo Registro Almacenado (el recién creado) Si No Mensaje: “Debe de completar la información del Cliente” Fin Si Fin Si
Si (Presiona Cancelar) entonces
Deshabilitar el Botón Guardar Deshabilitar el Botón Cancelar
Habilitar el Botón Nuevo Habilitar el Botón Editar Habilitar el Botón Buscar Habilitar el Botones de Navegación Fin Si
Editar Cliente
Si (Presiona Editar) entonces Abrir el registro a editar Habilitar Campos de Recepción Habilitar el Botón Guardar Habilitar el Botón Cancelar
Deshabilitar el Botón Nuevo Deshabilitar el Botón Editar Deshabilitar el Botón Buscar Deshabilitar el Botones de Navegación Fin Si
Si (Presiona Guardar) entonces Si Campos Obligatorios <>” ” entonces Actualizar el registro correspondiente al cliente Deshabilitar el Botón Guardar Deshabilitar el Botón Cancelar
Habilitar el Botón Nuevo Habilitar el Botón Editar Habilitar el Botón Buscar Habilitar el Botones de Navegación Mover al Ultimo Registro Almacenado (el recién creado) Si No Mensaje: “Debe de completar la información del Cliente” Fin Si Fin Si
Si (Presiona Cancelar) entonces Deshabilitar el Botón Guardar, Deshabilitar el Botón Cancelar Habilitar el Botón Nuevo
Habilitar el Botón Editar Habilitar el Botón Buscar, Habilitar el Botones de Navegación Fin Si
Buscar Cliente
Si (Presiona Buscar) entonces Llamar a la ventana Buscar Cliente
Fin Si
Botones de Navegación
Si (Presiona Inicio) entonces Mover al Primer Registro Almacenado Mostrar los datos en los campos correspondientes
Deshabilitar el Botón Inicio Deshabilitar el Botón Atrás
Habilitar el Botón Siguiente Habilitar el Botón Último Si No (Presiona Atrás) entonces
Mover un Registro Almacenado atrás Mostrar los datos en los campos correspondientes Si (llego al primer registro) entonces
Deshabilitar el Botón Inicio Deshabilitar el Botón Atrás
Habilitar el Botón Siguiente Habilitar el Botón Último Si No
Habilitar el Botón Inicio Habilitar el Botón Atrás
Habilitar el Botón Siguiente Habilitar el Botón Último Fin Si Si No (Presiona Siguiente) entonces
Mover un Registro Almacenado adelante Mostrar los datos en los campos correspondientes Si (llego al último registro) entonces
Habilitar el Botón Inicio Habilitar el Botón Atrás
Deshabilitar el Botón Siguiente Deshabilitar el Botón Último Si No
Habilitar el Botón Inicio Habilitar el Botón Atrás
Habilitar el Botón Siguiente Habilitar el Botón Último Fin Si Si No (Presiona Ultimo) entonces Mover al Ultimo Registro Almacenado Mostrar los datos en los campos correspondientes
Habilitar el Botón Inicio Habilitar el Botón Atrás
Deshabilitar el Botón Siguiente Deshabilitar el Botón Último Fin Si
Salir Si (Presiona Salir) entonces
Cerrar Ventana Información de Cliente Fin Si
Buscar Cliente Buscar
Si (Presiona Buscar) entonces Determinar las condiciones del filtro Realizar la búsqueda en la base de datos Mostrar los resultados en la tabla Fin Si
Administrador de Usuarios Nuevo Usuario
Si (Presiona Nuevo) entonces Habilitar Campos de Ingreso Limpiar Campos de Ingreso Habilitar Botón Guardar Fin Si
Si (Presiona Aceptar) entonces Si Campos <>” ” entonces Crear un Nuevo Usuario en la Base de datos Si No Mensaje: “Debe de llenar los dos campos” Fin Si Si No (Presiona Cancelar) entonces Salir del Administrador de Usuarios Fin Si
Borrar Usuario
Si (Presiona Eliminar) entonces Si (Ningún Usuario Existente seleccionado) entonces Mensaje: Seleccione un Usuario para eliminarlo Si No Eliminar Usuario
Fin Si Fin Si
Cambiar Contraseña
Si (Presiona Aceptar) entonces Si (Contraseña Actual<>”” OR Nueva Contraseña<>”” OR Confirmar <>””) entonces
Mensaje: No ha llenado uno de los campos Si No Contraseña Cambiada
Fin Si Fin Si