- Slides: 23
COMP 3241 E-Commerce Technologies Richard Henson University of Worcester December 2014
Week 10: Documenting a Client-Server System n Explain the fundamental differences between documenting client-server and documenting conventional systems n Explain the importance of presenting a data model in the documentation n Use software tools to assist documentation of web pages, web sites, and database design
What is client-side and what is server side? n Everything that is displayed using HTML… client side n Everything that interrogates databases, and databases themselves… server side n What about the rest of the coding? Ø Java. Script? Ø C#? Ø Asp. net controls?
Putting this into a write up n More challenging than a conventional website/set of programme coding n It helps to have separate headings for “client side” and “server side” n Site will be marked as a Visual Studio 2010 project Ø essential that all server code and the database to run the site are included on the media handed in with the assignment write up!!!
How to document… n Project usually have four phases: ØAnalysis ØDesign ØImplementation ØEvaluation n Your assignment 2 can be considered to be a mini-project…
What to include in the write up n The assignment brief is your spec (no analysis section therefore necessary!!!) n Requirements: Ø“Design” (client & server) Ø“Implementation” Ø“Evaluation”
Design n Should include: Øsite & database design diagrams Øscreen dump(s) to show common page format(s) Øshould refer to code (e. g. scripts) by filename so marker can cross-check with file(s) on removable media Øtest plan…
Test Plan n An empty table that lists the tests to be performed, & expected outcomes… Action Expected outcome Actual Outcome Click on “add to cart” Product added to cart, which is displayed containing correct costs Click on “new customer” New customer form allows customer to add personal data
Relative and Absolute Paths For small databases and simplicity Access works well…. n Note that… n ØAccess requires an absolute path » e. g. X: myfolderyourfolderdatabase. accdb ØSQL Server, and My. SQL can cope with a relative path: » e. g. . . yourfolderdatabase. mdf
Implementation n Should include some of: Øcode sections that you may want to explain or bring to the attention of the marker Ødatabase connection string(s) & path to Access (or other…) database in working project n A description of some problems encountered and how overcome
Testing n Test plan put into effect… n “Actual v Expected” table completed Action Expected outcome Actual Outcome Click on “add to cart” Product added to cart, which is displayed containing correct costs Yes Click on “new customer” New customer form allows customer to add personal data No. Goes back to products page
Retesting n Any differences between expected/actual results need to be resolved n Changes made as a result of testing should also be documented Øretest table also included… n Repeat retest & retest table if necessary, and if you have time!
Rollout n Retried and retested product copied to removable medium n Zip up and send to SOLE Økeep your own copy!
Evaluation n You should include: Øwhat others (i. e. prospective shoppers) think of the site Øhow well the completed site meets the spec (or goes beyond it… or could do…) ØA personal reflection of your experiences in doing the assignment, and anything else you’d like to have done with it, if you had more time…
Creating a login page for different access levels n Different users can be given different levels of access to resources, based on username Ø e. g. only users can be identified as “administrators” » using a user category field in the customers/users table Ø administrators may be able to access a further HTML form or webform » allows write access the products table » can add new product details » and change details (e. g. price) of an existing product
Restricting page access to unauthorized users n n Essential to prevent the unauthorised user “cheating” the system by typing in the URL of the restricted page and displaying it manually Readily achieved using a server script that automatically brings the user back to a predefined page if they HAVEN’T successfully logged on Ø e. g. takes control back to the home page
Restricted Pages and Secure Pages (2) n Such an intercept and redirect facility will ONLY protect HTML pages Øproblem: HTML can easily be hacked… n Secure pages use the https protocol, and are protected from the server end by a server (SSL) certificate
https, and e-commerce systems n Before payment, the user will also have to be authenticated by the International Banking Network (IBN) before payment can proceed Ø this MUST happen at a fully protected page » via https » logged in checking » (additionally) a system-defined “time out” Ø control then passes to a merchant services provider for interaction with the IBN n Much more about https in COMP 3221 module… Ø also see COMP 3123 -7, 8 via link to RH’s old website if interested
Order information and the Merchant System n With a real system, at least one parameter needs to be passed to the bank system with the credit/debit card details Ø e. g. “Grand. Total” Ø from Orders Table n Needed to check whether the customer has enough funds in their account to allow the transaction… Ø actual funds “taken” after this check has a positive outcome
The “Sendmail” control The Web. Xel. Cart control that allows an email to be sent when the order passes through payment n Email contains a copy of the online invoice… n Can be implemented from the “Payments” page”… n
How to submit electronically n As with assignment 1… Ø put write up. doc(x) through Turnitin… Ø send all docs as a zipped folder Ø this time also include practical project n Project should be saved as a. sln file and associated folders Ø when. sln opens in Visual Studio all files should be appropriate places Ø marker will adjust database path (if necessary)
Good Luck and have a Great Xmas! Two timetabled sessions in January If you can’t make it to either, practical workshops may be available by appointment until the day before hand-in: email me