Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Simulador de Finanzas
Equipo de Trabajo:
Duran Acevedo Michael Daniel, Ramos Fabián Alexander, Perilla John Edwin
TABLA DE CONTENIDO
TABLA DE
CONTENIDO........................................................................................................................
............. 2
LISTADO DE
FIGURAS..............................................................................................................................
.......... 4
LISTADO DE
TABLAS................................................................................................................................
.......... 5
SECCION 1: DESCRIPCIÓN DEL
DOCUMENTO..................................................................................... 6
(Listado de documentos relevantes, utilizados durante el desarrollo de la arquitectura) 7
SECCION 2: GENERALIDADES DEL
PROYECTO.................................................................................. 8
2.1 Problema a
Resolver.............................................................................................................................. 8
2.2 Descripción General del Sistema a Desarrollar....................................................................
8
2.3
Objetivos................................................................................................................................
........................ 9
Objetivos en términos de gestión de información................................................................. 9
Objetivos en términos de valor agregado ofrecido al usuario o al negocio........ 9
2.4
Stakeholders...........................................................................................................................
.................. 10
SECCION 3: MOTIVADORES Y FUERZAS
EXTERNAS.................................................................... 12
3.1 Motivadores de
Negocio................................................................................................................... 12
3.2
Restricciones..........................................................................................................................
.................. 13
Restricciones de
Tecnología............................................................................................................. 13
Restricciones de
Negocio..................................................................................................................... 13
SECCION 4:
CONTEXTO..........................................................................................................................
......... 14
4.1 Escenarios
Operacionales................................................................................................................ 14
4.3 Casos de
Uso.........................................................................................................................................
... 15
SECCION 5: REQUERIMIENTOS DE
CALIDAD................................................................................... 18
5.1 Árbol de
Utilidad..................................................................................................................................
18
5.2 Escenarios de Calidad
Priorizados........................................................................................... 19
SECCION 6: PUNTOS DE
VISTA................................................................................................................. 21
6.1 Punto de Vista
Funcional................................................................................................................. 21
6.1.1 Modelo de
Componentes........................................................................................................ 21
6.2 Punto de Vista de
Despliegue........................................................................................................ 22
6.2.1 Modelos de Plataforma de Ejecución..............................................................................
22
6.2.3 Modelos de
Red............................................................................................................................ 24
6.3 Punto de Vista de
Información..................................................................................................... 25
6.3.1
Descripción............................................................................................................................
.......... 25
6.3.2.1. Modelos de Estructuras (Conceptual-Clases)..................................................... 26
6.3.2.2. Modelos de Estructuras Estáticas de Datos........................................................... 27
6.3.3 Modelos de Flujo de Información.....................................................................................
28
6.4 Punto de Vista de
Concurrencia.................................................................................................. 30
6.4.1
Descripción............................................................................................................................
.......... 30
6.4.2 Modelo de
Concurrencia......................................................................................................... 30
SECCION 7: RELACIONES ENTRE LOS PUNTOS DE
VISTA..................................................... 31
SECCION 8: RETOS Y
FUTURO................................................................................................................... 33
LISTADO DE FIGURAS
LISTADO DE TABLAS
Durante el desarrollo del documento se ilustran las decisiones de arquitectura que responden
a las necesidades, intereses y expectativas de cada interesado en el proyecto, entre
quienes se encuentran:
1.3 Convenciones
(Descripción de las notaciones y símbolos utilizados en este documento)
· Simulación
· Modelo de composición
· Metho Ontology
· Ontología
· Web Semántica
· Software
· Aplicación Mobil
· Base de datos
· Tabla
· campo
En la actualidad se presenta una problemática latente en las finanzas de las personas naturales, esto
debido a que no saben cómo administrar su dinero, pierden la noción de la relación del gasto.
Según (Mejía, Pallotta, Egúsquiza, & Farnè , 2015), quienes realizaron una encuesta en la cual
fueron consultados un grupo de 1.726 nacionales de todos los niveles socioeconómicos para
analizar y determinar cómo organizan sus finanzas personales. Los resultados no fueron los
mejores, pese a que se tiene un conocimiento básico sobre finanzas y son de
conocimiento popular algunas buenas prácticas como la importancia de ahorrar,
elaborar un presupuesto y ceñirse a este, el sondeo arrojó que el 85% de
encuestados manifiestan tener control y disciplina sobre sobre el manejo de su
dinero, sin embargo la encuesta permitió determinar que una suma menor a la
mitad sabe cuánto gastó hace una semana. El 95 % dijo planificar el uso de sus
ingresos; pero contrario a esto, el 47 % no tiene idea de cuánto tiene para sus
gastos diarios. Finalizando el 89 % dice haber aprendido a manejar su dinero
viendo los errores de los demás; no obstante, solo el 24 % está en capacidad de
cubrir gastos imprevistos.
2.3 Objetivos
Desarrollar un software basado en modelo estadístico. Esta aplicación estará en la capacidad de
organizar un presupuesto para personas naturales según ingresos, egreso, donde se tendrá la
posibilidad de generar un reporte con los estados de cuenta.
1. Diseñar un modelo de conocimientos basado en negocios y economía para estandarizar los
conceptos y generar flujos de proceso más estables capaces de asesorar a los usuarios en las
decisiones relacionadas con el dinero que este cuenta, gasta o invierte, además de proponer una
alternativa a la compra comercial común generando un ambiente para el cambio, compra o venta
de artículos.
2. Establecer una semántica común para realizar la abstracción pura de conocimientos relacionados a
los negocios y la economía de las personas que realizan consultas, además de hacer el debido
tratamiento a la información mediante las siguientes tecnologías:
● RDF: Para la lectura y escritura en un mismo idioma o lenguaje.
● SPARQL: Diseño de consultas para la extracción de información
● OWL: El cual permite generar razonamiento sobre los datos o información captados.
3. Diseñar un prototipo de software para que pueda ser evaluado como una versión beta en
demo donde se pueda ingresar datos de sueldo y gastos realizados.
· Desarrollar un documento de arquitectura claro que pueda ser utilizado por un equipo
de desarrollo de Software para implementar la aplicación siguiendo un ciclo de vida en
cascada.
· Responder a los motivadores de negocio con una arquitectura que favorezca los
atributos de calidad principales, teniendo en cuenta los límites impuestos por las
restricciones de negocio.
2.4 Stakeholders
Personas con vehículo particular que se Este grupo de interesados esperan obtener información de
movilizan con frecuencia por la zona valor para la selección de parqueaderos (Ubicación,
centro requiriendo estacionamiento. Disponibilidad, Tarifas, Características, Horarios, Servicios
Adicionales, etc.).
Administradores y operadores del Este grupo espera una arquitectura que considere aspectos
sistema. de operación y administración lo suficientemente claros para
facilitar su trabajo.
Estrategias a Seguir
Facilitar al usuario final la identificación de parqueaderos cercanos con disponibilidad, dando a conocer
las características y servicios del valor agregado de cada parqueadero.
Ninguno 0% 20%
Bajo 21% 40%
3.2 Restricciones
(Esta secció n describe las restricciones de tecnología y de negocio impuestas por la
organizació n o el contexto del problema)
Restricciones de Tecnología
Alternativas:
Observaciones:
Ninguna
Restricciones de Negocio
ID Restricción: Nombre: Tiempo de Desarrollo Tipo:
Tecnología ( ) Negocio
( X ) |+-
*|741856
Descripción: El tiempo de desarrollo no debe superar dos meses y la palicacion estar en lenguaje java
Alternativas: Ninguna
Observaciones: Ninguna
SECCION 4: CONTEXTO
Descripción general de la El Administrador del parqueadero, podrá actualizar los datos del parqueadero,
funcionalidad dando a conocer sus servicios de valor agregado y diferenciadores. Así como
gestionar las reservar en línea realizadas por los clientes.
El administrador de aplicacion financial Advisor podra actualizar y aprobar
los usuarios registrados, así mismo gestionar y los reportes finales al cliente.
Describa cualquier entrada El Administrador del parqueadero proveerá los datos asociados al parqueadero.
provista o disponible al momento El registro inicial del parqueadero será realizado por el Administrador del
del inicio sistema al momento de la afiliación.
Describa cómo el sistema debe El sistema debe almacenar los datos del usuario y mostrarlos cuando un cliente
responder consulte su información.
Describa las salidas que el sistema Visualización de los datos del presupuesto y generar un reporte de los estados
produce como resultado de la de cuenta del cliente con los gastado vs sus ingresos .
acción
Describa quién o qué usa la salida La Aplicación es usada por personas naturales para control y gestión de gastos
y para que es utilizada personales.
Descripción:
Provee:
Información actualizada sobre el parqueadero (s) a cargo
Requiere:
Herramienta de marketing y gestión de ocupación que le permita optimizar su eficiencia operacional.
Casos de Uso: CU-02, CU-07
Descripción:
Usuario final del sistema, que se moviliza en su vehículo
Provee:
Información de localización (Latitud, Longitud)
Requiere: Información fiable y oportuna en tiempo real sobre los parqueaderos a una dirección de
interés.
Título del Caso de Uso Administrar Usuarios del Sistema ID del Caso de Uso CU-01
Entidades Involucradas
Precondiciones
Título del Caso de Uso Ingresar al Sistema ID del Caso de Uso CU-02
Entidades Involucradas
Precondiciones
Usuario en línea.
Caminos de Excepción
Entidades Involucradas
Usuario
Precondiciones
Ingresar en el sistema con el rol de administrador del sistema ingresa a la aplicación como usuario final
4 El sistema valida que no se duplique el usuario nos esté duplicado y que se ingresen datos
válidos , si esta correcto retorna un mensaje con el resultado de la transacción.
Caminos de Excepción
N/A
Título del Caso de Uso Ver información de gastos ID del Caso de Uso CU-04
Este caso describe cómo se puede ver la información de los ingresos vs egresos, según los criterios de
búsqueda
Entidades Involucradas
Cliente
Precondiciones
Usuarios creados en sistema, Financial Advisor, información sobre disponibilidad de recursos (saldo de
dinero)
2 El sistema muestra un reporte con los ingresos vs los egresos registrados por el usuario.
4 El sistema discrimina en el reporte los datos de ingresos por dia y los gastos realizados por el
usuario con días de ejecución.
Caminos de Excepción
N/A
Título del Caso de Uso configuración de perfil ID del Caso de Uso CU-06
Entidades Involucradas
Usuario
Precondiciones
1 El usuario ingresa las fechas de corte y define los periodos (quincenal o mensual)
Caminos de Excepción
N/A
Título del Caso de Uso Notificación de alertas ID del Caso de Uso CU-05
Este caso describe cómo se generan notificaciones o alertas al usuario sobre su flujo de efectivo donde
el cliente puede estar enterado de cuánto dinero le queda.
Entidades Involucradas
Usuario
Precondiciones
1 El sistema genera una alerta los últimos 5 dias o segun periodo asignado por el usuario
2 Sistema muestra un mensaje indicando que está próximo a llegar al límite de efectivo
Caminos de Excepción
(Esta sección presenta los puntos de vista de la arquitectura del sistema. Comenzando por una breve
descripción de la estrategia arquitectural y un diagrama de contexto que muestre claramente la
frontera del sistema. Es importante identificar en este diagrama de contexto los sistemas externos
con los que se debe interactuar.)
En el anterior diagrama de manera similar al anterior, se muestran como nodos cada uno de
los equipos que pueden conectarse para participar en el servicio.
· Nodo equipo cliente: es el que representa a cada dispositivo móvil o PC, desde el cual
se hacen consultas al sistema. Posee varios componentes de software, pero solo se
destaca en el diagrama el navegador en internet, desde el cual es accede a las
capacidades del sistema.
· Nodo equipo administrador parqueadero: es el que representa a cada equipo desde el
cual el administrador de cada parqueaderos administra su parqueadero. Posee varios
componentes de software, pero solo se destaca en el diagrama el navegador en internet,
desde el cual es accede a las capacidades del sistema.
· Nodo equipo servidor principal: es el que representa a cada equipo desde el cual el
administrador general administra el sistema; allí también están las bases de datos,
librerías, etc. Posee varios componentes de software, pero solo se destaca en el diagrama
sistema como un componente compuesto de otros.
6.3.1 Descripció n
Teniendo en cuenta que los elementos del mundo real se representan en los mapas como:
· Líneas – Elemento grá fico usado como la mínima expresió n espacial, que
define un lugar geométrico. No tiene longitud ni á rea - Escala: 1:20m, Precisió n:
2m de error. Proyecció n: Mercator – costo 0. Se consigue mediante mapas
físicos/electró nicos o en el sitio y registrando las coordenadas en GPS (WGS84)
· Puntos – Elemento grá fico compuesto por uno o varios segmentos
consecutivos, delimitado por un nodo inicio y un nodo fin, que no involucra el
concepto de á rea, solo longitud. - Escala: 1:20m Precisió n: un radio de 30m a la
redonda del sitio. Proyecció n: Mercator – costo: 0, Se consigue mediante mapas
físicos/electró nicos o en el sitio y registrando las coordenadas en GPS
· Polígonos – Elemento grá fico definido por un conjunto de líneas
consecutivas, cerrado y que involucra el concepto de á rea. Tiene longitud
correspondiente a su perímetro y á rea.
· Fotos – Elemento para que el cliente identifique el parqueadero cuando
llegue no solo con la ubicació n suministrada por el sistema. Costo NA
· Horarios, tarifas, convenios. Visita a parqueaderos.
Para representar esta la información, se modela el negocio por medio de las siguientes clases:
Reserva: representa la información de cada reserva hecha por u cliente sobre un lugar en un
parqueadero después de la búsqueda.
Tarifa: representa la información de las tarifas usadas para cobro en cada parqueadero.
Mapa: Representa un mapa con la información necesaria para ver cuadras, calles y puntos
importantes (parqueaderos).
Histórico: Representa la infamación histórica que se tiene por cada parqueadero en cuanto a
reservas realizadas mediante el uso del sistema
Diagrama de Clases
Reservas: representa la información de cada reserva hecha por u cliente sobre un lugar en un
parqueadero después de la búsqueda.
Usuarios:
Perfiles:
Promociones:
Tarifas: representa la información de las tarifas usadas para cobro en cada parqueadero.
Tarifas_Parqueaderos
Caracteristicas:
Caracteristicas_Parqueaderos:
Histórico: Representa la infamación histórica que se tiene por cada parqueadero en cuanto a
reservas realizadas mediante el uso del sistema
Actividades conductor
Actividades parqueadero
Actividades Administrador
6.4.1 Descripció n
Aquí lo que se quiere para manejar la concurrencia es establecer dos escenarios de servicio
necesariamente complementarios: uno será para proveer funcionalidad para mapas, donde la
concurrencia será manejada por el contenedor de jsp’s. El otro escenario quiere manejar el flujo de
mensajes que ocurrirá cada vez que los parqueaderos quieran actualizar el cupo del parqueadero.
La idea es tener un servicio web asíncrono empotrado en el sistema de administración del
parqueadero, el cual enviara un mensaje a infoParking cada vez que ingresa o sale un carro del
parqueadero. Se quieren usar beans de mensajería, los cuales necesariamente son asíncronos y
hacen que el flujo de mensajería se acumule en una cola para ir atendiendo a los mensajes de uno
en uno.
- Estrategias en el diseño de la multitarea
El acceso a un agente debe considerarse como un punto crucial concurrente, por tanto su acceso
debe sincronizarse.
Se plantea el uso de colas de mensajes, tipo publicador/subscriptor con validación de aceptación,
tolerancia a fallas, reintentos y serialización local.
- Abrazos mortales
Para evitar posibles escenarios de abrazos mortales, se optó por el mecanismo de colas de
mensajes para la publicación en el repositorio central, y en los instrumentos de exclusión mutua
(Mutex) en los agentes locales se evitará el uso de recursos comunes que puedan ocasionar una
condición de carrera entre las aplicaciones.
Modelo de concurrencia
SECCION 7: RELACIONES ENTRE LOS PUNTOS DE VISTA
El objetivo de las diferentes vistas desarrolladas en este documento es presentar las características de la
arquitectura que son relevantes. Principalmente se construyeron modelos que indican la
información relacionada con el sistema en los diferentes aspectos sobre los cuales tendrá
desempeño tales como: su funcionamiento, la localización de los diferentes componentes en una
determinada infraestructura de despliegue y la comunicación que existe con sistemas externos.
Aquí el punto de vista funcional y el de concurrencia muestran que la arquitectura propuesta define una
estrategia de concurrencia manejada por dos elementos diferentes de acuerdo a la funcionalidad
que provee un grupo de componentes. Una de estas estrategias es dejar que el contenedor de jsp’s
maneje esta concurrencia según sus capacidades propias. La otra estrategia permite establecer una
cola de mensajes para irlos atendiendo poco a poco, sobre todo porque en algunas horas, la
solicitud de atención de estos mensajes podría hacer colapsar al sistema.
Sumado a lo anterior tenemos el punto de vista de despliegue, a través de este podemos ver la
interacción física entre los diferentes elementos de hardware que alojan los componentes de la
aplicación. A través de los modelos de esta vista podemos identificar puntos críticos del sistema
sobre los cuales se deben tomar decisiones tecnológicas para favorecer el desempeño y la
disponibilidad del sistema. Es importante resaltar, que se trabajan estrategias de replicación y
redundancia para la correcta inclusión de la tolerancia a fallas.
Se hace una inclusión mínima del punto de vista de información para mostrar el diseño propuesto,
sobre el cual se edifica el modelo relacional implementado en la Base de Datos como mecanismo
principal de persistencia.
En resumen, las vistas ilustran el comportamiento del sistema principalmente bajo el escenario de
comunicación de alarmas y su interacción con otros sistemas a diferentes niveles de abstracción.
Se tuvieron en cuenta algunos de los retos planteados con el fin de conseguir una herramienta útil y de
fácil operación, de tal manera que no necesitara de usuarios expertos.
Algunos retos se cubrieron en la entrega final de forma total o parcial, y algunos se dejan para una
próxima iteración, pensando en la implementación del sistema más allá de lo académico.
· Interoperabilidad:
La interoperabilidad es básica en el sistema: hay un servicio web que se encarga de enviar la
actualización del cupo de los parqueaderos; esta funcionalidad es consumida en el servidor y allí se
encarga de persistir en la base de datos y tratar de forzar una sincronización de los clientes para
mantener o visualizar así la última versión del cupo.
La información geo-espacial será recolectada por la misma empresa a través de quienes tengan el
rol de administrador del sistema, ya que serán los encargados de ingresar la información básica del
parqueadero. La información que el parqueadero tendrá para darnos, es la que provee a través del
web service, y esta será extraída de la base de datos que maneja el sistema de administración del
parqueadero en sí.
La información almacenada en el sistema será la estrictamente necesaria para el negocio, tal como
lo es el nombre, la placa del carro, el rol (dueño, conductor asignado, etc), documentos de
identificación, etc. La administración de InfoParking se encargara de velar cuidadosamente de
estos datos y no permitirá comercializarlos bajo ningún pretexto.
[S1]???
[S2]???