diff --git a/docs/src/04_solution_strategy.adoc b/docs/src/04_solution_strategy.adoc index 4344544..8d84e92 100644 --- a/docs/src/04_solution_strategy.adoc +++ b/docs/src/04_solution_strategy.adoc @@ -33,29 +33,29 @@ See https://docs.arc42.org/section-4/[Solution Strategy] in the arc42 documentat === Technology decisions The technologies chosen for developing the WIQ web app are :: -* **ReactJS** : A JavaScript library that facilitates the creation of interactive grafical interfaces. +* **Java** : Java is a high-level, object-oriented programming language developed by Sun Microsystems. It is known for its portability, security features, and wide range of applications, from mobile to enterprise systems. -* **Wikidata Toolkit** : Wikidata Toolkit is a Java library for accessing Wikidata and other Wikibase installations. It can be used to create bots, to perform data extraction tasks (e.g., convert all data in Wikidata to a new format), and to do large-scale analyses that are too complex for using a simple SPARQL query service. +* **Nodejs** : Node.js is an open-source, cross-platform JavaScript runtime environment that executes JavaScript code outside of a web browser, allowing developers to build scalable network applications. -* **Docker** : Docker provides tools and a runtime environment to manage these containers efficiently, allowing developers to build, ship, and run applications consistently across different environments. +* **ReactJS** : A JavaScript library that facilitates the creation of interactive grafical interfaces. -* **Mongo DB** : MongoDB is a popular open-source NoSQL database management system that stores data flexible, JSON-like documents with dynamic schemas. +* **Wikidata Toolkit** : Wikidata Toolkit is a Java library for accessing Wikidata and other Wikibase installations. It can be used to create bots, to perform data extraction tasks (e.g., convert all data in Wikidata to a new format), and to do large-scale analyses that are too complex for using a simple SPARQL query service. * **Express** : Express is a minimal and flexible Node.js web application framework that provides a robust set of features for building web and mobile applications. -* **Nodejs** : Node.js is an open-source, cross-platform JavaScript runtime environment that executes JavaScript code outside of a web browser, allowing developers to build scalable network applications. +* **Mongo DB** : MongoDB is a popular open-source NoSQL database management system that stores data flexible, JSON-like documents with dynamic schemas. -* **Java** : Java is a high-level, object-oriented programming language developed by Sun Microsystems. It is known for its portability, security features, and wide range of applications, from mobile to enterprise systems. +* **Docker** : Docker provides tools and a runtime environment to manage these containers efficiently, allowing developers to build, ship, and run applications consistently across different environments. This decisions were eventually discarded :: -* **Sass** : A scripting language that is compiled into CSS. It extends CSS by providing several mechanisms such as variables, nested rules, mixins, functions, and inheritance. (Not used) +* **Sass** : A scripting language that is compiled into CSS. It extends CSS by providing several mechanisms such as variables, nested rules, mixins, functions, and inheritance. -* **TypeScript** : A superset of JavaScript that adds various features that can resolve code errors before running the actual code. (Not used) +* **TypeScript** : A superset of JavaScript that adds various features that can resolve code errors before running the actual code. -* **SpringBoot** : An extension of the Spring framework for creating Java applications. SpringBoot offers many preconfigurations that accelerate the code production process. (Not used) +* **SpringBoot** : An extension of the Spring framework for creating Java applications. SpringBoot offers many preconfigurations that accelerate the code production process. -* **MySql** : MySQL is an open-source relational database management system that uses SQL for managing and manipulating data. (Not used) +* **MySql** : MySQL is an open-source relational database management system that uses SQL for managing and manipulating data. === Top-level Decomposition