This post was originally published on June 9th, 2020 and has been updated for relevancy and accuracy.
If you are evaluating eCommerce software, you have probably heard (or will soon hear!) the terms “microservices” and “packaged business capabilities”. And, if you’re in a role where these terms are not top of mind, like a marketing manager or a CMO, then your colleagues on your company’s tech team have likely heard of them.
At Elastic Path, we have received many questions over the last two years about the difference between microservices and packaged business capabilities, or “PBCs”. And, more importantly, why you should, or shouldn’t, care about them.
In this blog post, I will review:
- The difference between packaged business capabilities & microservices
- Examples of each
- Why each term matters to your team in a commerce evaluation
What Are Packaged Business Capabilities & Microservices?
According to Gartner: “Packaged business capabilities (PBCs) are software components that represent a well-defined business capability, functionally recognizable as such by a business user.” Packaged Business Capabilities are the key building blocks for brands looking to leverage a Composable Commerce approach to designing, deploying, and optimizing “best-of-breed" commerce solutions.
There are many definitions of microservices out there, but we will rely on how AWS defines them: “Microservices are an architectural and organizational approach to software development where software is composed of small independent services that communicate over well-defined APIs. Microservices architectures make applications easier to scale and faster to develop, enabling innovation and accelerating time-to-market for new features.”
Most often, there will be many more microservices in software than packaged business capabilities; some of them can have obscure names and/or bring no tangible business value for the customer. Still, as a whole, microservices-based architecture provides significant benefits for the customer about which you can learn in this blog post.
How Are PBCs and Microservices Different?
The difference in principle between the two is that microservices are an architectural style loved by developers while PBCs tie more directly to the business team’s needs. Microservices are embraced by developer teams as independent components with lightweight APIs that make building solutions faster and easier.
They are fantastic for tech team’s speed and efficiency but on a day-to-day basis, they don’t mean much to a business leader (like a CDO or CMO) or user (like a merchandiser or marketing manager).
On the other hand, PBCs are created to directly align to a business use case or outcome, and therefore they provide tangible value for business teams. For example, order management.
Examples of PBCs & Microservices
To make it super clear, let me provide you with an example using “Customer & Account Management”, a set of functionalities that is core in eCommerce solutions.
Customer and Account Management is a packaged business capability. It allows business users to manage accounts with complex organizational hierarchies, which include multiple divisions, departments, and buyers.
It will enable them to define and configure users with different roles in the buying process, including buyers, approvers, budget owners. These capabilities provide value for business users because they enable commerce use-cases necessary for a business to sell to customers, especially those in B2B, efficiently.
How it is broken in microservices is an entirely different story. This packaged business capability relies on multiple microservices, including role-based-access control, address management, customer management, and more.
It is important to note that as the packaged business capability evolves, more and more microservices can be added to it if necessary. Whether new microservices will be added or new features will be added to existing microservices is an architectural decision done by vendor product development teams.
The Importance of PBCs & Microservices in eCommerce Software Evaluations
This difference between PBCs and microservices matters for brands evaluating modular eCommerce software because different members of your organization will need to review, understand, and evaluate microservices OR PBCs. As always, you should think about your business goals first. Most of the time brands wants to solve a particular business problem, and business teams will be looking for a specific packaged business capability which does it the best.
How the capability is split into particular microservices is essential for the technical team as they are developing against microservices, and it impacts the overall software design. Many other aspects of the commerce platform, which are impacted by microservices-based architecture such as operational costs, composability, high availability, extensibility can be understood during a solution demonstration or a trial.
In the end, most often, customers make purchasing decisions based on their need to meet particular business goals, versus their preference for a technical architecture. If you are leading an eCommerce software evaluation remember that it is all about the business value delivered by the specific architectural approaches, principles, and concepts.
Throughout the evaluation you should be mindful of educating the right teams on the right terms and technology. For the most part, developers & tech teams care about microservices and business teams will care more about PBCs.
Explore how Elastic Path Commerce Cloud microservices-based architecture provides benefits for business and technical teams by enabling superior technical agility.