B2B Implementation in Java, CORBA, and XML Technologies / Date: / 10/30/2018 / Folder: / D:\MyStuff\fyp\document\Term Paper.doc
Term Paper / Page: / 1of 64
1998 – 2000
Part-time Master of Science (Computer Science)
Thesis
B2B Implementation in Java, CORBA, and XML Technologies
Term Paper
LEE Chun Ho, Howard (980 17130)
Document Control
Document Information
Original Authors: / Howard LeeCurrent Document Status: / Version 1.0
Document Filename: / d:\mystuff\fyp\document\term paper.doc
Distribution
•Dr. Michael Lyu
Document Revision History
Version / Modifications / Date / AuthorDocument Approvals
Created by: / Howard Lee / Date: / Mar 5, 2000Approved by: / Date:
Title:
Date:
Date:
1Introduction......
1.1Communication Flow......
1.2Cash Flow......
1.3Commodity Flow......
2System Description......
2.1Scenario......
2.2Overview......
2.2.1Online Shop......
2.2.2Logistics Management System......
2.2.3Inventory Management System......
2.3Explanation......
2.3.1Communication Flow......
2.3.2Cash Flow......
2.3.3Commodity Flow......
3Functional Specification......
3.1Online Shop......
3.1.1Sitemap......
3.1.2Product Category......
3.1.3Order Checking......
3.1.4Data Transfer......
3.2Logistics Management System......
3.2.1Sitemap......
3.2.2Order Checking......
3.3Inventory Management System......
3.3.1Sitemap......
3.3.2Data File......
3.3.3Inventory......
4Technical Specification......
4.1Online Shop......
4.1.1Architecture Design......
4.1.2System Design......
4.1.3Database Structure......
4.1.4SController......
4.1.5Cart......
4.1.6Order......
4.2Logistics Management System......
4.2.1Architecture Design......
4.2.2System Design......
4.2.3Database Structure......
4.2.4LController......
4.2.5XML Transfer......
4.3Inventory Management System......
4.3.1Architecture Design......
4.3.2System Design......
4.3.3NController......
4.3.4XML Reception......
4.3.5XML Approval......
5Conclusion......
6References......
Abstract
The purpose of this document is to provide detailed information regarding the functional design created by Howard Lee for his Thesis in Master of Science (Computer Science) course. The document will serve as the basis for guiding later on development activities.
The document is mainly divided into 2 sections – Functional Specification and Technical Specification of the system. Functional Specification addresses the design appearing to user, like system flow and screen design. Technical Specification focus on the technical details of the system, such as software configuration and module design.
The whole system consists of three small subsystems. They are Online Shop, Logistics Management System, and Inventory Management System. Together with the three subsystems, a real business scenario is simulated.
Term PaperPage 1 of 64
10/30/18 12:33 PM
1998-2000 Thesis – / Prepared By: / HL / File: / Term PaperB2B Implementation in Java, CORBA, and XML Technologies / Date: / 10/30/2018 / Folder: / D:\MyStuff\fyp\document\Term Paper.doc
Term Paper / Page: / 1of 64
1Introduction
Typically e-Commerce sites or systems have a list of standard requirement to be fulfilled. This outlines the basic functions that should exist in an e-Commerce system. Altogether there are three of them. They are Communication flow, Cash flow, and Commodity flow.
1.1Communication Flow
Obviously, e-Commerce can only be taken place if there are at least two parties involved in the activity. During the transactions, a large amount of information will be transferred back and forth between the parties. Information can be transferred in various formats. For instance, HTTP (Hypertext Transfer Protocol), FTP (File Transfer Protocol), and email are all good choices.
1.2Cash Flow
If there is commercial transactions taking place between the parties, money transactions should not be avoided. A simpler money settlement mode may involve two parties only with a transfer of cash flow from one account to the other. For more complicated mode, like SET (Secured Electronic Transfer) may involve three parties or even more.
1.3Commodity Flow
In exchange of the money paid, certain products or commodities should be obtained. Those commodities can be tangible or intangible. Usually, commodities cannot be provided as fast as the money settlement (for example, shipment). Therefore, certain capability should be devised in the system so that the buyer can check the status of the commodity he has paid for.
In order to demonstrate the three concepts, a business scenario has been created. It imitates a real world B2B (Business to Business) situation involving two imaginary companies. The idea is to facilitate the business procurement operations. The same concept is now adopted by the Dell Computer online shop.
2System Description
2.1Scenario
Leader Brain is a business consulting company with over one hundred staff in the local office. The consumption of stationery is enormous. The stationery is mainly supplied by a company called Ho Kee. In order to facilitate the ordering process of Leader Brain, Ho Kee developed an on-line shop for Leader Brain to place orders through the internet. The web site is also used by other customers for placing orders. They are distinguished by different login names.
Once Ho Kee receives the orders, it ships the required goods to Leader Brain and updates the inventory levels. At the same time, data will be transferred back to the inventory system of Leader Brain so that the data is automatically updated without human intervention. During product shipment, Leader Brain may check the status of the shipment through the web site.
Moreover, Leader Brain can always look at its own inventory level to make the procurement decision through a management kit application.
2.2Overview
The above requirement is summarized in the following picture.
The whole system is divided into four subsystems. Each of them has specific user requirement. They are listed as follows.
2.2.1Online Shop
- Allow user to browse through products.
- Store product information in database.
- Store member information in database.
- Allow user to place orders.
- Provide order-checking function.
- Record money movement.
- Transfer the order information from Ho Kee to Leader Brain.
2.2.2Logistics Management System
- Allow user to browse the placed orders.
- Allow user to update the order status.
- Transfer the order information from Ho Kee to Leader Brain.
2.2.3Inventory Management System
- Grab the order information from the Leader Brain.
- Translate it to human-readable format.
- Store the inventory information in database.
- Store the order history in database.
- Allow user to browse the stock inventory information.
2.3Explanation
This section will explain how the invented scenario demonstrates the three concepts listed in the Introduction section.
2.3.1Communication Flow
Referring to the figure above, the whole shopping process can be spotted out easily. First of all, a shopper from Leader Brain connects to the Online Shop of Ho Kee to browse products (Step 1a). If the shopper places an order, the order information will be saved to the database (Step 1b). At the same time, the order information will be sent to Leader Brain’s Inventory Management System in order to update the system (Steps 1c and 1d). At last the stock manager from Leader Brain can check the inventory levels easily (Step 1e).
In the steps 1a and 1c, communication surely takes place between the two companies. Information is passed also.
2.3.2Cash Flow
Due to the limitation of resource, online money transaction with a payment gateway is not going to be implemented. However, an alternative is employed in order to simulate the money movement. In the shop front database, all user account information is stored as well as the account balances. Once the user places an order, money will be debited from his account (Step 1b).
2.3.3Commodity Flow
Once an order is placed, its status is subject to modifications by the Logistics Management System (Steps 2a and 2b). These changes mainly reflect the actual status of the commodities being shipped. The user can review the latest status through a Check Order Status function provided on the web site (Step 2c).
3Functional Specification
This section discusses all the functional details of the three subsystems involved.
3.1Online Shop
This subsystem is provides a storefront for Leader Brain to shop for Ho Kee’s products. It is a shopping web site with product browsing and shopping abilities.
3.1.1Sitemap
The above sitemap vividly describes how the storefront system works with respect to the users. Although it is not a complicated system, it consists of all the necessary functions for an online shop. The detailed mechanism will be discussed later.
3.1.1.1Home Page (Screen S1.1)
The main function for Home page is to allow user to log into the system. As this is a B2B system, apart from technical support, there should be a whole list of operational support. For example, logistics, business process, inventory arrangement, etc. The overall support is far beyond the simple order-delivery service for B2C business model. As a result, this site will only serve the business partners who have already registered and prepared the infrastructure to communicate with Ho Kee. Anyone has not registered offline is denied from accessing the system.
Field Description
Field / Control Type / Format / Action / ResponseUser Name / Text / 8-character / Change / Display the input characters
Password / Text / 8-character / Change / Display the input characters
Login / Button / N/A / Click / Check the validity of the input pair.
If the pair is valid, user is allowed to log into the system. Otherwise, error message will be displayed on this page.
Condition
Pre-condition
Start of the system.
Post-condition
Valid username-password pair is input.
3.1.1.2Global Navigation Bar
This is a frame always appears on the left-hand side of the browser. It appears once the user logs into the system. The detailed design is as follows.
Field Description
Field / Control Type / Format / Action / ResponseProduct Category* / Text link / N/A / Click / Display the associated Product Category pages.
Shopping Bag / Text link / N/A / Click / Display the most current Shopping Bag for the user.
Order List / Text link / N/A / Click / Display the orders already placed by the user.
Condition
Pre-condition
User has successfully logged into the system.
3.1.2Product Category
Products are listed in the web site with specific format. This set of pages allows the user to browse product by list, then look at the details of a selected product. The user is also allowed to add the viewed products into Shopping Cart from either the Product Category Page (Screen S2.1) or Product Detail Page (Screen S2.2).
3.1.2.1Product Category Page (Screen S2.1)
There are five Product Categories as follows:
- Pen
- Folder
- Clip
- Others
User can go into one of the Product Category Pages by selecting the Product Category from the Global Navigation Bar. As business clients are different from normal customers, they are already very familiar with what they need from the web site. Therefore the design of the web site will stress on the easiness for the users to find the products they need. Moreover, SKU (Stock Keeping Unit is placed at the first column as the user are more familiar with the numbers than some fancy product names. The layout is as follows.
Field Description
Field / Control Type / Format / Action / ResponseProduct Category / Text / N/A / Load / Display the selected Product Category.
SKU Number / Text / 20- character / Load / Display the SKU Number stored in database.
Product Name / Text / 70-character / Click / Go to Product Detail Page(Screen S2.2).
Price / Text / US$XXX.XX / Load / Display the list price of the product.
Add to Shopping Bag / Button / N/A / Click / Add the product to the shopping bag with quantity 1. Then the Shopping Bag page (Screen S2.3) will be shown.
Condition
Pre-conditions
Any Product Category is selected from the Global Navigation Bar.
Post-conditions
Add to Shopping Bag button is pressed.
Any Product selected from the list.
3.1.2.2Product Detail Page (Screen S2.2)
This page displays the details for the particular product selected. The information displayed is all factual details of the products. All marketing elements are excluded here. The layout is as follows.
Field Description
Field / Control Type / Format / Action / ResponseProduct Image / Image / Large image / None
Product Name / Text / 70-character / None
Product Description / Text / 250-character / None
Unit Price / Text / US$XXXX.XX / Load / Display the list price of the product.
Add to Shopping Bag / Button / N/A / Click / Add the product to the shopping bag with quantity 1. Then the Shopping Bag page (Screen S2.3) will be shown.
Condition
Pre-conditions
Any product chosen from the Product Category Page (Screen S2.1).
Post-conditions
Add to Shopping Bag button is pressed.
3.1.2.3Shopping Bag (Screen S2.3)
This page shows the most current selection of products for that user. Other related information, like price and quantity will also be shown. Furthermore, User can update the quantity of the products selected here.
Field Descriptions
Field / Control Type / Format / Action / ResponseSKU Number / Text / 20- character / Load / Display the SKU Number stored in database.
Product Name / Text / 70-character / Load / Append product name
Click / Go to Product Detailpage (Screen S2.2).
Quantity / Text Field / Accept up to 3 digits / Load / Display the quantity added to shopping bag.
Change / Only accept non-negative numeric input.
Unit Price / Text / US$XXXX.XX / Load / Display the list price of the product.
Price / Text / US$XXXX.XX / Load / Calculate the actual adjusted price of that product.
Total / Text / US$XXXX.XX / Load / Calculate the total of the order.
Update / Button / N/A / Click / Re-calculate and then refresh total amount of the shopping bag.
Continue Shopping / Button / N/A / Click / Go to Product Category Page (Screen S2.1) of the first Product Category.
Checkout / Button / N/A / Load / If the shopping bag is empty, this button will not be showed.
Click /
- The stock inventory is checked to ensure the purchased quantities of products are available.
- If not enough stock, this page will be shown again with error message.
- Total will be re-calculated.
- The calculated sum is checked against the user’s account to see if he has enough money to perform the transaction.
- If not enough money, this page will be shown again with error message.
- Otherwise, transaction will be performed.
- Stock Inventory and user’s account will be decreased.
- The transaction will be saved.
- The Shopping Bag will be emptied.
Condition
Pre-conditions
Add to Shopping Bag button is pressed in the Product Category Page (Screen S2.1) or Product Detail Page (Screen S2.2).
Shopping Bag button is pressed in the Global Navigation Bar.
Post-conditions
All the checking listed under the Checkout button is passed.
3.1.2.4Order Confirmation Page (Screen S2.4)
Once the transaction performed successfully, this page will show a summary of the order placed. Moreover, an Order Confirmation Number will be generated for the future reference.
Field Descriptions
Field / Control Type / Format / Action / ResponseThank You / Text / N/A / None
Order Confirmation Number / Text / 30-character (Alpha-numeric only) / Load / Display the order confirmation number generated from server.
Order Date / Text / DD/MM/YYYY / Load / Display the current date.
SKU Number / Text / 20- character / Load / Display the SKU Number stored in database.
Product Name / Text / 70-character / Load
Quantity / Text / Up to 3 digits / Load / Display the final quantity specified shopping bag.
Unit Price / Text / US$XXXX.XX / Load / Display the list price of the product.
Price / Text / US$XXXX.XX / Load / Display the cost of the product. The calculation is based on the Unit Price, and Quantity
Total / Text / US$XXXXX.XX / Load / Display the total amount of the order calculated during checkout.
Conditions
Pre-conditions
User finished the whole shopping process.
Post-conditions
None
3.1.3Order Checking
In order to fulfill the let the users to keep track on the products they have purchased, the following order-checking function is included in the system.
3.1.3.1Order List Page (Screen S3.1)
The page lists out all the orders placed by the user. Here is the layout of the page.
Field Descriptions
Field / Control Type / Format / Action / ResponseOrder Confirmation Number / Text link / Load / Display the order confirmation number generated from server.
Click / Display the Order Detail Page(Screen S3.2) for that order.
Price / Text / US$XXXX.XX / Load / Display the total amount of the order calculated during checkout.
Total / Text / US$XXXXX.XX / Load / Display the total amount of the order calculated during checkout.
Conditions
Pre-conditions
Order button is pressed on the Global Navigation Bar.
Post-conditions
Any order is selected from the list.
3.1.3.2Order Detail Page (Screen S3.2)
The details of the selected order are listed as follows.
Field Description
Field / Control Type / Format / Action / ResponseOrder Confirm-ation Number / Text / 30-character (Alpha-numeric only) / Load / Display the order confirmation number generated from server.
Order Date / Text / DD/MM/YYYY / Load / Display the order date stored in database.
Status / Text / 10-character / Load / Display the shipping status of the order.
SKU Number / Text / 20- character / Load / Display the SKU Number stored in database.
Product Name / Text / 70-character / Load
Quantity / Text / Up to 3 digits / Load / Display the final quantity specified shopping bag.
Unit Price / Text / US$XXXX.XX / Load / Display the list price of the product.
Price / Text / US$XXXX.XX / Load / Display the cost of the product stored in database.
Total / Text / US$XXXXX.XX / Load / Display the total amount of the order calculated during checkout.
Condition
Pre-conditions
Any order is selected.
Post-conditions
None
3.1.4Data Transfer
When an order is placed by Leader Brain, the information of the order will be transferred to Leader Brain’s system at once. The information is passed in the format of ASCII text file. FTP (File Transfer Protocol) will be used. Here are the fields to be transferred.