[[section-architecture-constraints]]
== Architecture Constraints
TODO: LINK zum Eclipse Repository anpassen

The main architecture constraints are:

* *Public License* The module must be available under the "Eclipse Public License 2.0".
* *Availability* The source code of the module must be accessible to any interested person/company.
Therefore the project is published at https://projects.eclipse.org/projects/....


=== Technical Constraints

The following technical constraints are given:

.Technical Contraints
[options="header"]
|========================================================
|Component|Constraints
|Basis components of the reference platform
a|* Application Server Tomcat
* Database PostgreSQL

|Programming Language Backend
a|* Java 1.8
* REST/JSON Interfaces
* Eclipse Link as ORM
* JUnit + Mockito

|Programming Language Frontend
a|* Angular 6.0.0 (Javascript, Typescript, HTML5, CSS3)
* Bootstrap
* According to oK-GUI-Styleguide

|Java QA environment
a| * Sonarqube 6.4

|IDE
a|* Not restricted (Eclipse, Microsoft Visual Code ...)

|Build system
a|* Backend: Maven
* Frontend: NodeJS + Angular/cli

|Libraries, Frameworks,Components
a|* Used Libraries/Frameworks have to be compatible to the Eclipse Public License

|Architecture Documentation
a|* According ARC42-Template
|========================================================


=== Technical Dependencies

==== Modules
The following modules are required to use the 'Standby Planning':

.Modules
[options="header"]
|=========================================================
|Name of the module|Purpose|Status of the module
|'Auth&Auth'|Authentification and Authorization|available
|=========================================================

==== Libraries
TODO: Bibliotheken des Frontends ergaenzen
TODO: Pfad zu den Datein (Bibliotheken) ergaenzen.

The used libraries can be found here:

* Backend  
** pom.xml of the module
* Frontend
** package.json

 