Solutions are focused on specific problems, be they technical- or business-oriented, and they are less self-contained, in the sense that they may interact with other solutions, or with other parts of the cloud stack. Instead of an end-user tool, developers get access to a set of APIs that let them customize the system and access its underlying functionality without having to worry much about implementation details.
This solution also brings with it several interesting new notions with regards to the cloud. Instead of asking users to configure the system in terms of number and size of instances, it functions as a fully managed service offering. The system itself will monitor resource usage and scale-up or down as needed to optimize your costs.
Solutions-as-a-Service have the potential to be revolutionary. While several companies claim to be “solution providers”, more often than not they don’t have a structured solution, but rather previous experience in the problem domain that they can apply to build custom software – or customize existing software – that solves a specific business problem. Cloud-based solutions, however, take existing experience and apply a degree of standardization in order to build a one-size-fits-as-many-as-possible offering that still retains some flexibility.
Unlike custom-built solutions, they bring the benefits of cloud computing to common business problems, offering transparent scalability, the possibility of cost optimizations, and a pay-as-you-go, operational expenses-focused business model. They also removed from the equation the complexity of a long-running IT project. Unlike a custom-built solution that needs to go through a development process, cloud solutions are supposed to be “ready to go” from the start.