Skip to content

Commit

Permalink
Update 04_solution_strategy.adoc
Browse files Browse the repository at this point in the history
  • Loading branch information
UO287747 authored Feb 5, 2024
1 parent deab241 commit 83a3a0b
Showing 1 changed file with 65 additions and 22 deletions.
87 changes: 65 additions & 22 deletions docs/src/04_solution_strategy.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,38 +3,81 @@ ifndef::imagesdir[:imagesdir: ../images]
[[section-solution-strategy]]
# Solution Strategy


[role="arc42help"]

## Contents
A short summary and explanation of the fundamental decisions and solution strategies, that shape system architecture.
This page contains a short summary and explanation of the fundamental decisions and solution strategies, that shape system architecture.

---

### Technology Decisions
Below, all the technologies to be used in the development of the application are listed:

JavaScript / React: A JavaScript library designed to facilitate the development of web applications.
JavaScript / NodeJS: An asynchronous runtime environment based on JavaScript.
MongoDB: A document-oriented NoSQL database system.
Docker: Used for deploying applications locally.
Azure: Used for deploying applications on a server.
Top-Level Decisions
In this section, a summarized list of all decisions regarding the architecture of the application is included.

|===

| Architectural Pattern | In this project, the pattern based on the Client-Server model is used.
| Frontend (Client) | React: Building the user interface
| Backend (Server) | NodeJS: Building the server on the backend
| | Mongoose: Interaction with the database
| Database | MongoDB: NoSQL database storing data in BSON format
| Deployment | Azure cloud services

|===

---

### Quality Goals
Next, several quality goals are established, along with the decisions made to achieve them.

|===
| Quality Goal | Decisions

| Usability
| Creation of a responsive interface adaptable to all types of screens.

| Accessibility
| Compliance with accessibility standards to ensure a usable application.

| Maintainability
| A structured project that facilitates the maintainability of the application.

| Testing
| Assurance of a fully functional and error-free application.

|===

### Technology decisions
* *JavaScript / React*: Librería de JS diseñada para facilitar el desarrollo de aplicaciones web.
* *JavaScript / NodeJS*: Entorno runtime asíncrono basado en JS.
* *MongoDB*: Sistema de bases de datos NoSQL orientado a Documentos.
* *Docker*: Usado para el despliegue de aplicaciones.
---

### Top-Level Decisions
#### Architectural pattern
A nivel arquitectónico, en este proyecto se usa el patrón MVC (Modelo, Vista, Controlador)
### Relevant Organizational
Regarding the organization of the team, we have decided to use agile methodologies for better and faster group work. In this project, we will follow the best practices of the SCRUM framework.

* decisions on how to achieve key quality goals
* relevant organizational decisions, e.g. selecting a development process or delegating certain tasks to third parties.
Practices to be followed:

.Motivation
These decisions form the cornerstones for your architecture. They are the foundation for many other detailed decisions or implementation rules.
* Division of the project into tasks.
* Equitable assignment of tasks.
* Frequent meetings on the progress of the application.
* Construction of "Alpha" versions before the final release.

.Form
Keep the explanations of such key decisions short.
Additionally, "Issues" and the GitHub-provided Kanban (ToDo - In Progress - Done) are used for communication.

Motivate what was decided and why it was decided that way,
based upon problem statement, quality goals and key constraints.
Refer to details in the following sections.
---

### Motivation
This section addresses the fundamental decisions for the project's architecture.

.Further Information
|===

See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentation.
| Data Management |
| Deployment |
| Security |
| Monitoring |

****
|===

0 comments on commit 83a3a0b

Please sign in to comment.