April 20023CSG1DE2 1 Electronic Commerce Design (2) John Wordsworth Department of Computer Science The University of Reading Room 137, Ext 6544
April 20023CSG1DE2 2 Lecture objectives Review design choices for tier 3 Review implications for tier 2 design Consider message structures for communication between the tiers
April 20023CSG1DE2 3 Design method Specify the external interface – interactions and expectations Data design – tier 3 Algorithm design – tier 2 Message design for the interface between tiers 2 and 3 Business logic design – tier 2 Message design for the interface between tiers 1 and 2 Presentation design – tier 1
April 20023CSG1DE2 4 Design of tier 3 Capture the data requirements Entity-relationship modelling Formal models (sets, relations) Capture the interaction (transaction) requirements Pseudocode, decision tables, state machines, flow charts Formal models (preconditions, postconditions) Validation of the design
April 20023CSG1DE2 5 Implementation of Tier 3 Database server Distributed, replicated Transaction processing monitor Files and databases Transaction processing programs Distributed Legacy systems Verification of the implementation
April 20023CSG1DE2 6 Message design (2-3) Analysis of required data flows: Input messages (operation, input values) Output messages (response code, data) Identify types of data Identify common structures Create an XML DTD
April 20023CSG1DE2 7 Design of tier 2 Business logic Transactional capabilities Caching of tier 3 data Propagation of errors from tier 3 Validation of the design
April 20023CSG1DE2 8 Implementation of tier 2 using EJBs Use servlets to process user requests Use objects to represent the data being handled: Request message -> HTTP request object EJB represents database row Object represents the database response Response object -> HTTP response object Verification of the implementation
April 20023CSG1DE2 9 Implementation of tier 2 using messages Use servlets to process user requests Use objects to represent the data being handled: Request message -> HTTP request object Request object -> message to tier 3 Response from tier 3 -> response object Response object -> response message to tier 1 Verification of the implementation
April 20023CSG1DE2 10 Design and implementation of tier 1 Use the storyboard to design the presentation layouts Consider the use of applets to manage the user interface Consider the use of HTML forms for the user interface Avoid presenting nonsense messages to the naïve user
April 20023CSG1DE2 11 Key points Important to consider how transactions will be managed in tier 3 Exploit reusability of objects (Java) in tier 2 Keep the user interface clean and clear