Architecture

Architecture Guidelines

These guidelines must be respected by the chosen solutions for the Core Model.

  1. Only one database

  2. No parallel data management

  3. As few interfaces as possible

  4. Unidirectional interfaces only

  5. As much standard software as possible

  6. As little custom programming as possible

  7. As much standard functionality as possible, given by the systems

  8. Simple and robust processes

  9. Error tolerant processes

  10. High degree of process and workflow automation


Architecture Diagram

The diagram shows the different elements of the Core Model together with the interaction of the elements. References to the numbers in the diagram:

2: Web Apps for the customer: Websites

2a: Django website framework: 1   django_webapps_fullstack

2a: Bootstrap to build the websites: 1   bootstrap_webapps_fullstack

3: Catching and scanning of the objects with Devices

3a: Inventory capture: 1   inventory_control_system

3b: Scanning RFID tags: 1   inventory_rfid_node

4: Integration of the partner: Partner

5: Connector between Python programs and external systems:

5a: Legacy XMLRPC interface: Twisted

5b: Modern REST API interface: FastAPI

6: Main programs: 1   odoo_xmlrpc_twisted

7: Connector between Odoo and Python programs: XMLRPC

8: Odoo ERP system: Odoo

9: PostgreSQL database: PostgreSQL


../../_images/architecture_diagram.png