[[TOC(heading=This section pages, WikiStart, noheading, AnalisisDominio, PropuestaDesarrollo, PlanProyecto, EstandaresDesarrollo, IdentificacionFuncionalidades, Codificacion, AnalisisyDiseno, 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
}}}