From 07776d9951b010fdfe797592dae8513688bc6c15 Mon Sep 17 00:00:00 2001 From: UO289432 Date: Sun, 11 Feb 2024 13:11:18 +0100 Subject: [PATCH 1/8] =?UTF-8?q?A=C3=B1adida=20documentaci=C3=B3n=20parte?= =?UTF-8?q?=2011.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/src/02_architecture_constraints.adoc | 21 +++++++++++++++- docs/src/11_technical_risks.adoc | 30 +++++++++++++++++++++-- 2 files changed, 48 insertions(+), 3 deletions(-) diff --git a/docs/src/02_architecture_constraints.adoc b/docs/src/02_architecture_constraints.adoc index b659351..36731e6 100644 --- a/docs/src/02_architecture_constraints.adoc +++ b/docs/src/02_architecture_constraints.adoc @@ -6,6 +6,26 @@ ifndef::imagesdir[:imagesdir: ../images] [role="arc42help"] **** +.Contents +Any requirement that constraints software architects in their freedom of design and implementation decisions or decision about the development process. These constraints sometimes go beyond individual systems and are valid for whole organizations and companies. + +.Motivation +Architects should know exactly where they are free in their design decisions and where they must adhere to constraints. +Constraints must always be dealt with; they may be negotiable, though. + +.Form +Simple tables of constraints with explanations. +If needed you can subdivide them into +technical constraints, organizational and political constraints and +conventions (e.g. programming or versioning guidelines, documentation or naming conventions) + + +.Further Information + +See https://docs.arc42.org/section-2/[Architecture Constraints] in the arc42 documentation. + +**** + Este proyecto está limitado por una serie de pautas marcadas por los responsables de la asignatura. Por ello esta aplicación está desarrollada siguiendo una serie de requisitos los cuales nombraremos a continuación. @@ -62,4 +82,3 @@ a través de nuestro grupo de WhatsApp y en casos necesarios realizamos reunione |*Accesibilidad* |_Nuestro aplicación puede ser utilizada por cualquier tipo de usuario hispanohablante, sin importar quien sea, ya que será fácil de entender e interactuar._ |=== -**** diff --git a/docs/src/11_technical_risks.adoc b/docs/src/11_technical_risks.adoc index dc5575f..a115873 100644 --- a/docs/src/11_technical_risks.adoc +++ b/docs/src/11_technical_risks.adoc @@ -1,7 +1,7 @@ ifndef::imagesdir[:imagesdir: ../images] [[section-technical-risks]] -== Risks and Technical Debts +== Riesgos y Deudas Técnicas [role="arc42help"] @@ -17,9 +17,35 @@ This should be your motto for systematic detection and evaluation of risks and t .Form List of risks and/or technical debts, probably including suggested measures to minimize, mitigate or avoid risks or reduce technical debts. - .Further Information See https://docs.arc42.org/section-11/[Risks and Technical Debt] in the arc42 documentation. **** + +=== Riesgos Técnicos + +[cols="e,2e" options="header"] +|=== +|Riesgo |Explicación + +|*Abandono* +|_Durante el desarrollo del proyecto cabe la posibilidad de que alguno de los miembros que conforman el equipo abandone este, provocando un serio problema el ritmo y carga +de trabajo de los demás compañeros._ + +|*Otras Asignaturas* +|_Las demás asignaturas en la que están matriculados los miembros del equipo puede exigir una carga importante de trabajo por lo que provocar que el equipo no dedique el +suficiente tiempo al desarrollo de este proyecto._ + +|*Errores* +|_Durante las pruebas de la aplicación pueden surgir errores que nos obliguen a realizar importantes cambios en esta. Esto puede provocar que el equipo invierta más horas de +las planeadas para solucionar este tipo de problemas._ + +|*Caída de Servicios* +|_El desarrollo del proyecto puede verse afectado si alguno de los servicios utilizados, como por ejemplo Docker, pueden no funcionar en algún momento. Esto podría bloquear la entrega de alguna de las +funcionalidades del proyecto._ + +|=== + + + From fd27641fb73940e0164c7a479b9fe9fb92d57d1d Mon Sep 17 00:00:00 2001 From: UO289432 Date: Sun, 11 Feb 2024 13:37:36 +0100 Subject: [PATCH 2/8] =?UTF-8?q?A=C3=B1adida=20documentaci=C3=B3n=20parte?= =?UTF-8?q?=204?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/src/04_solution_strategy.adoc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index 7bf03f7..d85d72e 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -30,3 +30,14 @@ Refer to details in the following sections. See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentation. **** + +* _JavaScript_: Este lenguaje es muy buena opción para utilizar en proyectos en que se emplé la tecnología REACT. Nos pareció mejor opción que otros lenguajes como TypeScript +debido a que su compresión y manejo es más sencillo. + +*_React_: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando la creación de interfaces gráficas. + +*_Docker_: Utilizaremos los contenedores de Docker como lugar donde desplegar la aplicacion web, de manera que pueda probarse la aplicación de forma aislada. + +*_Firebase_: Esta API nos servirá como sistema de autenticación del usuario para poder llevar un registro de su historial de partidas, así como algunas de sus estadísticas. + +*_WikiData_: Se trata de otra API a partir de la cual se generarán aleatoriamente las preguntas y respuestas, tanto correctas como incorrectas, que el usuario visualizará. From 78e9a6bf8dba775cd1e52987ebdafee0bf4f4c6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lara=20Fern=C3=A1ndez=20M=C3=A9ndez?= <91556753+uo276026@users.noreply.github.com> Date: Sun, 11 Feb 2024 13:44:24 +0100 Subject: [PATCH 3/8] Faltaba un espacio para que la lista saliera bien --- docs/src/04_solution_strategy.adoc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index d85d72e..c7788fb 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -34,10 +34,10 @@ See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentat * _JavaScript_: Este lenguaje es muy buena opción para utilizar en proyectos en que se emplé la tecnología REACT. Nos pareció mejor opción que otros lenguajes como TypeScript debido a que su compresión y manejo es más sencillo. -*_React_: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando la creación de interfaces gráficas. +* _React_: Esta libreria de JavaScript permite la creación de interfaces de usuario para la aplicacion web, simplificando la creación de interfaces gráficas. -*_Docker_: Utilizaremos los contenedores de Docker como lugar donde desplegar la aplicacion web, de manera que pueda probarse la aplicación de forma aislada. +* _Docker_: Utilizaremos los contenedores de Docker como lugar donde desplegar la aplicacion web, de manera que pueda probarse la aplicación de forma aislada. -*_Firebase_: Esta API nos servirá como sistema de autenticación del usuario para poder llevar un registro de su historial de partidas, así como algunas de sus estadísticas. +* _Firebase_: Esta API nos servirá como sistema de autenticación del usuario para poder llevar un registro de su historial de partidas, así como algunas de sus estadísticas. -*_WikiData_: Se trata de otra API a partir de la cual se generarán aleatoriamente las preguntas y respuestas, tanto correctas como incorrectas, que el usuario visualizará. +* _WikiData_: Se trata de otra API a partir de la cual se generarán aleatoriamente las preguntas y respuestas, tanto correctas como incorrectas, que el usuario visualizará. From 925228b70e3f6ae79ecd34a88bd6a46dde974b89 Mon Sep 17 00:00:00 2001 From: UO289432 Date: Sun, 11 Feb 2024 13:52:14 +0100 Subject: [PATCH 4/8] =?UTF-8?q?A=C3=B1adida=20documentaci=C3=B3n=20Punto?= =?UTF-8?q?=2012?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/src/12_glossary.adoc | 39 +++++++++++++++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/docs/src/12_glossary.adoc b/docs/src/12_glossary.adoc index 192b235..fa0acd3 100644 --- a/docs/src/12_glossary.adoc +++ b/docs/src/12_glossary.adoc @@ -34,9 +34,40 @@ See https://docs.arc42.org/section-12/[Glossary] in the arc42 documentation. |=== |Term |Definition -| -| +|*API* +|Interfaz de programación de aplicaciones que permite la comunicación entre diferentes programas de software. + +|*Arc42* +|Un marco de arquitectura que proporciona un conjunto de prácticas y plantillas para documentar y diseñar arquitecturas de software. + +|*Back-end* +|La parte de un sitio web o aplicación que no es visible para los usuarios finales y se encarga del procesamiento de la lógica del negocio y la gestión de los datos. + +|*Contenedor* +|Entorno virtual ligero que contiene todo lo necesario para ejecutar una aplicación, incluidas bibliotecas, herramientas y códigos. + +|*Docker* +|Plataforma de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software. + +|*Front-end* +|La parte de un sitio web o aplicación que interactúa directamente con los usuarios, visible y accesible en el navegador. + +|*GitHub* +|Plataforma de desarrollo colaborativo para alojar proyectos utilizando el sistema de control de versiones Git. + +|*IDE* +|Entorno de desarrollo integrado que proporciona herramientas y características para facilitar la escritura y depuración de código. + +|*JavaScript* +|Lenguaje de programación utilizado principalmente para agregar interactividad y dinamismo a sitios web. + +|*Saber y Ganar* +|Programa de televisión español de tipo concurso de preguntas y respuestas culturales. + +|*TypeScript* +|Lenguaje de programación de código abierto desarrollado por Microsoft que es un superset de JavaScript y añade tipos estáticos opcionales a la sintaxis del lenguaje. + +|*WikiData* +|Base de datos colaborativa libre que almacena datos estructurados para respaldar proyectos de la Fundación Wikimedia. -| -| |=== From 19a2e4f471bb45eb2ad98d2c314708a2801941e0 Mon Sep 17 00:00:00 2001 From: Fernando Jose Gonzalez Sierra Date: Mon, 19 Feb 2024 12:38:01 +0100 Subject: [PATCH 5/8] Diagrama punto 3.1 y punto 4 Punto 4 a evolucionar durante desarrollo --- .vscode/settings.json | 1 + docs/images/03_1_contexto-negocio.png | Bin 0 -> 37945 bytes docs/src/03_system_scope_and_context.adoc | 4 +--- docs/src/04_solution_strategy.adoc | 15 +++++++++++++++ 4 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 docs/images/03_1_contexto-negocio.png diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/docs/images/03_1_contexto-negocio.png b/docs/images/03_1_contexto-negocio.png new file mode 100644 index 0000000000000000000000000000000000000000..cfd5ab5b505e67a4c46937dbca7e7ab6e96720ff GIT binary patch literal 37945 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 - -**** +image::03_1_contexto-negocio.png["Diagrama de contexto de negocio"] === Technical Context diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index 7bf03f7..f339bf0 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -30,3 +30,18 @@ Refer to details in the following sections. See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentation. **** + +* *Microservicios:* +Enfoque arquitectónico donde el software está compuesto por pequeños servicios independientes. Lo hemos elegido por encima de MVC, por la facilidad a la hora de modificar una parte de la aplicación sin afectar al resto. + +* *Docker:* +Este programa es utilizado para desplegar aquí la aplicación web y realizar las pruebas pertinentes. Facilidad a la hora de desplegar junto con una máquina virtual de Azure. + +* *Wikidata:* +API impuesta al equipo de desarrollo como requisito del sistema, su proposito en la aplicación es la obtención de información de diferentes temas para un posterior desarrollo de preguntas. + +* *Javascript:* +Lenguaje de programación interpretado, no tipado y facil de aprender y desarrollar. Utilizado para desarrollar todos los microservicios. + +* *React:* + Biblioteca de Javascript que se centra en el desarrollo de interfaces. Actualmente está en un momento de auge, por lo que aprender esta tecnologia sería bueno para el mercado laboral. From 97c35b16b953ec762aaaeb18a167908900f3fe7a Mon Sep 17 00:00:00 2001 From: Fernando Jose Gonzalez Sierra Date: Tue, 20 Feb 2024 12:04:56 +0100 Subject: [PATCH 6/8] Update .gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 8bbe72a..e0b32e5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules coverage -docs/build \ No newline at end of file +docs/build +.vscode \ No newline at end of file From d9ad4c27ec3f233948f941e4433888030376559f Mon Sep 17 00:00:00 2001 From: Fernando Jose Gonzalez Sierra <90760906+UO277938@users.noreply.github.com> Date: Tue, 20 Feb 2024 12:05:23 +0100 Subject: [PATCH 7/8] Delete .vscode directory --- .vscode/settings.json | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 9e26dfe..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file From 8abb7c0b6e3f4716f191b048f777b442082dd563 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fernando=20Jos=C3=A9=20Gonz=C3=A1lez=20Sierra?= Date: Tue, 20 Feb 2024 19:03:18 +0100 Subject: [PATCH 8/8] Punto 3.2 --- docs/images/03_2_contexto_tecnico.png | Bin 0 -> 26712 bytes docs/package-lock.json | 388 +++++++++++++++++++++- docs/package.json | 11 +- docs/src/03_system_scope_and_context.adoc | 12 +- 4 files changed, 395 insertions(+), 16 deletions(-) create mode 100644 docs/images/03_2_contexto_tecnico.png diff --git a/docs/images/03_2_contexto_tecnico.png b/docs/images/03_2_contexto_tecnico.png new file mode 100644 index 0000000000000000000000000000000000000000..747f92ae96d3b3087acab2a9b50bea4bd8598fc0 GIT binary patch literal 26712 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 PXwMZ5eN4H!eZ+qN%BYeG literal 0 HcmV?d00001 diff --git a/docs/package-lock.json b/docs/package-lock.json index ab1646f..ae39a37 100644 --- a/docs/package-lock.json +++ b/docs/package-lock.json @@ -1,11 +1,10 @@ { "name": "docs", "version": "1.0.0", - "lockfileVersion": 3, + "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "docs", "version": "1.0.0", "dependencies": { "gh-pages": "^3.2.3", @@ -540,5 +539,390 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" } + }, + "dependencies": { + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==" + }, + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "requires": { + "lodash": "^4.17.14" + } + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "email-addresses": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/email-addresses/-/email-addresses-3.1.0.tgz", + "integrity": "sha512-k0/r7GrWVL32kZlGwfPNgB2Y/mMXVTq/decgLczm/j34whdaspNrZO8CnXPf1laaHxI6ptUlsnAxN+UAPw+fzg==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "filename-reserved-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", + "integrity": "sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ==" + }, + "filenamify": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-4.3.0.tgz", + "integrity": "sha512-hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg==", + "requires": { + "filename-reserved-regex": "^2.0.0", + "strip-outer": "^1.0.1", + "trim-repeated": "^1.0.0" + } + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" + }, + "gh-pages": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-3.2.3.tgz", + "integrity": "sha512-jA1PbapQ1jqzacECfjUaO9gV8uBgU6XNMV0oXLtfCX3haGLe5Atq8BxlrADhbD6/UdG9j6tZLWAkAybndOXTJg==", + "requires": { + "async": "^2.6.1", + "commander": "^2.18.0", + "email-addresses": "^3.0.1", + "filenamify": "^4.3.0", + "find-cache-dir": "^3.3.1", + "fs-extra": "^8.1.0", + "globby": "^6.1.0" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "requires": { + "function-bind": "^1.1.2" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" + }, + "is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "requires": { + "hasown": "^2.0.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "requires": { + "find-up": "^4.0.0" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "requires": { + "resolve": "^1.1.6" + } + }, + "resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==" + }, + "shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "requires": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + } + }, + "shx": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/shx/-/shx-0.3.4.tgz", + "integrity": "sha512-N6A9MLVqjxZYcVn8hLmtneQWIJtp8IKzMP4eMnx+nqkvXoqinUPCbUFLp2UcWTEIUONhlk0ewxr/jaVGlc+J+g==", + "requires": { + "minimist": "^1.2.3", + "shelljs": "^0.8.5" + } + }, + "strip-outer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", + "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", + "requires": { + "escape-string-regexp": "^1.0.2" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==", + "requires": { + "escape-string-regexp": "^1.0.2" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + } } } diff --git a/docs/package.json b/docs/package.json index 22e2370..4a13c87 100644 --- a/docs/package.json +++ b/docs/package.json @@ -4,12 +4,11 @@ "description": "Npm project just for the docs", "main": "index.js", "scripts": { - "build": "shx rm -rf build && asciidoctor -D build -a imagesdir=./images -r asciidoctor-diagram index.adoc && shx cp -R images build", - "deploy": "gh-pages -d build" + "build": "shx rm -rf build && asciidoctor -D build -a imagesdir=./images -r asciidoctor-diagram index.adoc && shx cp -R images build", + "deploy": "gh-pages -d build" }, "dependencies": { - "gh-pages": "^3.2.3", - "shx": "^0.3.3" + "gh-pages": "^3.2.3", + "shx": "^0.3.3" } - } - \ No newline at end of file +} diff --git a/docs/src/03_system_scope_and_context.adoc b/docs/src/03_system_scope_and_context.adoc index fe9c36b..15db939 100644 --- a/docs/src/03_system_scope_and_context.adoc +++ b/docs/src/03_system_scope_and_context.adoc @@ -1,7 +1,7 @@ ifndef::imagesdir[:imagesdir: ../images] [[section-system-scope-and-context]] -== System Scope and Context +== Alcance y Contexto del Sistema [role="arc42help"] @@ -29,7 +29,7 @@ See https://docs.arc42.org/section-3/[Context and Scope] in the arc42 documentat **** -=== Business Context +=== Contexto de Negocio [role="arc42help"] **** @@ -50,7 +50,7 @@ The title of the table is the name of your system, the three columns contain the image::03_1_contexto-negocio.png["Diagrama de contexto de negocio"] -=== Technical Context +=== Contexto Técnico [role="arc42help"] **** @@ -66,8 +66,4 @@ together with a mapping table showing the relationships between channels and inp **** -**** - -**** - -**** +image::03_2_contexto_tecnico.png["Diagrama de contexto técnico"]