The client is a premier provider of award-winning learning and performance solutions for the life sciences industry.
Unify Admin tool is a software application for the administration to manage the learning site, create login accounts for different user types, creating courses or create learning events, enroll learners, assign presenter, create groups of learners in the hierarchy for account management and run reports on learner activity. It also tracks the complete training workflow like course progress, scores, provides user notifications through emails.
Learner application: Learner can login and go through the assigned courses, join events and sessions. Learners can view the status and progress percentage of each asset in their course and the completed results like scores and ranks in leaderboards.
The client sought enhancements to the application, including a new UI design, security enhancements, and fixes to improve several technical issues.
Excellarate diagnosed and corrected issues client was having with loading live events, sessions, and polls for more than 300 users:
- Identified the LINQ queries causing repeated DB calls and converted them into SPs to make sure anytime there will be only a single round trip from application to the database
- Implemented caching wherever possible to load the images which are like thumbnails for assets and curriculums
- Identified the JS methods which are making multiple and unnecessary calls to service methods and done the required code cleanup
- Improved the polling feature with Azure Redis Cache for SignalR Scaleout, enabling it to more seamlessly serve multiple requests coming from multiple, unique instances of the application
The client wanted to update the UI with a completely new look and feel. Excellarate implemented a responsive design for the web application to be adaptable to varying browsers and displays, then customized the new UI design for both web and iOS, ensuring consistency across platforms.
Excellarate added upgraded security features, including:
- AES 256 algorithm to encrypt user’s personal identification details while saving in database.
- Password encryption algorithm SHA2 (from SHA1)
- Absolute timeout feature for iOS application
- Automatic iOS login token refresh in database for each user