| Top | Previous | Next |
1.1 High-Level Architectural View
Versions of the sample application before release 1.3 were examples of a monolithic application that handled customer interaction at the Web site, order tracking, and administration.
Real-world enterprise applications are seldom single, monolithic systems. Most enterprise applications must cooperate with multiple data sources and enterprise information systems (EISs). These external systems may be internal information assets, such as legacy databases or enterprise resource planning (ERP) systems. Other external systems may be Web services of business partners. For example, the order fulfillment center is internal to the enterprise, the credit card service is external to the enterprise, and suppliers may be internal (an enterprise warehouse, for example) or external to the enterprise.
The sample application release 1.3 refactors the pet store into separate modules, and also adds new functionality such as the ability to interact with multiple suppliers. The result is a decoupled enterprise architecture that can interoperate with existing data sources and business partners’ systems, all built on top of the J2EE platform. The sample application comprises four separate sub-applications that cooperate to fulfill the enterprise’s business needs, each of which is a J2EE application:
- pet store e-commerce Web site (“petstore”)—a Web application which shoppers use to purchase merchandise through a Web browser
- pet store administration application (“petstoreadmin”)—a Web application that enterprise administrators use to view sales statistics and manually accept or reject orders. While petstoreadmin is a Web application, its user interface is a rich client that uses XML messaging, rather than an HTML Web browser
- order processing center (“OPC”)—a process-oriented application that manages order fulfillment by providing the following services to other enterprise participants:
- receives and processes XML documents, via JMS, containing orders from the petstore
- provides petstoreadmin application with order data using XML messaging over HTTP
- sends email to customers acknowledging orders using JavaMail™
- sends XML order documents to suppliers via JMS
- maintains purchase order database
- supplier (“supplier”)—a process-oriented application that manages shipping products to customers by providing the following services:
This document concentrates on the architecture of the pet store Web site only. Future documents will offer more in-depth explanation of the other sub-applications.
| Top | Previous | Next |