Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSE300 EAIusing EJB & XML CSE300-02 Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape.

Similar presentations


Presentation on theme: "CSE300 EAIusing EJB & XML CSE300-02 Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape."— Presentation transcript:

1 CSE300 EAIusing EJB & XML CSE300-02 Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape

2 CSE300 EAIusing EJB & XML Topics  EAI Discussion  Need for EAI  Design Issues for EAI  EAI Implementations  EJB and XML

3 CSE300 EAIusing EJB & XML What is an EAI?  An EAI is a solution to the outcome of generations of development of stovepipe applications.  It provides a framework that enables disparate applications to act as a single application  EAI supports unrestricted sharing of data and processes among connected applications.  It provides a cost effective solution to cross- platform integration of application and data.

4 CSE300 EAIusing EJB & XML Why EAI?  Use existing databases and applications.  Replacing existing stovepipe systems is cost prohibitive.  Corporations use several generations of systems relying on a broad range of technologies.  Application software needs to integrate with existing systems  Demands for sharing data and processes without requiring to change application and data

5 CSE300 EAIusing EJB & XML Features of EAI  EAI creates a common way for business processes and data to speak to one another across applications  It focuses on both process and data as against traditional middleware approach.  EAI includes the notion of reuse and distribution of processes and data  EAI allows users to easily integrate applications with limited knowledge of details.

6 CSE300 EAIusing EJB & XML Design Issues for EAI  Identifying the various software components  Identifying interfaces to these components to enable their integration  Identifying data sources of the organization  Representation of data as an open format document  Providing easy standard data retrieval methods from the stored document.

7 CSE300 EAIusing EJB & XML EAI Implementations Message Systems:  Provide point to point solutions  Attempt to make the system scaleable results in complex middleware links.  Increase in point-point solutions for information flow  Require alterations to source and target systems  Limited ability to react to change.

8 CSE300 EAIusing EJB & XML Message Systems

9 CSE300 EAIusing EJB & XML EAI Implementations Database - Database Integration  Sharing Information between applications at the database level.  Database replication features can be used to move information to the target database.  Both databases must have the same logical schema.  Logic to manipulate the data resides in the database.

10 CSE300 EAIusing EJB & XML EAI Implementations Distributed Computing:  Enables integration of both business processes and data  Includes the notion of reuse and distribution of business processes and data.  Allows easy integration of applications  Its architecture lends itself well to integration.  Results in the development of scaleable systems.

11 CSE300 EAIusing EJB & XML The EAI Framework

12 CSE300 EAIusing EJB & XML  Enterprise Java Beans is a server-side component Architecture  Simplifies the process of building enterprise-class distributed object applications.  Provides a distributed object framework for scaleable, reliable and secure applications  Supports application portability and reusability.

13 CSE300 EAIusing EJB & XML  XML enables seamless exchange of data across the enterprise.  Data of the organization can be stored in a semi structured format to be transferred across the enterprise.  Thus data exchange becomes transparent independent of platform, language, and vendor.

14 CSE300 EAIusing EJB & XML Overview of the System : e-Bookstore WWW Supplier Enterprise Customers and suppliers directly participate and interact with the operational systems through the internet Customer Enterprise The external interactions of the enterprise with its customers and suppliers. Customers

15 CSE300 EAIusing EJB & XML Interactions within the Enterprise Integration Framework Sales Inventory Accounting Supplier Purchase Billing Customer Interface & Interaction Business rules for the interaction between applications are built into a structural framework. Stores the name, author, quantity and price of available books. Lets the customer login, query, add or delete books to their cart, and buy the cart. Creates bills for a given sales transaction, records that sales transaction in the Sales DB and also modifies Inventory DB accordingly. Generates purchase orders, processes and records purchase receipts, maintains Purchase DB and updates Inventory DB to reflect the purchase transaction. Records sales and purchase transactions, which took place during a given time period, in the Accounting DB.

16 CSE300 EAIusing EJB & XML Global Components  Inventory  XML Bean  Stores the description of the available books  Can be queried to find out the availability of book(s)  Is updated by Sales and Purchase departments after every sales and purchase transaction  Creates XML documents  Parses XML documents  Sales transaction information for Accounting  Purchase order generation for Suppliers  Purchase receipt information for Purchase & Accounting  Sales transaction information to update Sales DB & Inventory  Purchase receipt information to update Purchase DB & Inventory  Sales & Purchase information for accounting purposes

