Core Model¶
The following sections describe all components of the technical platform. It serves the logistics workflows, the interaction with customers and other stakeholders, and Sales and Invoicing. The technical platform is an all-in-one platform. It provides all the necessary services.
The principles of the core model and their realization is described in the Architecture Guidelines. The Architecture Diagram shows the realization of the core model together with the different components.
Architecture
The basic principles of the core model are described in this section. These principles has to be respected by the elements and their interaction in the Core Model. Also, a diagram is included to describe the interaction between the different layer of the model.
Server
The productive environment will run on Debian Linux Server Technology. Google Cloud Platform will be used for hosting the main elements of the Core Model.
PostgreSQL
The central database management system is PostgreSQL. It serves all data of the Core Model. Odoo ERP system uses PostgreSQL database.
Odoo
The Odoo ERP system is the heart of the core model, as it contains all data. A lot of business functionality is managed within Odoo.
Missing functionality is implemented by separate Python modules (see Development). These modules are separate blocks that serve a specific functionality. All data coming from the modules goes into the odoo system and then into the PostgresSQL database. This ensures that the data is validated from a business point of view (Odoo) and also from a technical point of view (PostgreSQL). This guarantees high quality and consistency of data.
Programming with Python
The individual coding of the core model is done with Python as the programming language. Functions which are not served by Odoo are realized with Python (see the repository 1 odoo_xmlrpc_twisted). Also the decentralized systems uses python for individual matters. For more information about the programming see chapter Development.
Websites
Django serves as the Web Framework. The Django Framework is based on Python. Django is called “the web framework for perfectionists with deadlines”. The websites are build with Bootstrap as the frontend toolkit.
The websites do not have their own functionalities. All the business logic is supported by the python modules in 1 odoo_xmlrpc_twisted.
Mobile Apps
The mobile apps do not have their own functionalities. All the business logic is supported by the python modules. For more information about mobile apps see chapter Design.
Devices
The recognition and handling of the objects of the customer is done with Raspberry Pi computer.