Universidad: Curso: Profesor: Proyecto: Tema: Fecha Entrega UMCA Programación I Elian Rojas Berrocal Primer proyecto programado POO, Acceso Datos 17/12/2015 EXPLICACIÓN DEL PROYECTO El objetivo del proyecto es desarrollar un software para administrar las cuentas bancarias de los clientes. Mantenimientos 1. Debe existir un mantenimiento para hacer el ingreso del cliente al sistema, para cual debe ser solicitada la siguiente información: Cédula Nombre Apellidos. Teléfono Correo Electrónico Fecha Nacimiento. El mantenimiento debe permitir ingresar, eliminar, actualizar y consultar la información de los clientes. 2. Cada cliente puede abrir una cuenta bancaria. Para cada cuenta bancaria debe ser almacenada la siguiente información. Número de Cuenta: número de cuenta único asignado por la entidad. La numeración debe ser de 9 dígitos. Saldo actual: saldo actual con que cuenta la tarjeta. La cuenta debe ser abierta con un saldo igual a 0. Pin: clave que será solicitada poder efectuar un retiro de efectivo. Este valor debe ser numérico de 4. La primera vez debe ser generado de forma automática y enviada por correo electrónico del cliente. 1 El mantenimiento debe permitir ingresar, eliminar, actualizar y consultar la información de la Tarjetas. Importante tomar en cuenta que una cuenta/tarjeta no podrá ser eliminada o actualizada si ya cuenta con saldo disponible. 3. Mantenimiento denominaciones: el sistema debe permitir incluir la cantidad de billetes con que cuenta el cajero. Las posibles denominaciones son: a. 20 mil b. 10 mil c. 5 mil d. 2 mil e. 1 mil 4. Se debe contar con un módulo para efectuar depósitos o retiros de efectivo. Para ello se deben tener en cuenta las siguientes consideraciones. a. El usuario debe digitar el número de cuenta y el pin correspondientes a la misma. La primera vez que entre el usuario a realizar una transacción se le debe solicitar cambiar el PIN. b. Si los datos son correctos, se debe presentar los datos personales del cliente. i. Cédula ii. Nombre iii. Apellidos iv. Número de cuenta. v. Saldo Actual c. El cliente debe indicar si desea efectuar un retiro o depósito de dinero. d. Si el usuario selecciona deposito, el sistema aumenta el saldo actual del cliente. e. Si el usuario requiere efectuar un retiro de la cuenta, el sistema debe disminuir el saldo. Se debe tomar en cuenta que no se debe permitir retirar más del monto actual en la cuenta. Adicional el sistema debe validar que el cajero cuente con el saldo requerido para poder dispensar el dinero. f. En caso de retiro de efectivo el sistema debe indicar la cantidad de billetes que serán dispensados, así como la denominación de los mismos. Adicional debe rebajar la cantidad de billetes disponibles según las denominaciones dispensadas. 2 g. El sistema siempre debe dispensar el dinero en la mayor denominación posible. Ejemplo, el usuario desea retirar 17,000.00, entonces el sistema indica que se le será entregado la siguiente cantidad de billetes i. 1 de 10,000.00 ii. 1 de 5,000.00 iii. 1 de 2,000.00 h. Cada vez que el usuario realizar una transacción se le debe enviar una notificación por correo electrónico detallando la fecha y hora, el saldo anterior, monto transacción y el nuevo saldo. 5. Módulo Estadísticas: el sistema debe proveer un módulo de estadísticas, por medio del cual se puede calcular y consultar la siguiente información: a. Monto Promedio Depósitos b. Monto Promedio Retiros. c. Monto Máximo Retiro d. Monto máximo depósito. Para manejar esta información se deben definir las clases adecuadas, para lo que debe utilizar el concepto abstracción de la programación orientada a objetos Recuerde realizar todas las validaciones del caso y retornar un mensaje de error apropiado para cuando los datos de entrada no se encuentren en el formato adecuado y/o para cuando la operación que se vaya a realizar no pueda ser ejecutada. Las estructuras a manejar deben ser en memoria. FORMA DE CALIFICAR La calificación del proyecto será dividida dos partes. Un 80% correspondiente a la programación y un 20% para la defensa del proyecto. No se permitirá copias entre los grupos, ni de Internet. Cada uno deberá desarrollar su propio proyecto. En caso que se encuentre una copia, la asignación será eliminada para ambos grupos. La tabla de calificación del proyecto es la siguiente: 3 Item Mantenimiento Clientes Ingresar Eliminar Actualizar Consultar Validaciones Cliente No Existe Datos Entrada (Email, FecNacimiento) Diseño Clases Mantenimiento Cuentas Ingresar Eliminar Actualizar Consultar Generación Automática PIN Validaciones Cliente Existe Cuenta 9 Dígitos/Unica Tarjeta única Diseño Clases Mantenimiento Denominaciones Ingresar Actualizar Consultar Validaciones Diseño Clases Módulo Cajero Cambio Automático PIN Deplegar Datos Depósito Efectivo Retiro Efectivo Desplegar denominaciones Notificación Correo Electrónico Validación Datos proceso Diseño Clases Funcionalidad Usuario Módulo Estadísticas Promedio Retiros Promedio Depósitos Monto Máximo Valor Obtenido 37.5 5 2.5 5 5 5 0 0 0 0 0 0 0 5 10 0 0 42.5 5 2.5 2.5 2.5 5 0 0 0 0 0 0 5 5 5 10 0 0 0 0 7.5 1.5 1.5 1 1 2.5 0 0 0 0 0 0 72.5 5 5 7.5 10 10 10 5 10 10 0 0 0 0 0 0 0 0 0 0 10 2.5 2.5 2.5 0 4 Monto Mínimo 2.5 Total 170 0 ¡Suerte! 5