CMT302 – Coursework 2
Cardiff School of Computer Science and Informa5cs Coursework Assessment Pro-forma
Module Code: CMT302
Module Title: E-Commerce & Innova5on
Copyright By PowCoder代写 加微信 powcoder
Lecturers: Dr
Assessment Title: Dynamic Website
Assessment Number: 2
Date set: Friday, 21st February 2020
Submission Date and Time: by 9:30 am on Thursday 30th April 2020 Feedback Return Date: by 2nd June 2020
This assignment is worth 50 % of the total marks available for this module. If coursework is submiPed late (and where there are no extenua5ng circumstances):
1. If the assessment is submiPed no later than 24 hours aUer the deadline, the mark for the assessment will be capped at the minimum pass mark;
2. If the assessment is submiPed more than 24 hours aUer the deadline, a mark of 0 will be given for the assessment.
Your submission must include the official Coursework Submission Cover sheet, which can be found here:
hPps://docs.cs.cf.ac.uk/downloads/coursework/Coversheet.pdf
Submission Instruc=ons
You will need to submit your coursework to THREE locations:
1. Learning Central
2. COMSC’s GitLab
3. COMSC’s OpenShift
1. Submission to Learning Central:
Description
Cover sheet Compulsory
One PDF (.pdf) file
Plain README text file
Compulsory
One .txt file
Website files in a single zip file
Compulsory
One ZIP (.zip) file
The following files need to be submitted to Learning Central:
*replace
More specifically:
‣ No. 2 “Plain text file README.txt” must include: –1–
CMT302 – Coursework 2
1. your student number;
2. e-mail address;
3. URL of your website on OpenShift server;
!! If you do not specify the URL, it will be assumed that you have not deployed your website on OpenShift, i.e. you will not get any marks for ‘deployment’ and your website will be compiled and run manually (on ‘localhost’ server).
4. Full (40 characters) CHECKSUM of your last commit you performed on your repository on GitLab. This will be used to check the timestamp of the latest commit/ changes in your repository. Note: no changes are allowed after the submission deadline! Non compliance with this requirement, i.e. working on the coursework after the deadline, may be penalised and may be either capped at the minimum pass mark (for the timestamp that indicates the changes were implemented no later than 24 hours after the deadline), or an award of zero marks (for changes implemented later than 24 hours after the deadline).
‣ Instructions on how to access the checksum of your last commit on GitLab are given in one of the labs on git.
5. List of advanced features/ additional functionality you implemented and want to be marked. Note: if you implemented some feature you consider as “exceptional attention to security and safety” or “exceptional attention to aesthetics and information content”, please explain why you consider these to be “exceptional” and why they should attract extra marks.
!! If you do not specify any advanced features/ additional functionality that you implemented, these will not be marked.
✓ A template of README.txt file is available on Learning Central.
2. Submission to COMSC’s GitLab (https://gitlab.cs.cf.ac.uk/)
Share your GitLab repository with:
– The module leader/lecturer – (email:
– The module moderator – (email:
You should give both lecturers access as ‘Maintainer’ (from ‘Choose a role permission’ dropdown menu). Instructions on how to do this are given in one of our labs on git.
3. Submission to COMSC’s OpenShift (https://openshift.cs.cf.ac.uk/) Deploy your website on OpenShift by the deadline specified on the front page.
Your website will be accessed for marking via the URL you provided in the README file, which you submitted on Learning Central. If the website doesn’t work, you will not get any marks for the website deployment (see ‘Assessment Criteria and Marks Allocation’ section of this document). The assessor will then attempt to mark your website based on the files you provided in the ‘
Understand the concepts, techniques and underpinning technologies associated with E- Commerce in the modern environment, including appreciation of the role and importance of system security, system quality, quality of service, usability and suitability for particular type of business.
CMT302 – Coursework 2
Rules, Restric=ons and Further General Comments
– Any deviations from the submission instructions above (including the number and types of files submitted) will result in the loss of marks, as specified above and Assessment Criteria and Marks Allocation’ section of this document.
– Staff reserve the right to invite students to a meeting to discuss coursework submission.
– If you have extenuating circumstances that prevent you from submitting on time, you should follow the School’s Extenuating Circumstances procedure (see the Student Handbook for more detail – available on Leaning Central).
– You are reminded of the need to comply with Cardiff University’s Student Guide to Academic Integrity. You should also read the School’s electronic coursework submission policy, available on Leaning Central. This is an individual assessment and evidence of group work may be penalised.
Learning Outcomes Assessed
Understand the concept of Innovation and what this means within the context of the IT
methodologies for information risk assessment, assurance and management.
Appreciate risks involved in managing a high-tech enterprise, including concepts and
and technologies; and evaluate the outcomes.
Design, implement and deploy an e-commerce system, using a variety of modern techniques
Components Weigh=ngs
– Correct submission
– Essential functionality (including usability and presentation)
– Advanced functionality
60 marks 20 marks
Further details on the components are provided in the ‘Instructions’ and ‘Assessment Criteria and Marks Allocation’ sections of this document.
Criteria for Assessment
Credit will be awarded against the criteria specified in ‘Assessment Criteria and Marks Allocation’ section of this document.
Feedback and sugges=on for future learning
Feedback on your coursework will address the above criteria. Feedback and marks will be returned via Learning Central and/or email by the date specified on the first page.
This coursework develops a number of subject specific as well as core, transferable skills (e.g. time management). Feedback for this assessment can be used to improve your skills in professional web development, and might be useful for other modules, e.g. your summer project (dissertation) – if you decide to do a web-based project.
Assignment
CMT302 – Coursework 2
INSTRUCTIONS
The aim of this assignment is to implement and deploy a website for a business/ organisation which you presented for your coursework last semester (you can choose to adapt your original proposal), or for a different venture. Your website should be implemented using the Flask microframework1, and be deployed on the School’s OpenShift.
The website should allow the customers to browse through the available goods (i.e. products or services), view their price and all other relevant information, allow the customers to add the goods to the shopping basket, and finally view the basket (display all selected items and their total price) and allow the customer to enter payment details. It is not required to implement the actual payment mechanism.
Structure of the Website: Essential Functionality
This section details the essential functionality you are required to implement (60 marks). The website should be organised into at least the following pages:
• The front page should be used to present customers with a brief gallery of goods that your chosen business has to offer and their primary characteristics. The front page should:
– Display the goods image(s), name and price.
– Allow the customer to view detailed information about an item when they choose to do so,
e.g. by clicking on an item’s title or image.
– Be aesthetically pleasing, e.g. display an attractive banner with the business/shop ti-
tle, contact phone number, lay out the items in a nice tabular form, offer intuitive navigation.
• Another page should be used to display detailed information about a particular item (a ’single product/service’ web page). The user should be able to add the currently selected item to the shopping basket.
• Yet another page should display the contents of the shopping basket. The shopping basket page should:
– Be accessible only to the customer who has placed the goods there.
– Show all the chosen items and their total price.
– Allow the customer to delete an item (or all items) from the shopping basket. – Be persistent within the session.
• Another page, Checkout, should allow the user to enter their credit card payment details, and confirm the final price to be paid. As the user steps through the fields of the form, help messages should be displayed explaining what information needs to be entered in each field. There is no need to implement an actual checkout or secure payment mechanism. It is suffi- cient to implement only a basic validation for the payment form: when the user fills in the form incorrectly and attempts to submit it, a helpful error message should be displayed. It is not necessary to process this form in any other way.
• Your website should provide the user with a User account functionality, which would allow the user to register, log in and log out. If the user is not able to register, log in or log out, the system should display helpful error messages to the user.
1 http://flask.pocoo.org
Advanced Features
CMT302 – Coursework 2
Providing additional functionality or qualities for the website allow you to obtain further 20 marks. Examples of these are (but are not restricted to):
• Functionality to allow customers to leave reviews relating to particular items.
• A search facility allowing the customers to find items according to various search criteria. • A facility to add a product to the customer’s ’wishlist’.
• A facility to prepare shipping labels.
• A facility to prepare electronic invoices (e.g. as a .pdf file).
• Exceptional attention to security and safety.
• Exceptional attention to aesthetics and information content.
There are endless possibilities here and you are encouraged to think of your own extensions. Note: 20 marks are the maximum marks obtainable for any combination of the features in this category. Also note that if your README.txt file does not specify what additional functionality you implemented and wanted to be marked, no marks will be awarded (even if additional functionality was implemented).
Goods for Sale
The nature of goods to be “sold” on your website is your choice. The site, however, must not include any content that is likely to be offensive to others. Moreover, the items on your website should be plausible and relevant to the chosen business in order to illustrate your website’s functionality. Please populate your database(s) with at least five nice examples (items) prior to submission so that the examiners can adequately test the functionality of your website.
As the minimum, the items on your website should have the following properties:
• Textual description • Picture
and any other relevant characteristics.
Technologies to be Used
In order to demonstrate your ability to use the Flask microframework and other various web technolo- gies introduced in the module, your website should use the following:
• Navigational menus with links to the different parts of the website (e.g. “view basket”, “go to front page” etc.)
• Lists, which could be used, for example, for menus or to itemise properties of the shop items.
• Tables, which could for instance be used to format the list of available items.
• CSS style sheets, including an external CSS file to define the appearance of your website.
• Links to external web resources (i.e. via the anchor element), for example to a manufacturer’s
• A MySQL database that maintains the content of the shop.
• You may also use JavaScript if/ when/ where appropriate, for example to provide feedback
to the customers when they update their shopping basket. (Note: you do not have to use JavaScript, only if you want to. The same functionality can be implemented in Python/ Flask.)
Important Conditions
CMT302 – Coursework 2
• The main software tools and technologies that are to be employed on the website are Python/ Flask. The use of HTML (HTML5 and XHTML are allowed), CSS, MySQL, JavaScript and XML is also allowed – but these should be in addition to Flask, not instead of.
• Use of libraries, APIs, etc. is allowed, however, the final code must be authored by you. If you use external libraries, APIs, etc. you must provide an explanation of how and where these were used AND complete references in your code and in a separate file (e.g. README.md).
Note that there should be no need to produce a user guide as it is assumed that the website interface will be self-explanatory.
Good luck!
ASSESSMENT CRITERIA AND MARKS ALLOCATION
Coursework Coversheet
binary mark: no = 0, yes = 1
README.txt file
not submitted = 0, minor issues (e.g. some information is missing)=1
Website files in a single zip file
binary mark: no=0, yes=1
The website has been successfully deployed on OpenShift
binary mark: no=0, yes=16
TOTAL FOR WEBSITE DEPLOYMENT
Public gallery of shop items:
Essential functionality
Correct Submission
1 (binary) 2
1 (binary) 16 (binary) 20
5 (binary) 3
2 (binary)
3 3 3 3 3 3
2 (binary)
2 (binary)
The list of items is displayed to customers:
Item names, prices and pictures are shown
The list of items is generated programmatically (i.e. pulled from the database, not created manually) Mark is binary here: no=0, yes=5.
Customers can choose to view detailed information about an item
Detailed (Single Product) view:
The chosen item is displayed correctly: name, picture, detailed information Customers can add selected items to the basket
. . . and appropriate feedback is given to the user upon addition Mark is binary here: no=0, yes=2.
Shopping basket:
Shopping basket correctly displays the chosen items
The total price is displayed correctly
Customers can delete items from the basket
. . . and the shopping basket view is then updated to reflect this Basket contents remain persistent within the session
Basket contents are only visible to the customer who put them there
Checkout (payment form):
Payment form is shown when the user proceeds to checkout Help messages appear as the user steps through the input fields
Mark is binary here: no=0, yes=2.
Error messages are shown when the user incorrectly fills in the form
Mark is binary here: no=0, yes=2.
Customer Accounts:
Customers can create an account Mark is binary here: no=0, yes=2
Customers can log in into their account Mark is binary here: no=0, yes=2
Error messages are shown when the user in not able to log in Mark is binary here: no=0, yes=2
TOTAL FOR ESSENTIAL FUNCTIONALITY
Usability and presentation
Ease of navigation (how easy it is to access every page from every other page) Consistency of the design and professionalism in visual presentation
TOTAL FOR USABILITY AND PRESENTATION
2 (binary) 2 (binary) 2 (binary)
Advanced functionality or exceptional effort (examples and maximum marks available)
Functionality to allow visitors to leave reviews relating to particular items
A search facility allowing to find items according to specified search criteria A facility for customers to create a ’wishlist’
A facility to prepare shipping labels
A facility to prepare electronic invoices
Exceptional attention to security and safety
Exceptional attention to design and information content
MAX TOTAL FOR ADVANCED FUNCTIONALITY or EXCEPTIONAL EFFORT
(up to 10) (up to 10)
MARKING GUIDE
Essential functionality
Excellent Functionality described in the instructions fully works. There are no detectable bugs. The (3 marks) system is robust under all circumstances.
Good Functionality described in the instructions mostly works. The examiner spots some inconse- (2 marks) quential bugs that do not substantially affect the operation of the website. The system remains
stable during normal usage, but fails when the examiner deliberately tries to break it.
Poor Only partially functioning features. There are obvious bugs that substantially affect the (1 mark) operation of the website. The system behaves unpredictably during normal usage. Serious
flaws in several functions. Persistent bugs affecting the functionality of the website.
None Not implemented or does not work at all. (0 marks)
Usability and presentation
• Navigation is intuitive, consistent and self-explanatory, with clear navigational menus on all pages providing access to all other parts of the site without breaking the logic of operation. Navigation is personalised to a particular user (e.g. the website greats the user by her/ his name).
• All shopping and basket pages are informative, with professionally presented, logically and consistently laid out content; effective use of HTML and other ’display’ elements, with CSS control of styling.
(3-4 marks)
• Navigation is mostly intuitive, with a few limitations in ease of navigation or with use of menus and links, e.g. the user may need to re-enter some information once they left a page and came back.
• Reasonable presentation of content, although not yet of professional quality. Generally well laid out using CSS where appropriate but some limitations in overall coherence of design and use of space on page.
Poor • Means of navigation are confusing. Using the shop is a chore.
(1-2 mark) • Inconsistent design across website with poor presentation: failure to employ CSS appro- priately to control presentation. Text is often difficult to read (e.g. poor colour contrast,
obtrusive background patterns, text too small or unnecessarily too big).
None • None, absent, not implemented, not applicable. (0 marks)
Advanced functionality or exceptional effort
Excellent Functionality described in the instructions fully works. There are no detectable bugs. The (5 or 8-10 system is robust under all circumstances.
(3-4 or 4-7 marks)
Functionality described in the instructions mostly works. The examiner spots some inconse- quential bugs that do not substantially affect the operation of the website. The system remains stable during normal usage, but fails when the examiner deliberately tries to break it.
(1-2 or 1-3 marks)
Only partially functioning features. There are obvious bugs that substantially affect the operation of the website. The system behaves unpredictably during normal usage. Serious flaws in several functions. Persistent bugs affecting the functionality of the website.
None Not implemented or does not work at all. (0 marks)
程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com