« Previous -
Version 13/21
(diff) -
Next » -
Current version
Paul Carensac, 08/09/2016 10:59 am
Project structure¶
Schemas and descriptions of the project's architecture.
Pyros Design¶
Error executing the thumbnail macro (Attachment pyros_design_en.png not found)
Each application is represented here, as well as the external agents.
We can see every interaction between the applications, with the main workflow in red.
All the applications are detailed here.
Folders architecture¶
Error executing the thumbnail macro (Attachment folders_architecture.png not found)
- PYROS : Main folder of the project, root of the git repository
- doc : Contains all the documentation
- database : Contains the database files (schema, creation sql script)
- uml : usecases and activities diagrams for the applications
- diagrams : other useful diagrams
- install : Everything needed at the installation
- scripts & requirements : Files making the installation automatic
- windows libs : Folder containing libraries copied from linux that cannot be found with the good version on windows
- private : Folder not tracked by git
- virtual environment : python version & libraries used by the project
- Any unshared content : private is your own directory, you can add anything you want in it
- simulators : Simulators for Devices & PLC
- scripts : They start and stop the simulators
- code : The python code for the simulators
- configuration : A file describing the IP & Port for each simulator
- src : Source folder containing most of the project's content (detailed below)
- .gitignore, README, run script : A few additional useful files
- doc : Contains all the documentation
Here is the detail of the src folder :
- src : Source folder containing most of the project's content
- apps : Django applications folders (detailed in the next section)
- fixtures : Contains the initial & test fixtures of the project (see Technical_components)
Applications architecture¶
Error executing the thumbnail macro (Attachment applications_architecture.png not found)
Django applications are created with the command :
$ python manage.py startapp AppName
This commands automatically create some files and folders :
- migrations : A folder containing the DB modifications files (only used in the pyrosapp application)
- templates : A folder containing the Django HTML templates for this application
- init.py & apps.py : App configuration files (not used)
- models.py & admin.py : Files desribing database objects, and their representation in the admin interface (only used in pyrosapp)
- views.py : File containing the code called for each web page
We added some other files to every application :
- urls.py : File describing the routing from urls to views. Directly linked to (and called by) the "pyros" folder's urls.py.
- tasks.py : File containing the Celery tasks for this application.