About the Client
Launched by The Ministry of Rural Development (MoRD) of the Government of India, LokOS is an initiative under the National Rural Livelihoods Mission (NRLM). It is a platform designed to document member profiles, livelihood data, savings, lending & repayment details of people in rural areas all over India. It is operated by community-based organizations (CBOs) such as self-help groups (SHGs), village organizations (VO), and cluster-level federations (CLFs) across the country. By digitizing and centralizing member records, LokOS aims to streamline financial management and empower women in rural communities.
Country
India
Industry
Government
Services Used
Business Situation
LokOS was intended to document member profiles & livelihood data of rural household members, but several issues made it difficult for the admins, bookkeepers, and trans-approvers to work on the platform.
The existing LokOS application was facing critical usability and performance challenges that hampered the overall effectiveness of the platform.
At the outset, the application was built on a traditional monolithic architecture where the application logic was heavily coupled with a relational database. This burdened the system containing millions of records from member profiles, livelihood data, savings, lending, repayment details, etc.
Additionally, the platform’s existing identity management system was directly tied to the database, making user management cumbersome and less secure. This lack of a centralized identity provider led to inefficiencies & potential vulnerabilities.
Since the application directly interacted with the database for every operation, the higher the number of users on the platform, the slower the application became. Queries that were efficient with a smaller dataset would take a long time to complete, especially during peak hours. On top of this, the database was overloaded with requests of long-running operations, causing delays in user responses and diminishing overall system responsiveness.
Moreover, a tightly coupled codebase resulted in low code quality, complicating maintenance and adherence to best practices. Poor reporting mechanisms and ineffective user verification processes also contributed to operational inefficiencies and data inaccuracies.
In light of these challenges, the client, The Ministry of Rural Development (MoRD) recognized the urgent need to revitalize LokOS and partnered with Daffodil Software for its proven expertise in developing innovative applications for the public sector.
Daffodil was tasked with transforming LokOS into a robust, user-friendly platform that could efficiently manage vast amounts of data, enhance user engagement, and support the SHGs in documenting member profiles.
Daffodil’s extensive role involved:
Conducting a thorough audit of the existing platform to identify bottlenecks and areas for improvement.
Decoupling the application from this overloaded database to create a more flexible and scalable infrastructure, & enhancing performance, and maintainability.
Establishing protocols for data integrity and accuracy to enhance user trust and decision-making capabilities.
Redesigning the UI to be more intuitive, catering to the diverse needs of bookkeepers, trans-approvers, and other stakeholders.
Integrating advanced identity management and access controls to improve user login processes and protect sensitive information.
The Solution
The project began with an extensive knowledge transfer from the existing software vendor. Team Daffodil audited the entire codebase to evaluate all aspects of the application, identifying vulnerabilities, inefficiencies, and areas for enhancement.
Our team identified the need to decouple the application components from the database architecture due to performance bottlenecks and reliability issues caused by rising demands. This separation was necessary as the application data served not only SHGs but also nationalized banks and government initiatives for eligibility assessments, financial records access, and loan processing.
Delays or inefficiencies on the platform could negatively impact support programs and hinder the overall objectives of rural development initiatives. This may lead to missed funding opportunities, diminished trust among stakeholders, and a slowdown in the economic empowerment of rural communities.
By establishing rigorous data entry protocols and implementing automated validation checks, Team Daffodil ensured that only accurate and relevant information was captured at the source. This proactive approach improved the quality of data within the system. Optimizing the database structure allowed for faster data retrieval and processing times, enabling stakeholders to access essential information swiftly, thus enhancing the overall user experience.
A complete redesign of the user interface was conducted to simplify navigation and enhance engagement. Key features included intuitive dashboards, streamlined workflows for data entry, and improved accessibility options.
The implementation of cloud-native Kubernetes facilitated dynamic resource scaling for the application, enabling it to effectively manage fluctuating workloads by decreasing resource allocation during periods of lower demand. This optimization reduced database load by almost one-third, thereby improving overall system performance and responsiveness.
Alongside, Team Daffodil proposed several targeted solutions including advanced cache management, queue implementation, etc. By collaborating closely with LokOS’ stakeholders throughout the process, the team ensured that the solutions aligned with business goals and user needs, paving the way for a more agile and responsive system.
Here’s how we transformed LokOS into a leaner and more efficient application:
Streamlining the login process with identity provider implementation using Keycloak:
To address the login issues encountered by admins & other stakeholders, Team Daffodil implemented Keycloak as an identity provider. This transition from database authentication allowed us to delegate user management to Keycloak, which specializes in secure user authentication. By managing user sessions independently, Keycloak reduced the load on the primary application, leading to improved response times and system reliability. Consequently, the platform became more robust and could support a larger number of users without affecting application performance.
Accelerating performance through intelligent cache management using Redis:
Team Daffodil significantly improved application performance by utilizing Redis to cache approximately 120 GB of frequently accessed data in memory, enabling faster retrieval and reducing latency. For Self-Help Group (SHG) admins, this meant that they could complete transactions, view reports, and manage profiles in near real-time minus the frustrating delays.
Efficient queue management for streamlined operations using Azure service bus:
To optimize data handling, Team Daffodil implemented Azure Service Bus, enabling asynchronous processing of user requests. Rather than sending data directly to the database upon user submission, the system now routed transactions through the Azure Service Bus. This method allowed the application to manage user requests more efficiently, minimizing the risk of database overload during peak usage times. Additionally, this reduced the frustrations of waiting for processes to finish, allowing admins to seamlessly continue their tasks.
Enhancing scalability and efficiency with advanced file management:
Azure Blob Storage was used for managing files related to user transactions. This enhanced availability ensured that files were stored reliably and were easily accessible when needed, particularly important for bookkeepers in managing financial records, meeting notes, and other important materials.
Distributed tracing and advanced logging:
The integration of distributed tracing tools significantly improved the ability to monitor the application’s operational flow in real-time. With detailed logs capturing user behavior and system performance metrics, we were able to analyze patterns that might indicate underlying problems. For example, logs enabled us to pinpoint transaction timeouts or errors, helping distinguish between data-related issues and functionality issues. This proactive monitoring ensured that we could address potential problems before they escalated, ultimately reducing user frustrations.
Health check endpoints:
Health check endpoints were established to monitor the performance and availability of services such as Azure Blob Storage, Redis, etc. in real-time. This proactive approach enabled the team to detect and address infrastructure issues before they impacted users.
By accessing real-time feedback on the operational status of these components, Team Daffodil was able to swiftly detect any anomalies and identify any infrastructure issues. This continuous cycle contributed to a more resilient application, ensuring that users come across minimal downtime or disruptions.
Code quality assurance with SonarQube:
The implementation of regular code reviews and quality checks through SonarQube ensured adherence to best coding practices. This resulted in a more maintainable codebase, reducing technical debt and facilitating a leaner application.
Aadhaar and bank account verification:
Aadhaar is a twelve-digit unique identity number that serves as a proof of identity and address for Indian citizens.
The implementation of Aadhaar and bank account verification, along with deduplication processes, was crucial for enhancing the integrity and reliability of the system. With a database comprising of approximately 100 million+ users, ensuring that each Aadhar number and bank account was unique, was essential for accurately identifying individuals within the Self-Help Groups (SHGs).
Team Daffodil digitized the entire manual process of identification, effectively eliminating ghost members and mitigating the risk of fraud and unauthorized access to financial services.
By creating unique IDs against SHG members and offloading the verification tasks to established platforms like DigiLocker and National Payments Corporation of India (NPCI), the LokOS application could maintain its performance while ensuring accurate and secure identity and account verification. This streamlined process not only reduced the burden on internal resources but also expedited the verification timeline, allowing for quicker access to services and support for admins. As a result, the overall efficiency of the system was enhanced, facilitating a smoother user experience while maintaining the integrity and reliability of the data.
Offline capability with regular data synchronization:
The system was designed to function effectively even in offline mode, allowing users to continue their work without interruption. Data collected during offline sessions is synchronized with the server every six hours. This ensures that all information remains up-to-date and consistent, even if the users are temporarily disconnected from the internet. This feature enhances accessibility for bookkeepers in remote areas, ensuring they can reliably input and manage data without being hindered by connectivity issues.
Comprehensive reporting:
State and national systems relied on LokOS platform to retrieve crucial reports. However, the inefficiency of the system led to lengthy processing times, often resulting in failures.
To streamline this process, Team Daffodil employed a data lake architecture to manage the huge amounts of data generated at the time of reporting. Instead of real-time reporting, reports were generated every morning, reflecting data from the previous day. This allowed for efficient data storage and retrieval without directly impacting the operational database every time. By utilizing structured JSON reports based on the data housed in the lake, we maintained system performance and ensured that the operational database remained undisturbed during reporting activities.
The Impact
Team Daffodil’s enhancements transformed the LokOS application into a significantly faster and more user-friendly platform, improving performance by up to 90%.
With improved login and data searching capabilities, bookkeepers & trans-approvers could quickly access the information they need without frustrating delays. Moreover, the ability to work offline ensured that stakeholders in remote areas could continue their data entry and management tasks without interruptions.
The enhanced data collection and documentation capabilities of the platform helped in managing the savings of SHG members and got them one step closer to getting financial assistance with ease. This not only fostered a sense of financial independence in rural women but also helped them make informed decisions regarding their livelihoods.
The platform empowered many digital initiatives such as Digital Aajeevika Register, Lakhpati Didi, Model CLF, Village Prosperity Resilience Plan, Cadre Management, and more.
As a result, the application has mobilized over 100 million households & has helped to manage over 10 million SHGs, VOs, financial transactions, and meetings, at national, state, and block levels. In addition, LokOS has digitized transactions worth 2 trillion yearly, in SHG networks.
As a part of ongoing enhancements, Team Daffodil is currently focused on further elevating the search capabilities of the application. Once live, the system would enable real-time search of Self-Help Group (SHG) members, allowing admins to quickly locate specific individuals based on various criteria. This feature would enhance the operational efficiency of the platform by providing instant access to member information and would enable fast and reliable decision-making.
Read Related Case Studies
Get in Touch
Sign up for a 30 min no-obligation strategic session with us
Let us understand your business objectives, set up initial milestones, and plan your software project.
At the end of this 30 min session, walk out with:
- Validation of your project idea/ scope of your project
- Actionable insights on which technology would suit your requirements
- Industry specific best practices that can be applied to your project
- Implementation and engagement plan of action
- Ballpark estimate and time-frame for development