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 understanding can help you to understand which parts are foundation layers and which parts we can modify.
The following diagram shows the various layers that compose the application architecture:
- Business models
- In WebSphere Commerce, a business model represents a sample business situation in which the WebSphere Commerce product might be used. A business model describes a scenario in which various parties use WebSphere Commerce to achieve their needs. The business models provided by WebSphere Commerce are:
- B2B
- B2C
Within each business model, WebSphere Commerce provides starter stores, which might be used as a starting point to develop online sites. We 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 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 usually entails 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 that are described in starter stores as a guideline, or a starting point, for site development. Changing or adding a process to a starter store process requires 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 under 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 that is 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.
Related concepts
WebSphere Commerce common architecture
WebSphere Commerce framework overview
WebSphere Commerce framework interaction
Design patterns