COMP3241 COMP3241 E-Commerce E-Commerce Technologies Technologies Richard Henson Richard Henson University of Worcester University of Worcester December December 2012 2012
Jan 04, 2016
COMP3241COMP3241E-Commerce TechnologiesE-Commerce Technologies
Richard HensonRichard Henson
University of WorcesterUniversity of Worcester
DecemberDecember 20122012
Week 10: Documenting a Week 10: Documenting a Client-Server SystemClient-Server System
Explain the fundamental differences between documenting client-server and documenting conventional systems
Explain the importance of presenting a data model in the documentation
Use software tools to assist documentation of web pages, web sites, and database design
What is client-side and what is What is client-side and what is server side?server side?
Everything that is displayed using HTML… client side
Everything that interrogates databases, and databases themselves… server side
What about the rest of the coding?JavaScript?
C#?
Asp.net controls?
Putting this into a write upPutting this into a write up
More challenging than a conventional website/set of programme coding
It helps to have separate headings for “client side” and “server side”
Site will be marked as a Visual Studio 2010 projectessential 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…
Project usually have four phases:AnalysisDesignImplementationEvaluation
Your assignment 2 can be considered to be a mini-project…
What to include in the write up
The assignment brief is your spec (no analysis section therefore necessary!!!)
Requirements:“Design” (client & server)“Implementation”“Evaluation”
Design Should include:
site & database design diagramsscreen 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
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 PathsRelative and Absolute Paths
For small databases and simplicity For small databases and simplicity Access works well…. Access works well….
Note that…Note that…Access requires an absolute pathAccess requires an absolute path
» e.g. X:\myfolder\yourfolder\database.accdbe.g. X:\myfolder\yourfolder\database.accdb
SQL Server, and MySQL can cope with a SQL Server, and MySQL can cope with a relative path:relative path:» e.g. ..yourfolder\database.mdfe.g. ..yourfolder\database.mdf
Implementation 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
A description of some problems encountered and how overcome
TestingTesting Test plan put into effect… “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
RetestingRetesting
Any differences between expected/actual results need to be resolved
Changes made as a result of testing should also be documentedretest table also included…
Repeat retest & retest table if necessary, and if you have time!
Rollout
Retried and retested product copied to removable medium
Zip up and send to SOLEkeep your own copy!
Evaluation 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…
Further Activities…
Creating a login page for different access levels
Different users can be given different levels of access to resources, based on usernamee.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
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 pre-defined page if they HAVEN’T successfully logged one.g. takes control back to the home page
Restricted Pages and Secure Pages (2)
Such an intercept and redirect facility will ONLY protect HTML pagesproblem: HTML can easily be hacked…
Secure pages use the https protocol, and are protected from the server end by a server (SSL) certificate
https, and e-commerce systems
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
Much more about https in COMP3221… also see COMP3123-7,8 on RH’s old website
Order information and the Merchant System
At least one parameter needs to be passed to the bank system with the credit/debit card details “GrandTotal” from Orders Table
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 control that allows an email to be sent when the order passes through payment
Email contains a copy of the online invoice…
Can be implemented from the “Payments” page”…
How to send electronically
As with assignment 1…put write up .doc(x) through Turnitin…send all docs as a zipped folder this time also include practical project
Project should be saved as a .sln file and associated folderswhen .sln opens in Visual Studio all files should be
appropriate placesmarker will adjust database path (if necessary)
Good Luck Good Luck and have and have
a Great Xmas!a Great Xmas!
Practical Workshops available by Practical Workshops available by appointment… appointment…
until the day before hand-inuntil the day before hand-in