Develop > Functional architecture > WebSphere Commerce common architecture
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.
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 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
- Host
- 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 the business needs.
- 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.
Related concepts
WebSphere Commerce common architecture
WebSphere Commerce framework overview
WebSphere Commerce framework interaction