WebSphere Commerce application layers

Now that you have seen how the various software components related to WebSphere Commerce fit together, it is important to understand the application architecture. This helps you to understand which parts are foundation layers and which parts you can modify.

Video

The following diagram shows the various layers that compose the application architecture:
Image illustrating the layers in the WebSphere Commerce application
Business models
In WebSphere Commerce, a business model represents a sample business situation in which the WebSphere Commerce product may be used. A business model describes a scenario in which various parties use WebSphere Commerce to achieve their needs. The five business models provided by WebSphere Commerce are:
  • B2B direct
  • Consumer direct
  • Demand chain
  • Hosting
  • Supply chain

Within each business model, WebSphere Commerce provides one or more samples, referred to as starter stores, which may be used as a starting point to develop online sites. You can create other business models to suit your business needs.

Business processes
Represent the processes available in WebSphere Commerce divided by business model. The business processes are divided into three areas:
Administrative processes
Processes that are used to administer a site, a store, or an organization. Administrative processes are described generically. These processes are generally used as-is, that is a change to or an addition of an additional administrative process will usually entail customizing WebSphere Commerce.
Starter stores
Starter stores contain sample processes that would be followed by customers of the store. Many different kinds of stores, satisfying a wide range of business needs can be created with WebSphere Commerce. Use the processes described in starter stores as a guideline, or a starting point, for site development. Changing or adding a process to a starter store processes will require changes to the site design. Frequently, this type of change does not require customizing the underlying infrastructure.
Solution
A solution describes the high-level view of how all the administrative processes and starter store processes fit within the framework of the overall business model. A solution combines processes into a coherent picture which explains the relationship between the various process groups.
Presentation layer
The presentation layer is responsible for displaying results. By default, there are two supported types of presentation layers supported: Web and rich client. For the Web presentation layer the display is rendered using JSP files, whereas, for the rich client the presentation is rendered with Eclipse views and editors implemented using SWT components.
Service layer
The service layer, implemented using OAGIS messages, is a channel-independent mechanism that can access WebSphere Commerce business logic. The service layer segregates the implementation of business logic such as order and catalog. This segregation permits the underlying implementation to change without requiring that the caller change. All clients, including Web clients and back-end services, go through the service layer to run business logic. The service layer supports two transport mechanisms: local Java binding and Web services.
Business logic
The business logic layer is where business rules are implemented independent of the presentation layer. Business logic is implemented using the command pattern. Two types of commands are implemented:
  • controller commands - accessible by the presentation layer and used as a coordinator of tasks.
  • task commands - not accessible by the presentation layer but called from the controller commands. This command type is used to implement business rules.
Persistence layer
The persistence layer records the data and operations of the WebSphere Commerce system. The persistence layer represents entities within the commerce domain and encapsulate the data-centric logic required to extract or interpret information contained within the database. These entities comply with the Enterprise JavaBeans specification.

These entity beans act as an interface between the business components and the database. In addition, the entity beans are easier to comprehend than complex relationships between columns in database tables.

Database schema
WebSphere Commerce database schema, which includes over 600 tables, is designed specifically for e-commerce applications and their data requirements. The database schema supports persistence requirements for the WebSphere Commerce subsystems (Order, Catalog, Member, Marketing, Trading). WebSphere Commerce supports both DB2 and Oracle relational databases. Oracle is not supported on WebSphere Commerce - Express. In addition, to DB2 and Oracle, the development environment also supports Apache Derby.