AWS Custom Application Development Product Landcheck
Executive Summary
About ClientÂ
Landcheck is an easy and affordable way of accessing crucial natural hazard risk information about any property in Auckland. The data is collected from official sources and neatly summarized into an easy to read PDF report. This information will help you make more informed decisions when investing your hard-earned money into Auckland Real Estate.
Project Background - AWS Custom Application Development using ESRI ArcGIS
Peritos and Landcheck got together to create a AWS Custom Application Development using ESRI ArcGIS integration to generate Hazard reports for specific properties. This was used for generating land based report which can be ordered specific to an address. client wanted to create an application which gives a comprehensive report to the user for their address indicating multiple hazards. It includes 10 hazards like Flooding, Winds, Liquefaction, Coastal Erosion, Active Fault etc. This report is created based on the latest data from authorised information provider, with expert Advice from Landcheck Engineers at a optimum cost which can help the end user get the information they need to make decisions regarding a specific property. This was all being done manually which the client now wanted to develop as a SAAS based offering.Â
Scope & Requirement
In the 1st Phase of the custom application development, implementation was discussed as follows:
- A customized app which generates automatic reports of searched property address in Auckland Region
- Reports are generated from querying hazard data from ArcGIS server, where the information from Authorised council have been collated. Additional hazard risk calculation logic is applied on top of information returned from ArcGIS server to show the hazard risk in user friendly way. Based on the hazard risk level calculated for the property, Landcheck SMEs have also provided information to help understand the risk, which should also be added to report in a very user friendly way. Â
- Each hazard should have a property aerial image with hazard layers, showing how much area of the property is covered by different hazard levels.
- Reports should state the problem, hazard percentage and even the solution.
- User should be able to download the report in form of PDF files.
Implementation
Technology and Architecture
Read more on the technology and Architecture we used for AWS Custom Application Development using ESRI ArcGIS
Technology
The web app was deployed with the below technological component
• Backend Code: .NET Core, C#
• Web App code: ReactJS
• Database: PostgreSQL
• Cloud: AWS
Integrations
• Google APIs
• LINZ database
• ESRI ArcGIS
• Stripe
• Auth0
• SendGrid
Security:
• AWS WAF service is used for the firewall
• All API endpoints are token based
Responsive Design:
• All screens and UX was done keeping in mobile usage and are implemented with a responsive design in mind.
Scalability
Application is designed to be running on serverless services, so that it can easily scale up and down automatically based on usage.
Cost Optimization
Alerts and notifications are configured in the AWS to notify if the budget is being exceeded. Being deployed on serverless infrastructure, it desn’t imposes any additional cost if application is not being used a lot. Peritos being a cloud partner is managing the environment for the client keeping a close watch on the cost and finding ways to optimize the same
Backup and Recovery
Automated backups are configured to backup the database and store multiple copies of the backup.
CI/CD is implemented to automatically build and deploy any code changes.
Features of Application
- Search for an address, if the address is under supported regions then user will be able to select the address and application shows the outline of property in aerial view.Â
- User can get the report by creating an account on the application and making the payment
- Get the rating for the property for multiple hazards, like Winds, Flooding, Volcano, Earthquake etc. and expert advice from Landcheck Engineers on what are the remedial actions and next steps to take.Â
- This application, backend and front end are powered by AWS services.Â
Challenges
We collated data from multiple council region and helped to get this stored on AWS layer. When a user buys the report, then the risk calculation logic goes through several datasets in ArcGIS server to calculate the risks for different hazards, then combine those results along with the expert advise from the Landcheck engineers and returns the result by generating a PDF. This was taking a huge amount of time when done at the go.Â
- Complex calculations are required for each hazard which involves data coming from different ArcGIS feature layers. In addition to this, an image for each hazard is also created combining multiple hazard layers from ArcGIS map server. All of these calculation were taking a lot of time in generating the report. In order to resolve this, we moved all the hazard calculation logic in a separate component, which gets triggered through an event. In this we optimized the code to perform each hazard calculation on separate thread. Also, we offloaded some of the GIS calculations to ArcGIS server, and access it with ArcGIS APIs. These changes reduced the time report creation time to just few minutes.
- Testing of the application with multiple addresses and users who were experts in their domain was a challenge.
- The data was quite complicated to understand and we relied on the Landcheck’s engineers to inform us what the expected result was. We did cover a lot of suburbs and did test close to 600 properties so we could be sure it is working as expected. However there were outliers and cases which did not work as expected and had to invest a fair bit of time to resolve those.Â
- ArcGIS integration was an issue as all the data from different Parcel and Linz layers had to be collated on the AWS ArcGIS server so we could get the information from a single source for multiple cities and suburb region
- This data was complicated to load and we had applied layers in terms of images and legends to display the data on the report side for an end user to easily interpret the results.Â
Project Completion
Duration
- April 2023 – Jan 2024 ~ Implementation and Support
- Oct 2023 – Present We are rolling out the changes to south Island in 2nd version
Deliverables
• Setting up the AWS services Architecture review and sign off by internal and existing vendors of Landcheck to ensure all best practices are followed and it is in alignment with best practices using AWS well Architected framework to ensure security , scalability and performance are upto the mark.Â
• Custom web application was developed by the Peritos team working closely with the client’s product owner and completing any changes, bugs and adding critical features prior to Go live to ensure we have a smooth release.Â
• We are still working on the handover documents and preparing for the final go LiveÂ
Support
As part of the project implementation we provide 2 months of Ongoing extended support. This also includes 20 hrs a month of development for minor bug fixes and a SLA to cover any system outages or high priority issues.
Testimonial
After working for 6 months on the project we took feedback from the Product owner whom we have worked closely for project execution
Peritos is a team of highly skilled developers, technical experts, and delivery managers. We’ve been very impressed with their commitment, their developers and delivery manager have conducted themselves with professionalism and diligence at all times, and the quality of the work they have performed has been excellent. Many times, they proposed better solutions which resulted in better and faster product. Peritos is a reliable AWS Partner, you can trust and be satisfied.
Edward Yarashev
Product manager Landcheck
Next Phase
We are now looking at the next phase of the project which involves:
1. Ongoing Support and adding new features every Quarter with minor bug fixes
2. Adding support for more NewZealand cities