We get a lot of questions about the different ways B2B commerce applications are being delivered today. So, this is the first in a multi-part series that discusses, from a general perspective, the different application models available and the trade-offs associated with them.
Before we dive deep into an eCommerce platform, let’s simply start by defining the three basic models and their underlying elements.
For purposes of general discussion, we can break down an application into three elements: The User Interface, the Data Model and Business Logic, and the Infrastructure.
- The User Interface is the front-end code that defines how users will interact with the underlying application.
- The Data Model and the Business Logic determine the functionality of the application and deliver that functionality to the User Interface.
- The Infrastructure is a collection of physical or virtual resources that supports the application environment: server, storage, network components and connectivity.
Different application delivery models use or combine these three elements in different ways.
- SaaS, or software-as-a-service, bundles all three elements into a single deliverable via a web browser. Users get pre-defined interfaces to configure functionality based on the underlying data model and business logic. Infrastructure is inherent in the service, so users don’t have to manage any of the servers, storage or network components associated with the application.
- Code can be referred to here as an open-source code base or an on-premise application. In either case, “code” is a combination of the the front-end user interface and the back-end data model and business logic. Code requires the user to provide the underlying infrastructure (servers, storage, network components, etc.). When traditional “on-premise” code bases are installed with an external infrastructure service (like Amazon Web Services, or RackSpace) they are referred to as “virtualized” applications. This is different than SaaS, and we will talk about that in a later post.
- cPaaS, or “commerce platform-as-a-service”, is relatively new and combines a data model and business logic with an underlying delivery infrastructure. Since the user interface is decoupled or left to the discretion of the developer, sometimes these platforms are know as “API First” platforms or “headless” platforms. With this delivery mechanism, the vast majority of the application is already built, but the user interface can be customized to achieve many different application outcomes.
Stay tuned for our upcoming series to learn about the trade-offs in these application delivery models and provide some insight into why businesses should choose an eCommerce platform.