17 CSE300 EAIusing EJB & XML Types of Activities  Sales Transaction  Purchase Transaction  Accounting Transaction  Starts in the Customer Interface Department  Processed and recorded by the Sales Department  Either reads Inventory & generates a Purchase Order  Or processes purchase receipt information  Records all the Sales and Purchases over a given period of time

18 CSE300 EAIusing EJB & XML Sales Transaction QueryCustomer Login Register Add to/Delete from Cart Buy New ? End Start Cart Empty? Logge d On? Process Billing Information Update Sales DB and Inventory Yes Yes No No Empty cart cannot be bought Yes No

19 CSE300 EAIusing EJB & XML Purchase Transaction Start Check Inventory and select items that are out of stock Generate Purchase Order Record transaction in Purchase DB and update Inventory items that are out of stock Get Purchase Receipt Information End

20 CSE300 EAIusing EJB & XML Accounting Transaction Start Get all Sales information for a given period End Get all Purchase information for a given period Calculate total Sales and total Purchase for that given period Record the total Sales and Purchase in the Accounting DB

21 CSE300 EAIusing EJB & XML Customer Interface Department  Handles customer Login & Buying activities  Handles customer Login & Buying activities  Components for Login activity  LoginCustomer class  NewCustomer class  Components for Buying activity  ItemQuery class  CartBean : Stateful Session Bean  BuyBean : Stateless Session Bean

22 CSE300 EAIusing EJB & XML LoginCustomer class  Handles Logins by Registered Customers of e-Bookstore  Public Methods  verifyCustomer() Queries CustomerDB to find out whether the customer trying to login is present in it and verifies his/her login information. CustomerInterfaceDepartment

23 CSE300 EAIusing EJB & XML NewCustomer class  Handles Registration of New Customers of e-Bookstore  Public Methods  addNewCustomer() Updates CustomerDB to add the new customer and stores his/her registration information. CustomerInterfaceDepartment

24 CSE300 EAIusing EJB & XML ItemQuery class  Handles the Queries for Items, done by the customers of e-Bookstore  Public Methods  queryItemFromInventoryDB() Queries InventoryDB to find if the items queried are currently available with the e-Bookstore and returns the resulting list of items. CustomerInterfaceDepartment

25 CSE300 EAIusing EJB & XML CartBean EJB  Stateful Session Bean  Handles the Buying Carts of the customers of e- Bookstore  Public Methods  addItemToCart()  deleteItemFromCart()  displayCart()  retrieveCart()  deleteCart() CustomerInterfaceDepartment

26 CSE300 EAIusing EJB & XML BuyBean EJB  Stateless Session Bean  Handles the Buying Activities done by the customers of e-Bookstore  Public Methods  processRequest()  Retrieves the contents of customer’s buying cart  Displays those contents and Calculates Total Cost  Queries CustomerDB to get Billing Information  Creates BuyInfo XML Document  Deletes customer’s buying cart CustomerInterfaceDepartment

27 CSE300 EAIusing EJB & XML Sales Department  Processes sales transaction done in the Customer Interface Department  Component for Generation of Bill for a sales transaction  BillingServiceBean : Stateless Session Bean  Component for Storage of Sales Transaction and Creation of SalesInfo XML document for Accounting Department  SalesInfoBean : Entity Bean

28 CSE300 EAIusing EJB & XML BillingServiceBean EJB  Stateless Session Bean  Performs the credit card validation and generation of bill for a sales transaction  Public Methods  createBill()  Parses the BuyInfo XML Document  Verifies and charges the credit card  Generates bill for given sales transaction SalesDepartment

29 CSE300 EAIusing EJB & XML SalesInfoBean EJB  Entity Bean  Performs the storage of all information pertaining to a sales transaction  Public Methods  storeSalesTransactionInfo()  Parses the BuyInfo XML Document  Updates SalesDB by storing this sales transaction  Updates InventoryDB  createSalesInfoXML()  Creates the SalesInfo XML Document containing all information in SalesDB for Accounting Department SalesDepartment

30 CSE300 EAIusing EJB & XML Purchase Department  Generates the Purchase Order and Processes Purchase Receipts received from suppliers.  Component for Generation of Purchase Order  PurchaseOrderBean : Stateless Session Bean  Component for Storage of Purchase Receipt Information and Creation of PurchaseInfo XML document for Accounting Department  PurchaseInfoBean : Entity Bean

31 CSE300 EAIusing EJB & XML PurchaseOrderBean EJB  Stateless Session Bean  Performs the checking of Inventory database and generation of Purchase Order accordingly  Public Methods  generatePurchaseOrder()  Queries Inventory Database  Generates Purchase Order for purchase of the items that are out of stock  Creates Purchase Order XML Document PurchaseDepartment

