0% encontró este documento útil (0 votos)
7 vistas4 páginas

Análisis y Diseño de Cajero Automático

El informe presenta el análisis y diseño de un sistema de cajero automático que permite a los clientes realizar operaciones bancarias básicas de manera segura y eficiente, utilizando programación orientada a objetos y diagramas UML. El sistema incluye mecanismos de autenticación, límites de retiro y un diseño modular que facilita la incorporación de nuevas funcionalidades. Se concluye que el sistema es escalable, confiable y protege la información de los usuarios.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
7 vistas4 páginas

Análisis y Diseño de Cajero Automático

El informe presenta el análisis y diseño de un sistema de cajero automático que permite a los clientes realizar operaciones bancarias básicas de manera segura y eficiente, utilizando programación orientada a objetos y diagramas UML. El sistema incluye mecanismos de autenticación, límites de retiro y un diseño modular que facilita la incorporación de nuevas funcionalidades. Se concluye que el sistema es escalable, confiable y protege la información de los usuarios.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Análisis y Diseño del Sistema: Cajero Automático

Gabriel Orlando Villota – 20241020064

José Vicente Antonio de Jesús González Carrillo – 20242020255

Luna Alejandra Rodríguez Rojas – 20241020058

1. Introducción

El presente informe tiene como objetivo analizar y diseñar un sistema de cajero automático
(ATM) que permita a los clientes de un banco realizar operaciones básicas como retirar e
ingresar dinero, manteniendo altos niveles de seguridad y confiabilidad. El desarrollo del
sistema se plantea bajo el paradigma de la programación orientada a objetos, con el fin de
garantizar la modularidad, escalabilidad y posibilidad de integración de nuevas
funcionalidades a futuro, como la consulta de saldo o la compra de servicios.

La propuesta se modela a través de los principios de análisis y diseño de sistemas, haciendo


uso de diagramas UML para representar la estructura conceptual, los actores y las
interacciones del sistema.

2. Análisis del Sistema

El sistema propuesto responde a la necesidad del banco de ofrecer a sus clientes una
herramienta segura y eficiente para realizar operaciones financieras de manera autónoma.
El cajero automático actúa como un intermediario entre el cliente y la base de datos del
banco, garantizando que las operaciones se ejecuten de forma correcta y segura.

Cada cliente del banco puede poseer múltiples cuentas, pero cada cuenta puede estar
asociada únicamente a una tarjeta de débito. Dicha tarjeta es de uso personal y está
protegida por un número de identificación personal (PIN). Para evitar fraudes, el sistema
solo permitirá tres intentos fallidos de ingreso del PIN, tras los cuales la tarjeta será
bloqueada automáticamente.

Además, el sistema implementa un límite máximo de retiro diario, configurable por el


banco, con el fin de controlar el flujo de efectivo y prevenir el uso indebido de las cuentas. Si
el cliente intenta superar ese límite, el cajero rechazará la operación, notificando la causa
del error.

El proceso operativo general es el siguiente:


1. El cliente inserta su tarjeta en el cajero.

2. El sistema lee la información de la tarjeta y solicita la clave personal (PIN).

3. Si la autenticación es correcta, el sistema despliega un menú de opciones.

4. El cliente selecciona la operación deseada (retirar dinero, depositar, consultar saldo,


etc.).

5. El cajero ejecuta la transacción y actualiza el saldo de la cuenta correspondiente en


la base de datos del banco.

6. En caso de fallar tres veces al ingresar la clave, la tarjeta se bloquea


automáticamente.

El sistema debe garantizar la integridad, confidencialidad y disponibilidad de la información


bancaria. Por ello, se implementan mecanismos de autenticación segura, encriptación de
datos y validaciones en cada transacción.

3. Diseño del Sistema

El diseño del sistema se estructura bajo una arquitectura modular basada en clases, cada
una con funciones y responsabilidades específicas. El enfoque orientado a objetos permite
representar cada elemento del sistema (cliente, tarjeta, cuenta, cajero, etc.) como una
entidad independiente que interactúa con las demás mediante métodos definidos.

3.1 Clases Principales del Modelo

1. Cliente:
Representa al usuario del banco. Contiene los datos personales y las cuentas que
posee.

o Atributos: nombre, identificación, listaCuentas.

o Métodos: autenticar(), seleccionarCuenta().

2. Cuenta:
Modela las cuentas bancarias asociadas al cliente.

o Atributos: númeroCuenta, saldo, límiteRetiroDiario.

o Métodos: retirarDinero(), depositarDinero(), verificarSaldo().

3. Tarjeta:
Representa el medio físico de acceso del cliente.

o Atributos: númeroTarjeta, PIN, estado (activa o bloqueada).


o Métodos: validarPIN(), bloquearTarjeta().

4. CajeroAutomático:
Gestiona la interacción con el cliente y las operaciones solicitadas.

o Atributos: idCajero, ubicación, efectivoDisponible.

o Métodos: insertarTarjeta(), leerPIN(), mostrarMenú(),


procesarTransacción().

5. Transacción:
Representa las operaciones realizadas por los usuarios.

o Atributos: tipoTransacción, monto, fecha.

o Métodos: ejecutar(), cancelar().

6. Banco:
Entidad principal que gestiona clientes, cuentas y operaciones.

o Atributos: nombre, listaClientes, listaCuentas.

o Métodos: buscarCliente(), verificarCuenta(), actualizarSaldo().

4. Casos de Uso del Sistema

Los principales actores del sistema son el Cliente, el Cajero Automático y el Banco.

• El Cliente realiza las acciones de insertar la tarjeta, introducir la clave, seleccionar


una operación y confirmar la transacción.

• El Cajero Automático se encarga de validar los datos, procesar las operaciones y


mostrar mensajes o advertencias.

• El Banco valida la autenticidad de las cuentas, aplica límites de retiro y actualiza la


información financiera.

Estos actores se relacionan a través de casos de uso que incluyen:

• Autenticar usuario.

• Retirar dinero.

• Depositar dinero.

• Consultar saldo (futuro).

• Bloquear tarjeta (por intentos fallidos).


5. Diseño Modular y Extensibilidad

El sistema está diseñado para facilitar la expansión de sus funcionalidades sin afectar su
estructura principal. Cada nueva operación puede implementarse como una subclase de la
clase Transacción, respetando el principio de extensibilidad de la programación orientada a
objetos.

Esto permite agregar nuevas opciones como el pago de servicios, transferencia entre
cuentas o compra de entradas sin alterar el código base del sistema. Además, la
independencia entre módulos permite mantener el principio de bajo acoplamiento y alta
cohesión, garantizando un mantenimiento más sencillo y una evolución controlada.

6. Conclusiones

El sistema de cajero automático diseñado ofrece una solución estructurada, segura y


escalable para la gestión de operaciones bancarias básicas. Mediante el uso de principios
orientados a objetos y la modelación UML, se logra una arquitectura flexible capaz de
adaptarse a las necesidades del banco y de los usuarios.

La integración de mecanismos de seguridad, como la validación de PIN, el bloqueo de


tarjetas y los límites diarios de retiro, refuerzan la confiabilidad del sistema y protegen los
datos de los clientes. Finalmente, su diseño modular permite incorporar nuevas
funcionalidades sin modificar las ya existentes, garantizando su sostenibilidad a largo plazo.

7. Diagramas:

En la carpeta comprimida adjunta se encuentra cada uno de los diagramas


desarrollados para esta Actividad.

También podría gustarte