Updated documentation

This commit is contained in:
Kevin Frantz 2018-09-12 22:58:51 +02:00
parent 45715c4fcf
commit 25e3ad06fe
9 changed files with 146 additions and 14 deletions

View File

@ -1,20 +1,14 @@
# infinito (development status)
This software allows users to automatize data sharing with people and IoT devices.
# infinito
## developer guide
In the administration folder you will find all necessary scripts to run and configure the application.
## idea
The idea is described under *./documentation/product/system/requiremts.md*.
This scripts are optimized for Ubuntu, but may they will run on MAC OS.
## documentation
The full documentation you will find in *./documentation*.
It follows the [best practices from AltexSoft](https://www.altexsoft.com/blog/business/software-documentation-types-and-best-practices/).
### initialization
To initialize the docker environment, please execute in the root:
```
bash administration/init.sh
```
Afterwards you can access the service via http://127.0.0.1:80.
### administration
The setup and administration guide you will find in *./documentation/product/user/administrator/guide.md*
## license
The "GNU AFFERO GENERAL PUBLIC LICENSE" applies to this project. See LICENSE.txt.

0
documentation/process/.gitignore vendored Normal file
View File

View File

View File

View File

@ -0,0 +1,119 @@
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”,
“SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be
interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119).
"entity" or "entities" are to be interpreted as [Doctrine Objects](https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/working-with-objects.html).
# requiremts
## interfaces
The application MUST contain the following interfaces:
* HTML
* JSON
## actors
### user
The application MUST provide the following functions:
* delete user
* register user
* modify user
* create user (child)
* login
* logout
A user MUST have one node.
A user MUST be a source.
### law
A law MUST belong exclusive to a node.
A law MUST contain one of each of right types one time.
#### right
A right MUST NOT be a source.
A right MUST belong to a law.
A right MUST be of one of the following types:
* read
* write
* administrate
#### permission
A permission MAY have a father from which it inherit.
A permission MUST belong to a right.
A permission MUST allow blacklisting.
A permission MUST allow whitelisting.
A permission MUST allow that it applies to child of collection.
A permission MUST allow that it applies to the parents of the collection.
A permission MUST contain a collection on which the rule set applies.
### node
A node MUST have one source.
A node MAY contain a parents collection.
A node MAY contain a children collection.
A node MAY be a member of a collection entity.
A node MUST have a law.
A node MUST have a history.
### source
A source MUST have one node.
A source MUST be an entity.
#### entities
Sources MUST be on of the following entities:
|entity|attributes|
--- | --- | ---
|user|username,password,identity|
|identity|names,addresses|
|address||
|date|datetime|
|name|string|
|birthday|date
|death|date
|text|varchar
|collection|nodes
|live|birthday,death
A source MUST have a file fabric.
#### files
Sources MUST be on of the following files:
* HTML
* JSON
* XML
* TEXT
* CSV
* JPG
It SHOULD be possible to export a file to one or more other files.
It MUST be possible to edit a file.
IT MUST be possible to save a file.
#### collection
A source MAY contain other nodes.
### history
A history MUST log all of the actions which happen to a node.
A history MUST exclusive belong to a node.
A history MUST allow to give the state of a node to a special date back.

View File

@ -0,0 +1,19 @@
# requirements
This scripts are optimized for Ubuntu, but may they will run on MAC OS.
Tested on a Ubuntu 18.04.1 LTS machine.
# administration
In the administration folder you will find all necessary scripts to run and configure the application.
# initialization
To initialize the docker environment, please execute in the root:
```
bash administration/init.sh
```
Afterwards you can access the service via http://127.0.0.1:80.

View File