Planning a Scalable, Multi-Tenant SaaS IoT Platform
About Our Client
The Client is a European IT consulting firm developing network and infrastructure solutions and providing related maintenance services.
Challenge
Initially, the Client designed custom IoT infrastructure solutions for various businesses, but it was time-consuming and limited the number of companies they could work with. To make better use of their resources and expand their reach, the Client decided to create an IoT platform that would be provided to businesses as SaaS and enable them setting up a consistent IoT infrastructure automatically. As the company didn’t have experience in such large-scale initiatives, the Client was looking for a technical partner to design the architecture of the future platform.
Solution
ScienceSoft assembled a SaaS consulting team of a project manager, a business analyst, a solution architect, a DevOps engineer, a data engineer, and a Python developer within two weeks. To assess the needs of the Client, the BA conducted a series of in-depth interviews with the Client. At the same time, the Client interviewed possible end users of their IoT platform, such as representatives of innovative construction companies and plants, to understand the most wanted use cases.
With the help of the elicited information, ScienceSoft’s team mapped out key technical requirements for the SaaS IoT platform:
- Independence from any provider-specific cloud services.
- The system should be protected from users altering the platform’s core but at the same time provide possibilities for easy maintenance.
To meet these requirements, ScienceSoft’s team designed a multi-tenant platform architecture with the Client as the Super Admin, which can manage the access of all users. The multi-tenant architecture helped balance load between users’ instances, isolate user data and collect personalized statistics on resource utilization.
The team described the resulting architecture in the Software Architecture Definition (SAD) document that contained the following parts:
- Component view (logical architecture components).
- Data flow.
- Infrastructure.
ScienceSoft supported the designed architecture with an MVP development plan and a system requirements specification for the platform.
Results
The platform based on the artifacts created by ScienceSoft would help end users connect their company’s IoT-related data sources and targeted systems without any coding skills. Thus, they would be able to spawn a full-fledged IoT platform in a short time, which would help the Client expand their presence on the market with the new offering and free up resources at the same time.
Methodologies
Q&A sessions, functional decomposition, business requirements analysis, competitor analysis, Software Architecture Definition (SAD).