update numerazione e organizzazione schema doc

This commit is contained in:
Samuele E. Locatelli (MBA)
2022-11-09 23:06:05 +01:00
parent 4a4a7a1430
commit 4bbc8c76eb
2 changed files with 58 additions and 34 deletions
+58 -34
View File
@@ -1,6 +1,33 @@
# WebDoor Creator
# 1. WebDoor Creator
WebDoorCreator is the web incarnation and evolution of Egalware's DoorCreator © software.
**Table of Content**
- [1. WebDoor Creator](#1-webdoor-creator)
- [2. WebDoor Creator Project](#2-webdoor-creator-project)
- [2.1. Terminology](#21-terminology)
- [3. Overall Functional Schema](#3-overall-functional-schema)
- [3.1. (A) Public WebServer](#31-a-public-webserver)
- [3.2. (B.1) Internal WebDoor Server](#32-b1-internal-webdoor-server)
- [3.3. (B.2) Redis Server](#33-b2-redis-server)
- [3.4. (B.3) Main DB](#34-b3-main-db)
- [3.5. (B.4) EgwDoor Processor](#35-b4-egwdoor-processor)
- [3.6. EgwProd (Multiax Machine)](#36-egwprod-multiax-machine)
- [4. Hw specifications](#4-hw-specifications)
- [5. Expected Use cases](#5-expected-use-cases)
- [5.1. User registration / login](#51-user-registration--login)
- [5.2. User Role assignments](#52-user-role-assignments)
- [5.3. Projects and Orders](#53-projects-and-orders)
- [5.4. Order creation](#54-order-creation)
- [5.5. Base Library](#55-base-library)
- [5.6. Door creation](#56-door-creation)
- [5.7. Time/Cost calculation](#57-timecost-calculation)
- [6. Document Revision](#6-document-revision)
<div style="page-break-after: always; visibility: hidden"></div>
# 2. WebDoor Creator Project
WebDoorCreator is the web incarnation and evolution of Egalware's DoorCreator© software.
In particular those are expectec use case
* multi user setup
@@ -10,18 +37,7 @@ In particular those are expectec use case
This document aims to represent detailed information about system actual internals and functional implementation and is passible of revision with the actual software production phases (requirements, general develop, alpha testing, beta testing, staging and go-live).
<!-- TOC -->autoauto- [WebDoor Creator](#webdoor-creator)auto - [Overall Functional Schema](#overall-functional-schema)auto - [Terminology](#terminology)auto - [(A) Public WebServer](#a-public-webserver)auto - [(B.1) Internal WebDoor Server](#b1-internal-webdoor-server)auto - [(B.2) Redis Server](#b2-redis-server)auto - [(B.3) Main DB](#b3-main-db)auto - [(B.4) EgwDoor Processor](#b4-egwdoor-processor)auto - [EgwProd (Multiax Machine)](#egwprod-multiax-machine)auto - [Hw specifications](#hw-specifications)auto - [Expected Use cases](#expected-use-cases)auto - [User registration / login](#user-registration--login)auto - [User Role assignments](#user-role-assignments)auto - [User Role assignments](#user-role-assignments-1)auto - [Order creation](#order-creation)auto - [Door creation](#door-creation)auto - [Order Workflow](#order-workflow)auto - [Time/Cost calculation](#timecost-calculation)auto - [Document Revision](#document-revision)autoauto<!-- /TOC -->
<div style="page-break-after: always; visibility: hidden"></div>
## Overall Functional Schema
This schema is the general representation of the solution, better defined in subsequenct chapters.
![WebDoorCreator - Functional Schema](images/OverallFunctionalSchema.svg "WebDoorCreator")
## Terminology
## 2.1. Terminology
Here a general introduction to terminology used for each component of the project, both for component and items to better understand subsequents details.
@@ -44,7 +60,15 @@ Here a general introduction to terminology used for each component of the projec
<div style="page-break-after: always; visibility: hidden"></div>
## (A) Public WebServer
# 3. Overall Functional Schema
This schema is the general representation of the solution, better defined in subsequenct chapters.
![WebDoorCreator - Functional Schema](images/OverallFunctionalSchema.svg "WebDoorCreator")
## 3.1. (A) Public WebServer
The public webserver will act as a reverse proxy (expected to use nginx) and load balancer for actual user access. It will decouple internal system to the external user web access optimizing static contenct caching & security. Setup of a standard single WAN Nginx linux virtual machine is included.
@@ -69,7 +93,7 @@ This way there will be secured access to internal IT infrastructure decoupled fr
<div style="page-break-after: always; visibility: hidden"></div>
## (B.1) Internal WebDoor Server
## 3.2. (B.1) Internal WebDoor Server
The internal WebDoor Server is a Blazor C# application, made to be hosted in one of this alternative scenario, to be discussed with ABH IT people:
* IIS managed windows websites for c# .net (standard windows scenario)
@@ -101,7 +125,7 @@ queue "EgwDoor Proc" AS B.4
<div style="page-break-after: always; visibility: hidden"></div>
## (B.2) Redis Server
## 3.3. (B.2) Redis Server
The REDIS server vill act as a cache / high speed data layer for example for managing multiple session with the cluster of WebDoor Instances and, at the same time, to act as a inter-process channel manager to permit data exchange between each solution component.
@@ -121,13 +145,13 @@ queue "EgwDoor Proc" AS B.4
@enduml
## (B.3) Main DB
## 3.4. (B.3) Main DB
The Main DB server will be, as a first choice (and if not otherwise requested by customer) a Microsoft SqlServer Express instance. Can be swapped for a MariaDB (MySQL) solution, in particular in case ofcluster DB requirements (high availability and if concurrent data access requirements exceed SqlServer capacity), but at the moment we expect MS SqlServer is the best fit.
<div style="page-break-after: always; visibility: hidden"></div>
## (B.4) EgwDoor Processor
## 3.5. (B.4) EgwDoor Processor
This component, based on **EgtCAM5** Kernel and libraries, is the main core of CAD/CAM/3D task execution.
@@ -140,7 +164,7 @@ The produced 3D (javascript based) web artifacts will be presented to the user i
<div style="page-break-after: always; visibility: hidden"></div>
## EgwProd (Multiax Machine)
## 3.6. EgwProd (Multiax Machine)
For each Multiax machine put in place, there will be a local copy of the standard EgwProd software (enabled to read barcode/qrcode/datamatrix data) and a copy of DoorCreator software (enabling realtime part program generation based on DDF final-product specification with respect on current tools and unique machine setup).
@@ -149,7 +173,7 @@ The software, after recognizing the unique code for each signle door, will be ab
<div style="page-break-after: always; visibility: hidden"></div>
## Hw specifications
# 4. Hw specifications
Hw requirements must be considered a work-in process based on general recomendation. Those are reserved for specific IT infrastructure for the current project and that can (and must) be setup in order to get best result
@@ -169,17 +193,17 @@ special notes:
<div style="page-break-after: always; visibility: hidden"></div>
## Expected Use cases
# 5. Expected Use cases
Here the brief description of use case and expected system behaviour.
### User registration / login
## 5.1. User registration / login
User registration process will be based on email: each user must have a unique email (eg: used for password retrieval and user 2FA confirmation) and from email / tokenized-link exchange process the process will be carried out.
Each user must be registered (self registered or initially mass imported) before being given role on the platform.
### User Role assignments
## 5.2. User Role assignments
The platform will be managed throught RBAC policy (Role-Based Access Control). So each user will be granted 1+ roles. Each role will permit single operation or multiple operation on the system.
@@ -196,7 +220,7 @@ The role levels will be (at minimun) the following:
| SuperAdmin| 5 | UserId | General platform superuser for maintenance/setup task |
### Projects and Orders
## 5.3. Projects and Orders
As already stated
@@ -224,7 +248,7 @@ Each item can be in several states, for example:
Normal workflow will be in forward direction only, returning to previous state will require escalation/approval (to be better defined).
### Order creation
## 5.4. Order creation
Each **Customer User** will be able to create a **project** or use an already available one in a "pre purchase" state.
@@ -238,13 +262,13 @@ Finally resource planning and final extimation for delivery will be sent back to
Production will be driven interally by ABH with support of the planned scheduling and actual machine task will be reported to the central system to record order fulfill and trigger logistics task on completion.
### Base Library
## 5.5. Base Library
Like for actual DoorCreator software, our automated part-program generation process requires definition of hardware in form of drawing and parameters in the form of a user-generated items library the system will consider in automatic program generation.
The process will be carried out with standard DoorCreator software instances already available to the customer.
### Door creation
## 5.6. Door creation
The process of defining the final expected door will be carried out with web-based interface.
@@ -260,15 +284,15 @@ The process will define at least these data:
As a final product a DDF file will be real-time generated upon each data input, sent to the EgwDoor Processor for calculation and results will be presented to the user, in both form of 3D we-based content for display and data produced (feasibility, time/cost expectation, ...)
### Time/Cost calculation
## 5.7. Time/Cost calculation
During standard user process the task of time/cost estimation (based on actual DDF model) will be carried out.
In particular we expect to have some data auto-calculated (ex time from CAM), while other data will be required to external system (ex: materials cost, availability date for materials or machine time, cost markup to define final user price, custom discount based on customer special agreements...)
## Document Revision
# 6. Document Revision
| Date | Edit | Version | Note |
|------------|---|:-------:|-----------------:|
| 2022.11.09 |S.E. Locatelli| 0.2 | Draft completion |
| 2022.11.03 |S.E. Locatelli| 0.1 | Initial draft |
| Date | Edit | Version | Note |
|------------|----------------|:-------:|-----------------:|
| 2022.11.09 | S.E. Locatelli | 0.2 | Draft completion |
| 2022.11.03 | S.E. Locatelli | 0.1 | Initial draft |
Binary file not shown.