Architecture Constraints
In this section the constraints put on the project are shown subdivided in the three main groups. All our architectural decisions will be discussed taking this list into account.
Constraint | Background/motivation | |
---|---|---|
TC1 |
SOLID |
The main goal of SOLID is decentralization and ownership of our own data. This affects our choices of data storage and limits them to the SOLID PODs. |
TC2 |
OS independent |
The app must run on any OS with minimal changes, thus ensuring maximum market coverage. |
TC3 |
Linked Data Principles |
If we follow the principles and standards a completely different chat application could use the conversation data seamlessly. |
Constraint | Background/motivation | |
---|---|---|
OC1 |
Time-frame |
Limited development time given by the duration of the course. |
OC2 |
License |
All the contents included in the project should be Open Source published under the MIT license. |
Constraint | Background/motivation | |
---|---|---|
C1 |
Documentation |
Usage of the arc42 templates written in AsciiDoc and document each of the services functions in the code itself. |
C2 |
Language |
All the project resources be it code, comments, documentation or GitHub issues must be written in english. |
C3 |
Linting |
We will use TSLint (VS Code) or the equivalent in each IDE for linting the code acording to conventions. |