Web Based Learning Management System
The client required an eLearning management system that enables the organizations to create and run their own e-learning courses with an online eLearning platform. Our client focuses on Training and Talent Management, and wanted to build an application that can be tailored to the specific needs of enterprises and HR departments of organizations on any vertical.
|SaaS Platform||Azure Cloud|
|Individual and Corporate Onboarding||Continuous Integration and Delivery using Azure Devops|
|Multiple Subscription Plans||Analytics & Reporting(Event Based)|
|Payment Gateway integration||Export CSV|
|Organization Dashboard||Business Integrations|
|Users and Roles||Google Analytics|
|Realtime Analytics||Linkedin Integration|
Architecture & Analytics System
This web application is designed in N tier architecture style to ensure scalability and Fault tolerance. And that ensured vertical & horizontal scalability.
We followed the OLAP Model to design Analytics specifically Snowflake model. The Snowflake model is more apt than Star in our case since our business is built around Learning/Courses Domain, This helped to bring more details/business reporting about the various areas of the business . like drill down, rollup ( details about hierarchical dimensions). By using the Snowflake model we achieved that, instead of having multiple star schemas we use one schema approach that is more easier in our case.
We used OLAP – Snowflake model to design the db, snowflake schema is an extension of a star schema .Star and snowflake schemas are similar , a central fact table surrounded by dimension tables. The difference is in the dimensions themselves. In a star schema each logical dimension is deformalized into one table, while in a snowflake, at least some of the dimensions are normalized.
To implement this, we used event based architecture and asynchronous communication mechanism using Azure Service Bus( Topic based publish – subscribe model). We also use Power BI for visualization.
Fig 1. Azure Kubernetes Service
Fig 2. Azure Service Bus
The client wanted to use his own custom CMS framework for the web platform. It was a challenging task to integrate the features of LMS with the CMS framework. Another challenge faced was integrating a third party video player to our application. The client has chosen Wistia video player for the platform. It was a difficult task to capture the real-time of different events(play/ pause/ no:of seconds watched etc) while users are watching video tutorials. The other challenge encountered was tracking insights data and Analytics integration. The client had a Power BI application and he suggested integrating the PowerBI application with the Analytics of our platform. It was a tedious task to design DB for this requirement. The next challenge was to display a data summary on Dashboard. Implementing a module test/ exam was a demanding task because the question list needed to be replaced with another set of questions when the user is attempting the same test for a second/ third time.
Technology & Tools
|Angular||.net Core 3.1||Intercom||Azure||Prometheus||Visual Studio / JetBrains Rider|
|Bootstrap||C#||Mollie||Azure Kubernetes||Grafana||SQL server management Studio(SSMS)|
|HTML 5||Asp.net webApi||Azure Service Bus(Messaging)||Nginx||Azure Service bus Explorer|
|TypeScript||SQL Server 2018|
Scalan Labs was able to successfully deliver the web platform within the scheduled time. The end result was a LMS where organizations/ individuals build and deliver all of their digital training content. No additional configuration or IT support is required. Organizations/ individuals can create their own learning materials and courses. There is also a web based admin portal for overall administration and management where the admin can add or delete courses, users & instructors, set targets and track learner progress.
“Of all the things I’ve done, the most vital is coordinating those who work with me and aiming their efforts at a certain goal.” –
Walt Disney, Founder of Disney
More Case Studies
Contact Us Today. Let's Work Together.
Looking for a LMS application? Get in touch with our team to find out more about how we can develop your app.