32 CSE300 EAIusing EJB & XML PurchaseInfoBean EJB  Entity Bean  Performs the storage of all information pertaining to a purchase transaction  Public Methods  processPurchaseInfo()  Parses the Purchase Receipt XML Document  Updates PurchaseDB by storing this purchase transaction  Updates InventoryDB  createPurchaseInfoXML()  Creates the PurchaseInfo XML Document containing all information in PurchaseDB for Accounting Department PurchaseDepartment

33 CSE300 EAIusing EJB & XML Accounting Department  Retrieves the information of sales and purchase transactions from the respective departments and calculates & stores the total sales and purchase done over a certain time period in AccountDB  Component for updating AccountDB  AccountingBean : Entity Bean

34 CSE300 EAIusing EJB & XML AccountingBean EJB  Entity Bean  Stores the information pertaining to all sales and purchase transactions over a certain time period in AccountDB  Public Methods  updateAccountInfo()  Parses the SalesInfo XML Document  Parses the PurchaseInfo XML Document  Updates AccountDB AccountingDepartment

35 CSE300 EAIusing EJB & XML Interactions in Customer Interface Department CustomerDB Buy Bean Cart Bean InventoryDB XML Doc Buy Info XML Bean 4.4 Create XML Doc for Buy Info 2.1 Query for Book(s) Enterprise 1.b.2 Queries CustomerDB BillingService Bean NewCustomer LoginCustomer ItemQuery SalesInfo Bean 1.a.2 Updates CustomerDB 2.2 Queries InventoryDB 1.a.1 New Customer 1.b.1 Login 3.a.1 Add Item 3.b.1 Add Item 3.b.2 Delete Item 3.c.1 Add Item 3.c.2 Check cart 4.1 Buy Book(s) 4.2 Retrieve cart 4.6 Delete cart 4.3 Queries CustomerDB for Billing Info 4.5 Customer SalesDepartment Customer Interface Department

36 CSE300 EAIusing EJB & XML Interactions in Sales Department SalesDB InventoryDB XML Doc Buy Info XML Bean 3.2 Create XML Doc for Sales Info BillingService Bean SalesInfo Bean 3.3 2.1 Accounting Bean XML Doc Sales Info 1.1 1.3 Verify card 1.4 Charge card 1.5 Create Bill 1.2 Parse XML Doc for Buy Info 2.4 Updates InventoryDB 2.2 Parse XML Doc for Buy Info 2.3 Updates SalesDB 3.1 Queries SalesDB Enterprise Customer Interface Department SalesDepartment AccountingDepartment

37 CSE300 EAIusing EJB & XML Interactions in Purchase Department PurchaseDB PurchaseOrder Bean PurchaseInfo Bean InventoryDB Suppliers XML Doc Purchase Order XML Doc Purchase Receipt 1.1 Queries InventoryDB for checking stock XML Bean 1.3 Create XML Doc for Purchase Order 1.2 Generates Purchase Order 2.2 Parse XML Doc for Purchase Receipt Supplier receives XML Doc for PO Supplier sends XML Doc for Purchase Receipt 2.3 Updates PurchaseDB 1.4 2.1 XML Doc Purchase Info 3.1 Queries PurchaseDB 3.2 Create XML Doc for Purchase Info 3.3 Accounting Bean AccountingDepartment PurchaseDepartment Enterprise

38 CSE300 EAIusing EJB & XML Interactions in Accounting Department AccountDB XML Doc Purchase Info XML Bean Accounting Bean XML Doc Sales Info 1.1 1.4 Parse XML Doc for Purchase Info 1.2 Parse XML Doc for Sales Info 1.5 Updates AccountDB 1.3 Enterprise AccountingDepartment PurchaseDepartmentSalesDepartment

39 CSE300 EAIusing EJB & XML Conclusions and Future Work  Distributed computing technologies XML & EJB were explored by developing an EAI solution  XML Documents can be created to incorporate more than one level of hierarchy  Same EJBs can be reused for developing an EAI solution for another enterprise  Role-based Security  Atomic Transactions

40 CSE300 EAIusing EJB & XML Ask


Download ppt "CSE300 EAIusing EJB & XML CSE300-02 Enterprise Application Integration Using EJB and XML by Prithwis Sett Mumtaz Lohawala Nayana Paranjape."

Similar presentations


Ads by Google