Multi-tenancy, the sharing of HW and SW resources, is one the 5 essential characteristics of Cloud Computing according to NIST authoritative definition. All users of a real Cloud SaaS share the same source code and virtual machines pool. At first standardization can be viewed as a limitation, but overall it is a big advantage.
If parameters include most personalization needs, than go-live is much faster and cheaper than writing custom code. But an even more important advantage is the service continuous evolution. When delivered by the same “engine”, bug fixing, optimization and new features are immediately available to all user without any additional cost. Small independents and large chains concur to improve scale economy and a new ecosystem.
Especially because all users depend on it, a multi-tenant “engine” must take in account failures by design. Modern PaaS (Platform as a Service) are a great tool for achieving high SLA (Service Level Agreement). But as Internet connection may have its own failures and POS are mission critical, this is not enough. The only way are intelligent devices working seamlessly in connected and disconnected mode.
A multi-tenant design lead also to scalability (the capability of serving a large and variable number of users) and efficiency. In order to give a good service in all conditions, the engine must add resources when needed and release immediately after, in order to remove any waste. This “rapid elasticity” is another essential characteristics of Cloud Computing according to NIST definition. Compared with single-tenant applications hosted on a IaaS (Infrastructure as a Service), this radically new approach gives also the lowest environmental impact and the best economic sustainability.
The difference between multi-tenancy and traditional single-tenant design is similar to industrial and handicraft production, where the product is more similar to SmartPhones than to luxury shoes.