Programación - ISPC-Vanguard-Systems/ARG-Broker GitHub Wiki
🚀 Programación - ISPC VANGUARD SYSTEM
Basándose en los requerimientos funcionales del proyectoARGBroker Demo, se solicita:
📍 Identificar las clases del sistema, atributos y métodos.
Estas son las Clases, Atributos y Métodos Identificados:
🚧 Clase Usuario
Usuario
nombre: string
apellido: string
email: string
miPortafolio: Portafolio
getNombre(nombre: String): void
obtenerPortafolio()
🚧 Clase Portafolio
Portafolio
totalInvertido: float
saldoCuenta: float
numeroAccionesCompradas: int
valorComprometido: float
ganancia: float
perdida: float
moneda: Moneda
acciones: array[Accion]
getNombre(nombre: String): void
getTotalInvertido()
getSaldoCuenta()
getNumeroAccionesCompradas()
getValorComprometido()
getGanancia()
getPerdida()
getMoneda()
calcularTotalInvertido()
calcularSaldoCuenta()
calcularNumeroAccionesCompradas()
calcularGanancia()
calcularPerdida()
conocerMoneda()
conocerAccion()
🚧 Clase Acción
Accion
ultimaOperacion: float
variacionDiaria: float
cantidadCompradaDiaria: int
precioaActualVenta: float
precioActualCompra: float
precioApertura: float
precioMinimoDelDia: float
precioMaximoDelDia: float
ultimoCierre: float
montoTotalOperado: float
operacion: Operacion
empresa: Empresa
getUltimaOperacion()
getCantidadCompradaDiaria()
getVariacionDiaria()
getPrecioActualVenta()
getPrecioActualCompra()
getPrecioApertura()
getPrecioMinimoDelDia()
getPrecioMaximoDelDia()
getUltimoCierre()
calcularVariacionDiaria()
calcularMontoTotalOperado()
conocerOperacion()
conocerEmpresa()
🚧 Clase Moneda
Moneda
nombre: string
descripcion: string
paisEnQueOpera: Pais
getNombre(nombre: String): void
conocerPais()
🚧 Clase Pais
Pais
nombre: string
descripcion: string
getNombre()
🚧 Clase Empresa
Empresa
nombre: string
descripcion: string
simbolo: string
pais: Country
direccion: string
getNombre(nombre: String): void
getSimbolo()
conocerPais()
🚧 Clase Broker
Broker
nombre: string
comision: float
calcularComision()
🚧 Clase Operación
Operacion
nombre: string
descripcion: string
getNombre(nombre: String): void
📍 Nombrar las clases, atributos y métodos en base a la nomenclatura acordada con el equipo.
La Nomeclatura que se decidio utilizar con el equipo de trabajo es la siguiente:
Clases: Nombres en mayúscula inicial y concatenación de palabras con mayúscula inicial (CamelCase).
Atributos: Nombres en minúscula inicial, usando camelCase.
Métodos: Nombres en minúscula inicial, usando camelCase.
Constantes: Nombres en mayúscula con guiones bajos para separar palabras.
📍 Identificar las relaciones entre clases.
Un usuario (Usuario) tiene un portafolio (Portafolio).
Un portafolio tiene una o más acciones (Accion), a su vez trabaja con una moneda (Moneda).
Una moneda (Moneda) opera en un país (Pais).
Una acción (Accion) pertenece a una compañía (Empresa), asimismo a cada acción se le puede realizar una operación (Operacion) que puede ser de compra o venta.
Por último, el Broker cobra de cada operación realizada sobre las acciones una comisión (comision) que es del 1,5% del total del importe operado.
📍 Realizar el diagrama de clases mediante herramientas como draw.io, lucidchart, creately, miro u otro.