Global warming problems and increased utilisation of fossil fuels brought us to think how we can leverage existing technologies around PEGA and build something that would have positive impact to the environment.
What it does
We built a web platform that allows users to share their electric vehicles, based on the contract they agree upon. The channel uses location, price and date filters to search for vehicles and send requests to the vehicle owner, enabling 2 parties to agree on the rental contract.
How we built it
We devised two main personas who would interact with the Application, and five main micro-journeys
Owners - Customers who own the Electric Vehicles.
Drivers - Customers looking to hire an Electric Vehicle.
Each of the two personas goes through a registration process using the guest authentication portal which requires them to attach a driving license for verification of their details.
Using the OCR component we extracted the information from the vehicle license image, and used Regex to format the data and derive fields from the OCR extraction
The use of AWS3 Repositories to encrypt the sensitive images of driving licenses and car registration was a great addition to the overall performance and security of the application.
Once registered a confirmation email is being sent.
2.Become a Host
Once the Owner persona has been automatically verified they can begin the process of making a car available for hire.
The process involves attaching a vehicle image containing the registration number, allowing us to use the vehicle image recognition API to retrieve additional information about the vehicle.
3.Set Car Available
As the car has been uploaded to application and associated to the user, we then go through the process of posting it for other drivers to view.
We started by defining data model for vehicle, customer, and availability dates and all relations they have to each other. We then moved to the google map integration and incorporating the Google API functionality to allow the vehicles to be viewed on the map.
The end result is posting the car for hire, and allowing it to be searched by the Driver persona.
Case Life Cycle Design of the Main Process
3.Search for a Car
Initially we decided that there where 4 stages that represent transition between Driver and Owner.
We then moved to defining data model, functionality like searching for car using a google maps and incorporating business processes like approvals and email notifications.
The key point element is the google map integration that uses defined vehicle data model which has a coordinates column in the data table, which allowed us to pull search results onto the map.
4.Approving Vehicle for hire
The Owner persona logs into the application to view potential hire requests. We re-used the data models and views from the previous processes, to give the Owner a summary contract.
Once the approval step was selected, we sent the same information over to the Driver in an immutable PDF format, as well as through the application so they could consume and ensure everything was expected, before finally paying and accepting the contract.
5. Drop-Off and Review
As the contract came to a close we needed the final stage to complete the transaction, to ensure both personas where able to provide feedback and ensure a smooth transition.
Re-using as much as we could, we built views to show only pertinent information to the customers. We also used more advanced logic to prevent drop-offs from occurring earlier than anticipated, and also tried to include the terms and conditions as reminders for Drivers on how the vehicles should be handed back.
The implementation of ratings allowed us to gain valuable feedback on the personas, we hope that by ensuring users ratings are visible to one another, we would encourage good behaviour on both sides.
We configured the admin portal to provide oversight of the entire process
We concentrated on daily registration reports and Google based location reports.
Challenges we ran into
We all volunteered to help in mid-March to see what we could come up with, and to see if it was feasible to deliver something. We had a wide range of experience levels, some us where weeks/months into our qualifications and brand new to PEGA, but we also had some serious PEGA veterans.
Working remotely has certainly had an effect on the team in early stages, but as everyone's confidence grew and people got to know each other a little better, the levels of communication and co-ordination was fantastic!
Some of the functionality we hadn't used before, so there was some quite long days working out how we were going to implement some of the fancier functionality like APIs, OCR and AWS encryption, but the sessions were great and we learnt a lot about the capabilities of PEGA.
Accomplishments that we're proud of
OCR and Image Recognition API integration is probably the thing that stands out the most, the sense of "Wow, we did it!" when it worked the first time will be something that we will probably remember for a long time!
Google map API Integration, in not only the main processing screens, but also the reporting is a very close second, this really gave the project quite a bit of momentum early on as it gave us something tangible to experiment on.
In order to expose the application to public for registration, we needed a way of letting guests sign-up. We developed the application so it could be accessed on the internet so that any customer can access the application through anonymous authentication. This wasn't something we had done before, so was a great breakthrough for the team when it worked!
What we learned
Due to the varying levels of experience, the range of new skills acquired is quite varied.
Some of the more complex functionality such as OCR and Google APIs where new skills for most of the team members.
Setting up guest authentication portal was another piece of functionality that a lot of team members hadn't used before.
A lot of team members hadn't built on the Cosmos framework previously, so again new understandings of how we can utilise the functionality in Cosmos was great.
Reporting and using APIs and modifying out-of-the-box reports was another area the team hadn't had much experience with.
AWS Repositories for storing and encrypting images was something the team hadn't had much experience with, which enabled the more senior team members to up-skill the newer team members.
Lastly, the ability to be working remotely and co-ordinating with each other using only MS teams meant we had to find creative ways of making sure everyone was being utilised and play an active role in getting the application over the line.
What's next for AI4EV
There is plenty of functionality we had to park for the time being due to time-restraints but we think the road map would probably include the following.
Payment Gateway Integration This would have been a nice have to further shore up the security and robustness of the application.
Advanced Alternate Stages We would of like to come up with more inventive stages to the process to handle more complex business scenarios, like changing bookings.
App Mobility Better app mobility would have been high on our list, we had some issues with time constraints, and would of liked to make the application a bit more mobile friendly.
Vehicle Key handling We think there is probably a better way of getting the keys to each persona, we think an app to unlock the vehicle for a certain time period or having key drop-off stations would be our preferred route.
Better Charge Station Integration Allowing users to search and plan their journeys using more advanced google map integration would be some functionality we would have loved to incorporate.
Host a Charge Station Was another idea we had where by Owners could also rent out their charging capabilities.