From a1cffb94f29e5ed78e6737f8afa41ab1917afbec Mon Sep 17 00:00:00 2001 From: UO283615 <98838739+UO283615@users.noreply.github.com> Date: Tue, 21 Feb 2023 12:13:22 +0100 Subject: [PATCH 1/7] FixedDiagramDoc6 --- docs/06_runtime_view.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/06_runtime_view.adoc b/docs/06_runtime_view.adoc index bd27207..a33c743 100644 --- a/docs/06_runtime_view.adoc +++ b/docs/06_runtime_view.adoc @@ -7,7 +7,7 @@ These situations where chosen as they show the impact of our architectural decis === Accessing the application This diagram shows the communication between the user, the app and the pod when the user logs in. -[plantuml,"Sequence diagram",png] +[plantuml,"SequenceDiagramLogging",png] ---- @startuml header Runtime View @@ -28,7 +28,7 @@ LoMap --> Diego: Main page logged in === Adding landmark to the map This diagram show the communication between the user, the app and the pod when the user adds a landmark. -[plantuml,"Sequence diagram",png] +[plantuml,"SequenceDiagramAddLandmark",png] ---- @startuml header Runtime View @@ -46,7 +46,7 @@ LoMap -> Pod: Store the coordinates === Seeing friends' added landmarks This diagram show the communication between the user, the app and the pods when the user wants to see their friends' landmarks. -[plantuml,"Sequence diagram",png] +[plantuml,"SequenceDiagramFriendsLandmark",png] ---- @startuml header Runtime View From 6838a269333b85cca85d55f8c8dd9eea92c28ed2 Mon Sep 17 00:00:00 2001 From: plg22 Date: Tue, 21 Feb 2023 17:09:13 +0100 Subject: [PATCH 2/7] Correction of mistakes Docs0.1 --- docs/02_architecture_constraints.adoc | 5 ++--- docs/04_solution_strategy.adoc | 24 ++++++++++++------------ docs/09_design_decisions.adoc | 3 ++- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/docs/02_architecture_constraints.adoc b/docs/02_architecture_constraints.adoc index 1c2b717..ae19178 100644 --- a/docs/02_architecture_constraints.adoc +++ b/docs/02_architecture_constraints.adoc @@ -9,7 +9,6 @@ These constraints are the base of the architecture process, and are the roots of |=== |Constraint|Description | Solid | _Provided by the stakeholders. A way of building decentralized social apps, it gives every user a choice about where data is stored, helping the privacy of each user._ -| Facilitate user navigavility | _The app is developed using react, a javascript library used to make the interaction of the user easier, as it helps in the building of the user interface of the web app._ -| Flexibility | _The map which is the base of the app is generated using the Google Maps API, for the possibility of working in any place around the world._ -| Quality | _The application is developed around some quality requirements, later described in section 10._ +| Github | _The development team was given a starting draft of a project in GitHub as a public repository. From then on, all the work related with this project will be tracked and uploaded in this repository._ +| Time | _The application is developed in a semester during a course, that means time is limited._ |=== \ No newline at end of file diff --git a/docs/04_solution_strategy.adoc b/docs/04_solution_strategy.adoc index 58ebcd5..9fbeeae 100644 --- a/docs/04_solution_strategy.adoc +++ b/docs/04_solution_strategy.adoc @@ -5,21 +5,21 @@ In this section we are explaining the main decisions we took in the development of the project. Up until now, we have made some decisions about the project, those decisions can be organized in different categories: -.*Technology decisions* -*React: JS framework that helps with the user interface of the web application. -*Map API: Used to plot the map in the application in order to allow the user to do every possible action. +. *Technology decisions:* +* React: JS framework that helps with the user interface of the web application. +* Map API: Used to plot the map in the application in order to allow the user to do every possible action. -.*Decisions on top-level decomposition* -*MVC: We are using the MVC (Model-View-Controller) pattern in order to organize the code in a clean and obvious way. -*Editor: We are all using Visual Studio Code to work on this project, it is the editor we are used to program in and it has some features that made us work using it. -*Github: The project is on a public repository as given by the professors of the subject. We are all able to work using it, and the main features of it are the pull requests in order to upload code. +. *Decisions on top-level decomposition:* +* MVC: We are using the MVC (Model-View-Controller) pattern in order to organize the code in a clean and obvious way. +* Editor: We are all using Visual Studio Code to work on this project, it is the editor we are used to program in and it has some features that made us work using it. +* Github: The project is on a public repository as given by the professors of the subject. We are all able to work using it, and the main features of it are the pull requests in order to upload code. -.*Decisions on quality goals* -*Usability: Our map application is quite easy to use for everyone, we are focusing on the ease of the user interaction and comprehension. -*Security: It is the main point of our application, as we are using solid, we are maintaining the privacy of every user who logs into LoMap. -*Response times: As much as possible, we are trying to minimize response times of the application in order to be more user friendly. +. *Decisions on quality goals:* +* Usability: Our map application is quite easy to use for everyone, we are focusing on the ease of the user interaction and comprehension. +* Security: It is the main point of our application, as we are using solid, we are maintaining the privacy of every user who logs into LoMap. +* Response times: As much as possible, we are trying to minimize response times of the application in order to be more user friendly. -*Organizational decisions* +*Organizational decisions:* During the development of this project, everyone is the group is in constant contact with the rest of the members of the team, mainly in the weekly meeting which takes part during lab classes throughout the semester. In addition to that, we used a whatsapp group in order to consult with each other little things that could emerge during the week. Related with the project, our main way of working with the code was through pull requests. Each one of the members did some work, in his newly created branch and when he ended his work, he committed the changes and requested a pull request in GitHub, where another person in the group should revise the changes and aprove that pull request in order to merge the changes to the main branch. In order to do advances in the development we are using the issues in Github as well, in that way we make sure that we do everything we consider necessary. diff --git a/docs/09_design_decisions.adoc b/docs/09_design_decisions.adoc index 514b477..5ef23a4 100644 --- a/docs/09_design_decisions.adoc +++ b/docs/09_design_decisions.adoc @@ -4,6 +4,7 @@ [options="header",cols="1,4"] |=== |Decision|Why? -| Inrupt | As a constraint in the project, we said we needed to use solid pods, and inrupt is the way we are going to include it in our project. Essentially it provides a way to deal with Solid pods. +| React | Taken as a recomendation by some teachers. In addition, one of the members of the group has already worked with it in the past. It allows us to build a good user interface for the application. | Leaflet | It is the provider we are going to use for obtaining the necessary features around the map. We studied some other different options, such as Mapbox o Google Maps API, but we needed the Api to be completely free. +| Inrupt | As a constraint in the project, we said we needed to use solid pods, and inrupt is the way we are going to include it in our project. Essentially it provides a way to deal with Solid pods. |=== \ No newline at end of file From 3b713582464b163f93a8faa2e0abdf9cbb1d992e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Cadenas?= <77900120+andrrsin@users.noreply.github.com> Date: Tue, 21 Feb 2023 18:40:37 +0100 Subject: [PATCH 3/7] Update 03_system_scope_and_context.adoc --- docs/03_system_scope_and_context.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/03_system_scope_and_context.adoc b/docs/03_system_scope_and_context.adoc index c134f27..6488d41 100644 --- a/docs/03_system_scope_and_context.adoc +++ b/docs/03_system_scope_and_context.adoc @@ -6,7 +6,7 @@ Lomap is a web application whose objective is to have markers and routes saved i === Business context There is clearly 5 different actors regarding business context, however one is the SOLID pod of both admin and user actor. Which is "integrated" in them making it be a "subsystem". As a result we obtain the following use case scenario. -image::https://github.com/Arquisoft/lomap_en2b/blob/9e56d610c9f52f65fc04b36dca862d33b27296e1/docs/images/UseCaseASW.drawio.png[] +image::UseCaseASW.drawio.png[Use Case Diagram] From that we can say that the main actors have this speciofications: [cols = "1,2"] From bcc01dc3a7dc7b80e8d260e22f66caa8aaeea0e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9s=20Cadenas?= <77900120+andrrsin@users.noreply.github.com> Date: Tue, 21 Feb 2023 19:20:14 +0100 Subject: [PATCH 4/7] Add files via upload --- docs/images/BusinessContext.png | Bin 0 -> 14718 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/BusinessContext.png diff --git a/docs/images/BusinessContext.png b/docs/images/BusinessContext.png new file mode 100644 index 0000000000000000000000000000000000000000..94d62366b71a151d63dcd73d37cacbd4b236fea5 GIT binary patch literal 14718 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 Date: Tue, 21 Feb 2023 19:31:07 +0100 Subject: [PATCH 5/7] Fixed errors n documentation part3 --- docs/03_system_scope_and_context.adoc | 41 +++++++-------------------- 1 file changed, 10 insertions(+), 31 deletions(-) diff --git a/docs/03_system_scope_and_context.adoc b/docs/03_system_scope_and_context.adoc index 6488d41..605bcf0 100644 --- a/docs/03_system_scope_and_context.adoc +++ b/docs/03_system_scope_and_context.adoc @@ -3,46 +3,25 @@ Lomap is a web application whose objective is to have markers and routes saved in a map where the user has total control of their data. They can also add and share this information with other "friends" sharing the platform. In order to achieve the control of their data SOLID technologies are used all along the project. A user will be able to post an dplace markers, they will also have the capability of viewing the ones of their online "friends". -=== Business context There is clearly 5 different actors regarding business context, however one is the SOLID pod of both admin and user actor. Which is "integrated" in them making it be a "subsystem". As a result we obtain the following use case scenario. -image::UseCaseASW.drawio.png[Use Case Diagram] +image::BusinessContext.png[Business Context Diagram] From that we can say that the main actors have this speciofications: [cols = "1,2"] |=== -|*User name* -|*Description and functionality* - -|*Guest* -|It is the type of user that haven't been identified so only the view for logging in will be displayed. - |*User* -|This type of user is the "average" user as it has an account and it is allowed to create routes or markers, following people and viewing different maps. - -|*Admin* -|It is a super user which can make changes on other users, this is done with the objective of moderating the behaviour to avoid unwanted problems. - -|*Central System* -|This will be a database in charge of containing the minimal data to make the web application to work and for it not to be heavily slowed down by the decentralized approach. -|=== +|This type of user is the "average" user as it has an account and it is allowed to create routes or markers, following people and viewing different maps. They connect to the webapp using the pod provider -=== Technical Context -The webapp follows the SOLID decentralized architecture. It is important to have a system to connect the pods with eachother using a central system. This is done using the API which is also the responsible for the usage of the website. +|*Pod Provider* +|A pod provider using SOLID architecture where all the sensitive data of the users will be stored. -image::https://github.com/Arquisoft/lomap_en2b/blob/c9dc0d1415008f61e8da3a6a08a3bdc78109940e/docs/images/Captura%20de%20pantalla%202023-02-20%20164603.jpg[] +|*lomap* +|The web service itself. Here the user is able to access and modify their maps same as looking the other's. -[cols = "1,2"] -|=== -|*Inrupt* -|Inrupt is a provider of pods, It could happen that it was another provider of SOLID architecture. What's important is that the user has a pod able to connect to the API. - -|*API* -|This API is in charge on making all the connections and logic so everything works as it should. This is done with TypeScript. - -|*Database* -|For the moment the technology decided for the main database hasn't been decided, so this will be updated later. +|*database* +|This will be a database in charge of containing the minimal data to make the web application to work and for it not to be heavily slowed down by the decentralized approach. -|*Website* -|The frontend of the website to show the information is using the React framework for typescript. +|*leaflet* +|Leaflet API is an api using openmaps which is simple and easy to develop in it to create personalizzed maps. |=== From c7c69c35af78656f74c6e101cfb2818aa59aa8f1 Mon Sep 17 00:00:00 2001 From: Diego Villanueva <98838739+UO283615@users.noreply.github.com> Date: Fri, 24 Feb 2023 13:47:37 +0100 Subject: [PATCH 6/7] Added HappySw to the list of Stakeholders --- docs/01_introduction_and_goals.adoc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/01_introduction_and_goals.adoc b/docs/01_introduction_and_goals.adoc index f60659e..5ec7499 100644 --- a/docs/01_introduction_and_goals.adoc +++ b/docs/01_introduction_and_goals.adoc @@ -37,7 +37,8 @@ Users can: Diego Villanueva Berros | Develop a software we can be proud of while learning new technologies as SOLID +| HappySw | HappySw | An application that fulfils the contract agreed with the Council of Brussels | Teachers | Teachers | Make sure the students follow the guidelines and progress correctly -| Council of Brussels | Council of Brussels | Have an application developed that satisfies the contract +| Council of Brussels | Council of Brussels | Have an application developed that meets their needs | Users | Whoever uses the application | A functional and easy to use application |=== From f10ee91f72d40ab1241ab473476840cb920647c2 Mon Sep 17 00:00:00 2001 From: jjgancfer Date: Sat, 25 Feb 2023 13:01:36 +0100 Subject: [PATCH 7/7] Fixed the diagrams --- docs/05_building_block_view.adoc | 4 ++-- docs/07_deployment_view.adoc | 20 +++++++------------- docs/11_technical_risks.adoc | 4 ---- 3 files changed, 9 insertions(+), 19 deletions(-) diff --git a/docs/05_building_block_view.adoc b/docs/05_building_block_view.adoc index 985e0d9..f4e22b1 100644 --- a/docs/05_building_block_view.adoc +++ b/docs/05_building_block_view.adoc @@ -9,7 +9,7 @@ Motivation:: This diagram is motivated by the need of having a clear separation of the composition of the application. -[plantuml,"Deployment diagram",png] +[plantuml,"BuildingBlockView", png] ---- @startuml @@ -109,7 +109,7 @@ No issues, problems or risks are known. Currently, the only layer we have somewhat structured is the persistance layer. -[plantuml,"Deployment diagram",png] +[plantuml,png, id = "PersistenceLayer"] ---- @startuml diff --git a/docs/07_deployment_view.adoc b/docs/07_deployment_view.adoc index e76e0a1..8cda4db 100644 --- a/docs/07_deployment_view.adoc +++ b/docs/07_deployment_view.adoc @@ -7,10 +7,9 @@ Given that we currently do not know much about hosting the application, at this moment we will follow a simple approach that will likely change in the future. -[plantuml,"Deployment diagram",png] +[plantuml,"Deployment diagram",png, id = "DeployDiagramView"] ---- @startuml - header Deployment view title Deployment view @@ -23,17 +22,12 @@ agent Pod2 agent Pod3 agent PodN -Pod1 ---> "LoMap Platform" -Pod1 <--- "LoMap Platform" -Pod2 ---> "LoMap Platform" -Pod2 <--- "LoMap Platform" -Pod3 ---> "LoMap Platform" -Pod3 <--- "LoMap Platform" -PodN ---> "LoMap Platform" -PodN <--- "LoMap Platform" - -"Database server" -> "LoMap Platform" -"Database server" <- "LoMap Platform" +Pod1 <--> "LoMap Platform" +"LoMap Platform" <--> Pod2 +PodN <--> "LoMap Platform" +"LoMap Platform" <-> "Pod3" + +"Database server" <-> "LoMap Platform" @enduml ---- diff --git a/docs/11_technical_risks.adoc b/docs/11_technical_risks.adoc index 94b44f5..c119b3f 100644 --- a/docs/11_technical_risks.adoc +++ b/docs/11_technical_risks.adoc @@ -1,10 +1,6 @@ [[section-technical-risks]] == Risks and Technical Debts - -[role="arc42help"] - - As it stands now, we have identified some important risks before starting coding the project. |===