[[TOC(heading=This section pages, WikiStart, noheading, AnalisisDominio, PropuestaDesarrollo, PlanProyecto, EstandaresDesarrollo, IdentificacionFuncionalidades, Codificacion, PrototipoInterfaz, Pruebas, Liberacion, heading=Tabla de Contenido)]] = Análisis del Dominio = == Funcionalidades == 1.- Cargar matrices de contabilidad social de cualquier tamaño.[[BR]] 2.- Realizar operaciones matriciales como: sumas, restas, inversa, multiplicación (matrizxmatriz, matrizxvector), división, entre otras.[[BR]] 3.- Descargar matrices en formato .csv.[[BR]] == Diagrama de Proceso == === Cargar Matriz === El sistema debe cargar una matriz de contabilidad social, sin importar las dimensiones de estas. Por ello, se presenta a continuación el diagrama de procesos para dicha funcionalidad. {{{ #!plantuml @startuml Partition Cargar Matriz { skinparam titleFontSize 24 (*)-->"Solicitar el número\n de cuentas" -->"Solicitar el delimitador" -->"Solicitar año y país" -->"Solicitar ruta donde\n se encuentra el archivo" -->"Buscar archivo .csv" -->"Identificar primera fila" -->"Colocarla como identificador\n de cada columna" -->"Trasponerla y colocarla como\n identificador de cada fila" -->"Solicitar número de\n celdas que compone cada cuenta" -->"Solicitar nombre\n de cada cuenta" --> "Totalizar las filas y las columnas" -->"Presentar matriz con\n identificadores y nombre de cuentas\n en filas y columnas" --> (*) } @enduml }}} === Coeficientes Técnicos === {{{ #!plantuml @startuml Partition Coeficientes_Tecnicos { skinparam titleFontSize 24 (*)--> IF "¿Coeficientes Técnicos\n horizontales o verticales" then -right--> [Estructura vertical] "Dividir cada celda entre\n el total de la columna" -->"Mostrar los resultados" ELSE -->[Estructura horizontal]"Solicitar ruta donde\n se encuentra el archivo" -->"Buscar archivo .csv" -->"Identificar primera fila" -->"Colocarla como identificador\n de cada columna" -->"Trasponerla y colocarla como\n identificador de cada fila" -->"Solicitar número de\n celdas que compone cada cuenta" -->"Solicitar nombre\n de cada cuenta" --> "Totalizar las filas y las columnas" -->"Presentar matriz con\n identificadores y nombre de cuentas\n en filas y columnas" --> (*) } @enduml }}} === Modelo de Multiplicadores de Leontief === Se activa sólo cuando una matriz esté cargada correctamente. {{{ #!plantuml @startuml Partition Proceso_1 { skinparam titleFontSize 24 (*)-->"Solicitar las cuentas\n y partidas que son endógenas Base" -->"Estimar la matriz de\n Propensiones medias al gasto An\n" -->"Construir una Matriz Identidad I\n de las mismas dimensiones de An" -->"Restar las Matrices I-An" -->"Estimar la inversa de la matriz I-An.\n Matriz de Multiplicadores de Leontief Ma" -->"Mostrar tres iconos en la pantalla\n (Clasificador de Cuentas, Evaluar Escenarios y Exportar)" -->"Mostrar las matrices Base, An, Ma" --> (*) } @enduml }}} === Evaluación de Escenarios === Se activa sólo cuando el usuario presione el icono correspondiente {{{ #!plantuml @startuml Partition Proceso_2 { skinparam titleFontSize 24 (*)-->"Mostrar pestaña con la\n matriz Endógena-Exógena (campos vacíos)" -->"Estimar el monto en que varía\n una cuenta exógena, dado el\n porcentaje de cambio introducido por\n el usuario" -->"Estimar el vector columna x<7b>\n que recoge la suma de las \n inyecciones." -->"Multiplicar la Matriz Ma por \n el vector columna x" -->"Estimar porcentaje de\n cambio del vector ingreso y" -->"Mostrar vector ingreso y y el vector x" --> (*) } @enduml }}} === Clasificación de las Cuentas === Se activa sólo cuando el usuario presione el icono correspondiente {{{ #!plantuml @startuml Partition Proceso_3 { skinparam titleFontSize 24 (*)-->"Sumar cada una de las\n filas de la matriz Ma" -->"Almacenar vector columna\n los resultados ea" -->"Sumar cada una de las\n partidas que componen las cuentas\n del vector ea" -->"Almacenar vector columna\n los resultados ea-agregado" -->"Sumar cada una de las\n columnas de la matriz Ma" -->"Almacenar vector fila\n los resultados ed" -->"Sumar cada una de las\n partidas que componen las cuentas\n del vector ed" -->"Almacenar vector fila\n los resultados ed-agregado" -->"Dividir cada uno de los\n elementos del vector ea entre\n la sumatoria de los elementos ea (Ui)" -->"Dividir cada uno de los\n elementos del vector ed entre\n la sumatoria de los elementos ed (Uj)" --> "Clasificar de acuerdo a\n los resultados de Ui y Uj las cuentas" -->"Mostrar los resultados obtenidos\n vectores ed, ed-agregado, ea, ea-agregado, Uj, Ui" -->"Mostrar tabla de clasificación\n de las cuentas" --> (*) } @enduml }}}