0% encontró este documento útil (0 votos)
23 vistas13 páginas

Final 2dobi

El documento presenta un trabajo final sobre el diseño de un sistema de procesamiento de pagos digitales para 'TechCommerce', incluyendo tarjetas CRC, diagramas de clases, componentes y despliegue. Se detalla la arquitectura candidata, abordando aspectos como seguridad de datos, escalabilidad y compatibilidad con dispositivos móviles. Además, se incluyen referencias y evidencia del proceso de desarrollo.

Cargado por

by FAT
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)
23 vistas13 páginas

Final 2dobi

El documento presenta un trabajo final sobre el diseño de un sistema de procesamiento de pagos digitales para 'TechCommerce', incluyendo tarjetas CRC, diagramas de clases, componentes y despliegue. Se detalla la arquitectura candidata, abordando aspectos como seguridad de datos, escalabilidad y compatibilidad con dispositivos móviles. Además, se incluyen referencias y evidencia del proceso de desarrollo.

Cargado por

by FAT
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

I

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA


Facultad de Ingenierías y Arquitectura
Carrera de Ingeniería en Tecnologías de la Información

Erick Sánchez
Abril - Agosto 2024

Trabajo final
II

Índice de contenido

Índice de contenido ............................................................................................................................... II


Tarjetas CRC (Clases candidatas).....................................................................................................3
1.1.1 Clase 1: <<Usuario >> ................................................................................ 3

1.1.2 Clase 2: << Método de pago>> .................................................................. 3

1.1.3 Clase N: << Transacción>> ........................................................................ 3

Diagrama de clases ................................................................................................................................4


1.1.4 EXPLICACIÓN DEL DIAGRAMA: Explicación del Diagrama .................... 4

1.1.5 Relaciones................................................................................................... 5

Diagrama de componentes .................................................................................................................6


Diagrama de depliegue ........................................................................................................................7
1.1.6 Relaciones................................................................................................... 8

Arquitectura candidata ..................................................................................................................... 10


1.1.7 Explicación de la Arquitectura Candidata ............................................... 10

[Link] 1. Plataforma de Desarrollo .................................................................................................................... 10

[Link] 2. Seguridad de Datos................................................................................................................................ 10

[Link] 3. Escalabilidad............................................................................................................................................ 10

[Link] 4. Compatibilidad con Dispositivos Móviles ...................................................................................... 10

[Link] 5. Integración con Servicios de Terceros ............................................................................................ 10

[Link] 6. Tiempo de Respuesta ........................................................................................................................... 11

[Link] 7. Monitoreo y Registro de Errores ...................................................................................................... 11

1.1.8 Conclusión ................................................................................................ 11

Referencias ............................................................................................................................................. 11
Evidencia ................................................................................................................................................. 12
Tarjetas CRC (Clases candidatas)

Ubicar todas las clases identificadas en formato CRC

1.1.1 Clase 1: <<Usuario >>

Usuario
RegistrarUsuario Métodos de Pago
AutenticarUsuario Notificaciones
GestionarMetodosPago
1.1.2 Clase 2: << Método de pago>>

Método de pago
Procesar Pagos Usuario
Manejar Autorizaciones Transacción
Captura Fondos y Cancelaciones
1.1.3 Clase N: << Transacción>>

Transacción
RegistrarTransacciones Notificaciones
EnviarNotificaciones Métodos de Pago
GestionarErrores
Diagrama de clases

1.1.4 EXPLICACIÓN DEL DIAGRAMA: Explicación del Diagrama

El diagrama de clases diseñado para el sistema de procesamiento de pagos digitales de


"TechCommerce" incluye las siguientes clases y sus relaciones:

1. Usuario
o Atributos:
 nombre: El nombre del usuario.
 correoElectronico: El correo electrónico del usuario, utilizado para el
registro y autenticación.
 contrasena: La contraseña del usuario, almacenada de forma segura.
o Métodos:
 registrarUsuario(): Permite a un nuevo usuario registrarse en el
sistema.
 autenticarUsuario(): Permite a un usuario autenticarse en el sistema
utilizando su correo electrónico y contraseña.
 gestionarMetodosPago(): Permite a un usuario agregar, eliminar y
actualizar sus métodos de pago.
2. MetodoDePago
o Atributos:
 tipo: Tipo de método de pago, como "Tarjeta de Crédito" o "Cuenta
Bancaria".
 detalles: Detalles del método de pago, como el número de tarjeta.
