Atria - Platform Definition and Migration Strategy
Platform Definition
The Hardware Platform Atria will be an extensible application used at all levels of the Milvian Hardware Team’s install, monitoring, and provisioning processes for Aqueduct or the LoRaWAN Platform.
This application will the singular platform for hardware installers, device provisioners, site surveyors, and site administrators of our choosing, to monitor the status of hardware at a given Site.
This application will be a migration of the Install App into the Device Health App before expansion to the definition of the much-needed site survey solution, (non-Quicksight) device dashboards, and device provisioning. These bolded items are new scopes of work that will add immense value and time savings to our current processes.
Some Notes for Work
This scope of work largely depends upon the migration of the Install App capabilities into the Device Health App, and then some definition and repository changes to the Device Health App.
We will then need to define UserTypes within Cognito to determine who gets access to what layers of the application. The Diagram provided below gives an outline of the 4 UserTypes useful to start.
This also creates an opportunity to define Users and UserGroups within the Hardware Platform which can be done by creating a User’s DynamoDB Table for the Hardware Platform. This will enable us to limit view of devices or sites to individual users, UserGroups or otherwise limit access in line with Amazon’s Policy of Least Privilege.
Migration
The scope of work to migrate the Install App within the Device Health App is pretty strtaightforward.
Define Routes.
/ (for the my-apps-page containing 'My Apps')
/monitor
/installer
/surveyor
/provision
/adminDefine Apps within the Hardware Platform
Device Health (/monitor)
Install (/installer)
Survey (/surveyor)
Provision (/provision)
User Admin (/admin)Create UserTypes, and restrict the routes to the different apps based on the UserTypes
Move the Install App code into the device-health-app repo.
Move the CDK to deploy backend resources for the new Hardware Platform.
Check the Cognito references use the device-health-app Cognito pool and references the Installer user type.
Move the frontend processes to the Install App within the Hardware Platform (refactor UX/UI to match the DHA stylings).
Follow the Flow
UserFlow in general should always take the user thusly:
Login → Landing Page with App Selection → Page of Purpose
The Name
Following our Roman theme here at Milvian Group: Atria are the centrepiece of Roman household archetecture, the most important room in the house, and where you go through to access the rest of your home. Atria is also the name for the upper chambers of the human heart. So the name is to say that this application will be the center of everything. The ‘heart’ of our operations. We’ll be able to conduct our provisioning, installation, monitoring, and more all from a single platform. And it’s a pretty catchy URL.