Skip to content

Commit

Permalink
Merge branch 'master' into Documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
uo289097 authored Feb 19, 2024
2 parents 13f0652 + 42a994c commit dec60e4
Show file tree
Hide file tree
Showing 8 changed files with 11 additions and 58 deletions.
Binary file added docs/images/context.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/deployment.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 4 additions & 30 deletions docs/src/03_system_scope_and_context.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -42,27 +42,13 @@ Regarding the information exchanged with the application, it will require having

==== Context diagram

[plantuml, "context", png]
----
@startuml
component "App" as app
:User: -> [app]: Answer question
[app] -> :User: Return result
database DB
[app] -> DB: Ask for question
DB -> [app]: Return question
component "WikiData" as wd
[app] --> wd: Ask for keyword
wd --> [app]: Return keyword
@enduml
----

image::context.png["Context"]

---

=== Technical Context

[role="arc42help"]

==== Contents

* *HTTP Channel:* The application uses the HTTP protocol to communicate with the Wikidata API service.
Expand All @@ -72,17 +58,5 @@ wd --> [app]: Return keyword

==== Deployment diagram

[plantuml, "deployment", png]
----
@startuml
node "Application Server" as app
node "DB Server" as db {
artifact "MongoDB Server"
}
node "Wikidata" as w
node "Interface" as i
app - db
app -- w
app -- i
@enduml
----
image::deployment.png["Deployment"]

14 changes: 3 additions & 11 deletions docs/src/07_deployment_view.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,18 @@ ifndef::imagesdir[:imagesdir: ../images]


== Deployment View

[role="arc42help"]
****
****

=== Infrastructure Level 1

[role="arc42help"]
****
image::Diag_Comp.jpg[align="center",title="Deployment Diagram",link="Diag_Comp.jpg]

Motivation::
=== Motivation:

The system is based in microservices architecture with three independent services, each responsible for a specific aspect of the functionality. One service is the Graphic interface, this service handles the presentation layer of a web application. Another service is tasked with managing user-related functionalities. MongoDB, a NoSQL database, is used to store and manage user data efficiently. The third service utilizes Wikidata, a free open base, to automatically generate questions.

Quality and/or Performance Features::
=== Quality and/or Performance Features::

The main reason we have chosen a microservices architecture is to achieve a fast and efficient application.. The availability and efficiency of the application will be affected by Wikidata's availability, but just in the question generation moment.

Mapping of Building Blocks to Infrastructure::
=== Mapping of Building Blocks to Infrastructure::
[cols="1,2" options="header"]
|===
| **Element** | **Description**
Expand Down
11 changes: 0 additions & 11 deletions docs/src/08_concepts.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@ ifndef::imagesdir[:imagesdir: ../images]
[[section-concepts]]
== Cross-cutting Concepts


[role="arc42help"]
****
****

=== _Domain Model_

_TBD_
Expand All @@ -19,9 +14,3 @@ _The communication between the application's APIs will be through the secure mod
=== _Privacy_

_The user's data will be stored in a MongoDb database. That implies that the information is stored securely._

...

=== _<Concept n>_

_<explanation>_
2 changes: 2 additions & 0 deletions docs/src/09_architecture_decisions.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,5 @@ ifndef::imagesdir[:imagesdir: ../images]
| NodeJS | It is decided to use NodeJS since it is the recommended option by the subject's faculty and one of the most widely used technologies in this area of web applications, thus having extensive documentation and examples available on the Internet.
| React | It is decided to use React since it is the recommended option by the subject's faculty.
|===

[role="arc42help"]
7 changes: 2 additions & 5 deletions docs/src/10_quality_requirements.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,10 @@ ifndef::imagesdir[:imagesdir: ../images]
== Quality Requirements


[role="arc42help"]
****
.Quality Tree

image::10-Quality_Tree.png["Quality Tree"]

****

=== Quality Scenarios


Expand All @@ -34,3 +29,5 @@ image::10-Quality_Tree.png["Quality Tree"]
|Quality Goal|Scenario|Response
| Maintainability | Introduce new functionality. | Reuse key components in order to easily add that new functionality.
|===

[role="arc42help"]
1 change: 0 additions & 1 deletion docs/src/11_technical_risks.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,3 @@
|Insufficient documentation
|A lack of clear documentation about code and architecture can make it difficult to understand and maintain code, leading to additional work.
|===
****

0 comments on commit dec60e4

Please sign in to comment.