o Métodos:
 procesarPago(): Procesa un pago utilizando el método de pago.
 manejarAutorizaciones(): Maneja la autorización de pagos.
 capturaFondosYCancellaciones(): Gestiona la captura de fondos y la
cancelación de transacciones.
3. Transaccion
o Atributos:
 monto: El monto de la transacción.
 fecha: La fecha de la transacción.
 estado: El estado de la transacción, como "Pendiente", "Completada" o
"Cancelada".
o Métodos:
 registrarTransaccion(): Registra una nueva transacción en el sistema.
 enviarNotificaciones(): Envía notificaciones relacionadas con la
transacción.
 `gestionarErrores(): Maneja errores que puedan ocurrir durante el
procesamiento de la transacción.
4. Notificacion
o Atributos:
 destinatario: El destinatario de la notificación.
 mensaje: El mensaje de la notificación.
o Métodos:
 enviarEmail(): Envía un correo electrónico al destinatario.
 actualizarEstado(): Actualiza el estado de la notificación.

1.1.5 Relaciones

 Usuario tiene una relación uno a muchos con MetodoDePago, indicando que un
usuario puede tener múltiples métodos de pago.
 Usuario tiene una relación uno a muchos con Transaccion, indicando que un usuario
puede realizar múltiples transacciones.
 Transaccion tiene una relación uno a muchos con Notificacion, lo que significa que
una transacción puede generar múltiples notificaciones.
 MetodoDePago tiene una relación uno a muchos con Transaccion, indicando que un
método de pago puede ser utilizado en múltiples transacciones.
Diagrama de componentes

1. EXPLICACIÓN DEL DIAGRAMA: Aplicación Móvil:


o Cliente que permite a los usuarios interactuar con el sistema de procesamiento de pagos. Los usuarios pueden
registrarse, iniciar sesión, y gestionar métodos de pago.
2. API de Procesamiento de Pagos:
o Backend que maneja todas las solicitudes de la aplicación móvil y coordina las operaciones con otros componentes del
sistema.
3. Servicio de Autentificación:
o Maneja el registro y la autenticación de los usuarios, asegurando que solo usuarios autorizados puedan acceder al
sistema.
4. Gestor de Métodos de Pago:
o Gestiona la adición, eliminación y actualización de los métodos de pago de los usuarios.
5. Gestor de Transacciones:
o Maneja el procesamiento de pagos, incluyendo autorización, captura de fondos y cancelación de transacciones.
6. Sistema de Notificaciones:
o Envía notificaciones a los usuarios sobre el estado de sus transacciones, utilizando el Servicio de Correo.
7. Base de Datos:
o Almacena la información de los usuarios, métodos de pago, y transacciones.
8. Servicios de Pago Externos:
o Plataformas externas (como Stripe y PayPal) que facilitan el procesamiento de pagos. El Gestor de Transacciones se
comunica con estos servicios para completar las transacciones.
9. Servicio de Correo:
o Envío de correos electrónicos a los usuarios, manejado por el Sistema de Notificaciones.

Este diagrama de componentes muestra cómo los diferentes módulos del sistema de procesamiento de pagos digitales de
"TechCommerce" interactúan entre sí y con servicios externos para proporcionar una experiencia de usuario fluida y segura.
Diagrama de despliegue

1. EXPLICACIÓN DEL DIAGRAMA: Usuarios


o Representa a los usuarios que interactúan con la aplicación móvil.
2. Cliente
o Aplicación Móvil: Cliente que permite a los usuarios interactuar con el sistema de procesamiento de pagos,
permitiéndoles registrarse, iniciar sesión y gestionar métodos de pago.
3. Servidor de Aplicaciones
o API de Procesamiento de Pagos: Backend que maneja todas las solicitudes de la aplicación móvil y coordina las
operaciones con otros componentes del sistema.

o Servicio de Autenticación: Maneja el registro y autenticación de los usuarios.


o Gestor de Métodos de Pago: Gestiona la adición, eliminación y actualización de los métodos de pago de los
usuarios.
o Gestor de Transacciones: Maneja el procesamiento de pagos, incluyendo autorización, captura de fondos y
cancelación de transacciones.
o Sistema de Notificaciones: Envía notificaciones a los usuarios sobre el estado de sus transacciones.
4. Base de Datos
o Representa la base de datos donde se almacena la información de los usuarios, métodos de pago y transacciones.
5. Servicios Externos
o Stripe y PayPal: Plataformas externas que facilitan el procesamiento de pagos. El Gestor de Transacciones se
comunica con estos servicios para completar las transacciones.
6. Correo
o Servicio de Correo: Envío de correos electrónicos a los usuarios, manejado por el Sistema de Notificaciones.

1.1.6 Relaciones

 El Usuario se comunica con la Aplicación Móvil.


 La Aplicación Móvil se comunica con la API de Procesamiento de Pagos utilizando HTTPS.
 La API de Procesamiento de Pagos se comunica con sus componentes internos (Servicio de Autenticación, Gestor de
Métodos de Pago, Gestor de Transacciones y Sistema de Notificaciones) utilizando HTTP.
 La API de Procesamiento de Pagos y sus componentes internos acceden a la Base de Datos utilizando JDBC.
 El Gestor de Transacciones se comunica con los Servicios Externos (Stripe y PayPal) utilizando HTTPS para el
procesamiento de pagos.
 El Sistema de Notificaciones se comunica con el Servicio de Correo utilizando SMTP para el envío de correos
electrónicos.
Arquitectura candidata

1.1.7 Explicación de la Arquitectura Candidata


[Link] 1. Plataforma de Desarrollo

 Backend: [Link] es utilizado para desarrollar la API de Procesamiento de Pagos y


otros servicios en el Servidor de Aplicaciones.
 Frontend: [Link] es utilizado para desarrollar la aplicación móvil.

[Link] 2. Seguridad de Datos

 Cifrado de Datos en Reposo y en Tránsito: HTTPS se utiliza para asegurar la


comunicación entre la Aplicación Móvil y el Servidor Nginx, así como entre el Gestor de
Transacciones y los servicios externos como Stripe y PayPal.
 Autenticación: El Servicio de Autenticación maneja la autenticación de usuarios
utilizando técnicas seguras de almacenamiento de contraseñas (como hashing).

[Link] 3. Escalabilidad

 Componentes Separados: Cada componente, como el API de Procesamiento de Pagos,


Servicio de Autenticación, Gestor de Métodos de Pago, y otros, están diseñados como
servicios independientes, lo que permite escalar cada uno por separado según la
demanda.
 Nginx: Actúa como un servidor web y un balanceador de carga para manejar las
solicitudes entrantes y distribuirlas entre los servidores de aplicaciones.

[Link] 4. Compatibilidad con Dispositivos Móviles

 Aplicación Móvil: Desarrollada utilizando React Native, lo que asegura compatibilidad


con dispositivos iOS y Android.

[Link] 5. Integración con Servicios de Terceros

 Stripe y PayPal: El Gestor de Transacciones se comunica con estos servicios de


procesamiento de pagos externos para manejar transacciones de tarjetas de crédito y
otras formas de pago.
[Link] 6. Tiempo de Respuesta

 Optimización: La arquitectura está diseñada para minimizar la latencia con servicios


distribuidos y bases de datos optimizadas para consultas rápidas.
 Servidor Nginx: Utilizado para servir contenido estático rápidamente y manejar
solicitudes HTTP de manera eficiente.

[Link] 7. Monitoreo y Registro de Errores

 Herramientas de Monitoreo: Herramientas como Splunk o Elasticsearch pueden ser


integradas para monitorear el sistema, registrar errores y realizar análisis proactivos.
 Notificaciones: El Sistema de Notificaciones envía alertas sobre el estado de las
transacciones y posibles errores a los usuarios y al sistema de comercio electrónico.

1.1.8 Conclusión

Esta arquitectura candidata aprovecha las tecnologías modernas y se alinea con los requerimientos
no funcionales para ofrecer un sistema de procesamiento de pagos digitales seguro, eficiente y
escalable. Cada componente está diseñado para manejar diferentes aspectos del procesamiento de
pagos, garantizando una experiencia de usuario fluida y segura.

Referencias

Diagrama de clases - [Link]. (2016, 4 diciembre). [Link].

[Link]

Equipo editorial de IONOS. (2020, 23 septiembre). Diagrama de componentes: modelado eficiente

de sistemas con módulos de software. IONOS Digital Guide. [Link]

us/digitalguide/paginas-web/desarrollo-web/diagrama-de-componentes/

Fonseca, L. (2024, 5 enero). 10 ejemplos de diagramas de casos de uso (y cómo crearlos).

Venngage Blog. [Link]

Introducing EDrawMax 10. (s. f.). Edrawsoft. [Link]

[Link]
Evidencia

Por cada actividad debe capturar la pantalla completa de su escritorio, especialmente


donde se evidencie la fecha y hora de la captura para efectos de validación.

También podría gustarte