Final
Final
Students’ Declaration:
We declare that:
We understand what is meant by plagiarism
This assignment is all of our own works and we have acknowledged any use of the
published or unpublished works of other people.
We hold a copy of this assignment which we can produce if the original is lost or damaged
[Date] _____7/10/2023_____
1-2 days after deadline− deduction of 25% of the marks obtained for the assignments.
3 days or more after deadline − deduction of 50% of the marks obtained for assignments.
1
PART A: GRADING CRITERIA FOR GROUP REPORT (80 marks)
Introduction The deliverable was well organized and clearly The deliverable was organized and clearly The deliverable lacked overall organization. The
(5 marks) written. The underlying logic was clearly written for the most part. In some areas the reader had to make considerable effort to understand
articulated and easy to follow. The deliverable also logic and/or flow of ideas were difficult to the underlying logic and flow of ideas. The
demonstrated evidence of extensive research effort follow. The deliverable also demonstrated deliverable did not demonstrate knowledge of the
and a depth of thinking about the topic. (4-5 evidence of limited research effort and/or course content, evidence of the research effort or
marks) initial of thinking about the topic. (3 marks) depth of thinking about the topic. (1 – 2 marks)
Conceptual Diagram is correct with all the appropriate syntax Diagram is correct with appropriate syntax but Diagram has very poor syntax (or none) and/or
database design and it is clearly describes the system well. Show somehow still not completely correct depicting depicts the scenario in a very unclear manner.
(ERD / EERD) the scenario. (8 – 11 marks) Diagram has minor errors in the syntax and/or is
fully understanding of entities and relationships.
(15 marks) not clear representation of the scenario. (1 – 7
(12-15 marks)
marks)
Logical database - Correctly normalized without errors. Show fully Provide a reasonable solution with minor Solution provided was not appropriate with major
normalization understand the normalization in the database mistakes. However, the deliverable still show a errors. Demonstrates a limited understanding of the
(10 marks) design of the proposed system. Functional certain understanding of the normalization normalization concept. Functional decomposition
decomposition diagram was correctly presented concept. Functional decomposition diagram diagram was not correctly presented based on the
based on the scenario given. (8-10 marks) was partially correct based on the scenario scenario given. (1 – 4 marks)
given. (5 – 7 marks)
Conceptual Diagram is correct with all the appropriate syntax Diagram is correct with appropriate syntax but Diagram has very poor syntax (or none) and/or
database design and it is clearly describes the system well. Show somehow still not completely correct depicting depicts the scenario in a very unclear manner.
(Data dictionary) the scenario. (5 – 7 marks) Diagram has minor errors in the syntax and/or is
fully understanding of entities and relationships.
(10 marks) not clear representation of the scenario. (1 – 4
(8-10 marks)
marks)
Data Definition Sample result generated from queries were shown Sample result generated from queries were Sample result generated from queries were not
Language (DDL) clearly and were extracted from multiple tables. shown clearly but with limited of efforts where clearly presented that does not matched to the
(10 marks) Student has produce meaningful queries which the data were not extracted from multiple requirements of the given scenario. Queries
using joins concepts that shown the relationship of tables. Queries which using joins concepts that produced does not carry any meaning that reflected
the tables that correctly matched to the shown the relationship of the tables was to the scenario.
requirements of the given scenario. (8-10 marks) partially correct to match the requirements of (1 – 4 marks)
the given scenario. (5 – 7 marks)
Data Manipulation Sample result generated from queries were shown Sample result generated from queries were Sample result generated from queries were not
Language – SQL clearly and were extracted from multiple tables. shown clearly but with limited of efforts where clearly presented that does not matched to the
queries Student has produce meaningful queries which the data were not extracted from multiple requirements of the given scenario. Queries
(15 marks) using joins concepts that shown the relationship of tables. Queries which using joins concepts that produced does not carry any meaning that reflected
the tables that correctly matched to the shown the relationship of the tables was to the scenario.
requirements of the given scenario. (12-15 marks) partially correct to match the requirements of (1 – 7 marks)
the given scenario. (8 – 11 marks)
User interface The interfaces contain all relevant features/ The interfaces contain mostly the relevant The interfaces did not contain relevant
design functions that match the scenario given. The features/functions that match to the scenario features/functions that match the scenario given. The
(15 marks) interfaces were imaginative and effective in given. The interfaces were effective in interfaces given have failed to capture the
conveying ideas to the audience. conveying main ideas, but a bit unimaginative. requirements of the given scenario.
(12-15 marks) (8-11 marks) (1-7 marks)
2
PART B: INDIVIDUAL ASSESSMENT (20 marks)
Criteria Good Moderate Below Average <Name1> <Name2> <Name3> <Name4>
Peer The individual The individual did not The individual did not
Evaluation contributed in a valuable contribute as heavily as contribute to the
(5 marks) way to the assignment. others but did meet all assignment and failed to
The individual is also responsibilities. The meet responsibilities.
able to articulate the key individual is also able to The individual does not
performance criteria of identify some key identify key performance
successful teams and performance criteria of criteria of
evaluate the group successful teams and/or successful teams or
performance accordingly. draw related connections draw
(4-5 marks) to the group performance. inference to own
(3 marks) experience. (1-2 marks)
Reflective The reflection is an in- The reflection attempts to The reflection does not
report (Lesson depth analysis of the demonstrate thinking address the student’s
Learnt) learning experience, the about learning but is thinking and/or learning.
(5 marks) value of the derived vague and/or unclear The reflection does not
learning to self or others, about the personal move beyond a
and the enhancement of learning process. (3 description of the
the student’s marks) learning experience. (1-
appreciation for the 2 marks)
discipline. (4-5 marks)
3
lecturer on the following date.
4
Table of Contents
1. Introduction..............................................................................................................................5
1.1 Identifying the existing problem............................................................................................6
1.2 Functional requirements........................................................................................................7
1.2.1 Functional Analysis........................................................................................................8
1.3 Non-Functional Requirements...............................................................................................9
2. Conceptual design......................................................................................................................10
2.0 Conceptual database design of the selected system.............................................................10
2.1 Business rules.....................................................................................................................11
2.2 Data Model..........................................................................................................................12
2.3 Relational schemas(Mapping)............................................................................................13
2.4 Data Dictionary and Entity Definition................................................................................14
2.4.1 Identifying Entities.......................................................................................................14
2.4.2 Data Dictionary.............................................................................................................16
2.5 The flow and explanation of normalization with functional dependencies diagram...........19
3. Logical database design (SQL queries).................................................................................22
3.1 Creation of database, tables and inserting records...............................................................22
3.2 Queries.................................................................................................................................33
4. User Interface design.................................................................................................................35
5. Future Enhancements And Conclusion.....................................................................................41
6. Appendices................................................................................................................................42
a) Individual Reflective report...................................................................................................42
b) Tasks distribution table.........................................................................................................46
5
1. Introduction
Huawei Technologies Co., Ltd. is a China technology corporation headquartered in
Shenzhen, Guangdong. It develops, designs, manufactures, and sells telecommunications
devices, consumer electronics, smart appliances, and rooftop solar products. Ren Zhengfei
founded the Huawei company in 1987. Huawei's online store offers customers a convenient and
comprehensive platform for quickly accessing a diverse range of the company's cutting-edge
products. The store is a one-stop shop for both tech enthusiasts and customers, offering
everything from flagship smartphones to tablets, laptops, wearables, and a vast selection of
accessories. It is simple to use and provides comprehensive product information, attributes,
pricing, and customer reviews to assist you in making an informed purchasing decision. With
global availability, the store serves customers from all over the world, providing a wide range of
services. Customers may typically expect responsive customer service via live chat, email, and
phone, as well as resources such as FAQs and troubleshooting guides. Furthermore, the store's
various payment options, as well as its clear warranty and return policies, enhance the whole
shopping experience. Customers can be confident in their online purchases since personal
information and payment details are protected by security precautions. While promotions and
discounts may sweeten the deal even more, the most latest modifications and offerings should be
found on Huawei's official website.
6
1.1 Identifying the existing problem
Based on the information we have obtained, the creation of this online store aims to solve the
following issues within Huawei.
1. Inefficient Business model: The current system used by Huawei produces unnecessary increased
costs and is unoptimized in terms of efficiency. Managers have to manually keep track of
inventory and contact suppliers to order stocks as they are needed which is time consuming and
can result in periods of time where a particular product is out of stock if the manager places an
order too late. Customers also have to physically travel to the store which is inconvenient and
leads to increased staff and therefore increased business costs.
2. Time wasted on manual processes: The process of manual inventory taking, updating of
inventory information and handling customers wastes valuable time that could be used to
complete other tasks and increased business costs due to requiring more employees.
3. Unoptimized inventory management: The lack of an inventory control system means that items
sold are not immediately recorded in inventory. This may result in mistakes when updating
inventory and may lead to an item going out of stock due to inaccurate inventory information.
4. Poor Data Management: The lack of data management leads to managers having to make
decisions based on memory which can be inaccurate. The proper management of data will ensure
that the best decisions can be made.
5. Security risk: physical documentation also carries a risk of being misplaced, lost or accidentally
destroyed due to the large volume of documentation.
All of these problems can be detrimental to the business operations of Huawei. Therefore, in order to
improve the business operations and decision making of Huawei an online store should be
created.
7
1.2 Functional requirements
Functional requirements for e-commerce websites include user registration and
authentication, allowing users to create accounts with a unique username and password
and confirm identity creation via email. The website should provide product browsing
functionality, displaying the product catalog with categories and filters, allowing users to
view detailed product information, including price and. The shopping cart feature allows
users to add, delete items, and displays the total cost of selected items, while users can
view and edit the shopping cart before checkout. The checkout process requires the user's
billing and shipping information, selects from multiple pickup options, and requires the
user to securely enter payment information, which the system verifies and confirms
before processing. After placing an order, users will receive an order confirmation email
that includes a summary of the order and estimated delivery date.
User account management features enable users to view order history and track order
status, while the system allows users to update personal information and passwords. To
ensure security, the website uses encryption technology to protect user data, especially
during payment transactions, and takes measures to prevent and detect permitted
activities. Responsive design ensures that the website is welcoming and user-friendly on
various devices (desktop, tablet, mobile). User search function Users use keywords to
search for products, and the search results are displayed in a humanized way.
Users can also provide feedback and reviews, leaving reviews and ratings for products,
which are displayed to help other users make informed purchasing decisions. The admin
panel includes features for managing product listings, order processing and tracking, and
user management for resolving customer queries. Finally, the Reporting and Analytics
feature generates reports on sales, popular products, and customer demographics, and
leverages analytics tools to improve site performance and user experience. These
functional requirements provide a comprehensive and clear framework for an e-
commerce website that can be adapted and expanded based on the needs and complexity
of specific projects.
8
1.2.1 Functional Analysis
Functional Analysis
Input
The input for this assignment will be the data that we are going to put inside into our assignment.
We will be having 6 table, which is user table, product table, shopping cart table, order sales
table, order item table, and review table. All these table will have their own attributes and each
attribute will holding their own specific record. To enter the data into the table we will use SQL
syntax, for example CREATE, INSERT INTO, and more.
Process
The process of this assignment will be calculated that will be needed in the product system. For
example, we wanted to calculate the total amount, n will be the number of products from the
product table x unit price from product table. Another example is we needed to calculate the
inventory left for a current product, n will be the the number of products from product table +
number of supplies from supplies – number of sold from product table. We are going to use SQL
aggregate build in function like AVG, SUM and more.
Output
This is an example of a review form. From this form we can clearly see that there are a few
attributes in it that is similar to the input in our assignment. For example, Review ID is the
primary key, UserID (Foreign Key), ProductID (Foreign Key), Rating, Comment, DatePosted. In
our user interface, we can see that the system also has the function to see the review table.
9
1.3 Non-Functional Requirements
Non-functional requirements are not the same as functional requirements. Non-functional
requirements specify how a device should do something, whereas functional requirements
outline what it should be able to perform. Non-functional requirements are also referred to as
quality attributes since they set critical user expectations and manage product quality. Some
common examples of non-functional criteria are performance, which indicates how quickly the
software responds. How quickly would our system respond if the user requested that we show
the inventory portal and the data housed within it? Scalability describes how well a system
performs under a given load. How long will it take for the user to enter the system and request
something? Portability is a metric that indicates how simple it is to transfer software to another
device or operating system. We must guarantee that there are no conflicts with other processes or
applications when using this inventory system. Usability describes how simple it is to execute a
specific action. We will give numerous beneficial functions in our system to make it more user-
friendly. Security will protect all data on the device and prevent cyberattacks or unwanted
access. We will have authentication and authorization in our system, such as id and password. In
database design, interface requirements pertain to how the database communicates with users
and other systems. It will be more convenient for the user to use an interface. It will import
metadata from relational databases about queries, tables, and stored procedures. For example,
graphical user interface (GUT) provides graphical interface elements such as icons and buttons
to make it easier for users to interact with computers.
10
2. Conceptual design
2.0 Conceptual database design of the selected system
The first stage of database creation is called conceptual database design, and its main
goal is to provide an abstract, high-level representation of the data and its relationships
without getting bogged down in the specifics of its technological implementation. To
represent the main entities, their characteristics, and the relationships between them
visually, this approach entails creating an Entity-Relationship Diagram (ERD). Key
entities are identified and defined, their properties are specified, linkages are established,
and user requirements and business rules are integrated into the design. A conceptual
schema, also known as a data model, is the result. It serves as a foundational blueprint for
later stages of database development, including logical and physical architecture,
guaranteeing alignment with the intended functionality and goal of the database system.
11
2.1 Business rules
The operational principles that control the data stored in a company's databases are
referred to as business rules. Stated differently, business rules express an organization's
perspective on how it should use data. For the database designer, some business rules are
very important since they can be included in logical schema. A business rule will list the
entities along with their relationships with each other. Below is a list of business rules
used within this online store:
1. A product may have many or no sales and each sale can have one or many products.
2. Each product is supplied by one supplier and each supplier supplies one product.
3. Each product can be in none or many shipments and each shipment can only contain
one product.
4. Each sale belongs to only one customer but one customer can place many sale orders.
5. Each sale is shipped by one staff member and one staff member can ship many sales.
6. Each shipment is ordered by one staff member but a staff member can order many
shipments
8. Each shipment is sent by one supplier but one supplier can send many shipments.
Validation rules are used to ensure that the data entered into a field complies with the
preset requirements. An example of this is only allowing the price of a product to be <0.
12
2.2 Data Model
Entity relationship diagram
The above diagram shows a M:M relationship between product and sales that are connected
through the associative entity ProductSales. Product has a 1:1 relationship with Supplier and a
13
1:M relationship with ShipmentOrder. Supplier and Shipment Order have a 1:M relationship.
Finally saes has a M:1 relationship with both Customer and Staff.
14
2.3 Relational schemas(Mapping)
Product(Product ID, Product Name, Unit Price(sold),Quantity On Hand, Purchase Status,
Reorder Level, Supplier ID)
Shipment Order(Shipment ID, Quantity, Date, Staff ID, Supplier ID, Product ID)
Supplier (Supplier ID, Supplier Name, Unit Number, Street, Area, Postal Code, City, State,
Phone)
15
2.4 Data Dictionary and Entity Definition
2.4.1 Identifying Entities
PRODUCT Describe all the items, goods, Inventory Product has the
merchandise, and materials held by a info information of the
business for selling in the market to product detail which
earn a profit. Therefore, it also store in the inventory.
describes all the items the company
will be distributing.
16
SHIPMENT An order shipment is a service that’s Ordered The product order has
ORDER provided to the company according items the information of
to an associated order. quantity purchase.
STAFF An individual that helps a company Order items Person who orders
to have a well-organized record. items when the product
is less in the inventory.
17
2.4.2 Data Dictionary
18
K
19
STREET Supplier Varchar(5
street 0)
20
2.5 The flow and explanation of normalization with
functional dependencies diagram
First, we have Unnormalized Forms (UNF), which include the Product, Sales, Product Sales,
Ship Order, Employee, Supplier, and Customer tables, each containing various attributes. In
UNF, there may be events and dependencies.
UNF
Shipment Order(Shipment ID, Quantity, Date, Staff ID, Supplier ID, Product ID)
Supplier (Supplier ID, Supplier Name, Unit Number, Street, Area, Postal Code, City, State,
Phone)
When converted to first normal form (1NF), we guarantee that every attribute of every table is
atomic and every record has a unique primary key. In 1NF, attributes no longer contain multi-
valued attributes, as shown below:
21
1NF
Shipment Order(Shipment ID, Quantity, Date, Staff ID, Supplier ID, Product ID)
Supplier (Supplier ID, Supplier Name, Unit Number, Street, Area, Postal Code, City, State,
Phone)
On the basis of the first normal form, we continue to study the second normal form (2NF). In
2NF, we mainly focus on eliminating partial dependencies and ensuring that non-primary
attributes are completely dependent on the entire primary key. In this case, since the primary key
of each table is single, the table needs to be further split to meet the requirements of 2NF.
Therefore, the structure remains unchanged.
2NF
Shipment Order(Shipment ID, Quantity, Date, Staff ID, Supplier ID, Product ID)
Supplier (Supplier ID, Supplier Name, Unit Number, Street, Area, Postal Code, City, State,
Phone)
22
Finally, we arrive at third normal form (3NF). In 3NF, we mainly focus on eliminating supply
dependencies and ensuring that each non-primary attribute does not depend on other non-primary
attributes. In this example, the structure remains unchanged because the design of each table has
been standardized and does not contain transitive dependencies.
3NF
Shipment Order(Shipment ID, Quantity, Date, Staff ID, Supplier ID, Product ID)
Supplier (Supplier ID, Supplier Name, Unit Number, Street, Area, Postal Code, City, State,
Phone)
In this normalization, since the data table design is already fairly standard, we do not make any
further structural changes. This occurs because the original non-standardized design is
sufficiently standardized that no further standardization steps are required.
23
3. Logical database design (SQL queries)
3.1 Creation of database, tables and inserting records
Create a database named ITM_PROJECT
Supplier Table
Table Creation
Data Insertion
24
25
Display Records Within Table
Product Table
Table Creation
26
Data insertion
27
Customer Table
Table Creation
Data Insertion
28
Display Records Within Table
Staff Table
Table Creation
29
Data Insertion
30
Display Records Within Table
Sales Table
Table Creation
31
Data Insertion
32
Product_Sales Table
Table Creation
Data Insertion
33
Display Records Within Table
Shipment_Order Table
Table Creation
34
Data Insertion
35
3.2 Queries
1. To find total quantity sold for each product
36
4. To list products that have not been sold yet
6. To list products that are in stock and are not part of any shipment order
37
7. To list the details suppliers whose names start with 'M'
38
9. To calculate the total amount spent on shipment orders
39
10. To display products with their average sale quantities per order
40
4. User Interface design
Login page :user can enter their id and password to enter this system.
Register Page :Let the user to register or create the new account.
41
Interface for user: have 5 function to choose
Product Page : to let user to search what product they want to order and the product information
e.g. price, performance, factory.
42
Payment page: For the user to pay or choose the payment category after pay the time of paid will
become blue color mean the pay mean the paid have done.
43
Profile for user and admin :user can create or edit their information in this profile
Admin page :To checking the online inventory and other function
44
Checking Inventory: Let admin know the inventory
45
Create the New Supplier to save it in the system
46
5. Future Enhancements And Conclusion
Future enhancements:
Strategic enhancements to Huawei's online store's future goals include advanced analytics for
customer insights and predictive analytics for demand forecasting. Dedicated mobile apps
enhance accessibility and engage customers, while machine learning enables personalized
recommendations. Social media integration increases product awareness, and augmented reality
(AR) transforms the online shopping experience.
Conceptual design supported by entity relationship diagrams and business rules provides a solid
foundation. Normalization ensures data integrity by organizing the database. These
enhancements enable Huawei's online store to continuously improve and ensure competitiveness.
Embracing these advancements will meet customer expectations and significantly contribute to
Huawei's success in online retail.
Conclusion
In summary , the online store proposed by Huawei provides customers with a powerful platform
to conveniently explore and purchase various products. The online store aims to streamline
operations and improve overall efficiency by solving existing inefficient business models,
manual processes and unoptimized inventory management. Conceptual design, including entity
relationship diagrams and business rules, provides the foundation for a well-structured database
solution.
The normalization process helps improve data integrity and reliability by ensuring that the
database is organized and free of data anomalies. The identified future enhancements provide
opportunities for continuous improvement and innovation to keep Huawei's online store
competitive in a dynamic e-commerce environment. As technology evolves, adopting these
enhancements will not only meet customer expectations but also contribute to Huawei's growth
and success in the online retail market.
47
6. Appendices
a) Individual Reflective report
[Office Use]
Lecturer’s comment:
48
Name : Tan Ee Fan ID : I23024593
Justification: In this assignment, I tried my best to make this report and cooperated with my
teammates to complete the task within the specified time. Responsible for organizing the second half
of the aftermath. I work as a coordinator in this group to coordinate all issues with the team leader and
team members in order to complete this report well. Although I am not the team leader, I think I can
be regarded as the deputy team leader. If the team members have any problems, they will report them
to me first and then I will discuss the problem with the team leader.
[Office Use]
Lecturer’s comment:
49
Name : TENG JUN YONG ID : I23025110
Justification: I would like to rate myself 6/10 because there’s still space for me to improve myself in
this
group assignment. Overall, this is a great group and the group leader assign our job clearly, I have a
great
[Office Use]
Lecturer’s comment:
50
Name : TAN KAI YANG ID : I23025046
In this database systems assignment, the group focused on conceptualizing and addressing operational
challenges within Huawei Technologies Co., proposing the development of an online store. The
introduction outlined Huawei's profile and identified key issues, leading to the decision to create an
online platform. The conceptual design encompassed business rules, functional and non-functional
requirements, and a detailed data model, with an emphasis on the importance of creating an Entity-
Relationship Diagram (ERD). The logical database design incorporated the creation of a database with
tables and sample records, accompanied by SQL code screenshots. Additionally, the assignment
included a user interface design and future enhancement considerations. Through reflective reports and
a task distribution table, the students demonstrated their understanding of the intricacies of database
systems, SQL coding, user interface design, and collaboration within a group setting.
Justification: I would like to rate myself 7/10 because I feel I still not very clearly know
about the knowledge of database.
And I feel like I need to improve my communication with my teammates because I'm not
fluent in English.
[Office Use]
Lecturer’s comment:
51
b) Tasks distribution table
Task Riqkesh Raz Tan Ee Fan Tan Kai Yang Teng Jun
Singh Yong
1. Introduction All
Problem All
Statement
Functional All
Requirements
Functional All
Analysis
Non-Functional All
Requirement
2. Concept
design
Business Rule Format, type, Give ideas Give ideas Give ideas
give ideas
ERD Diagram Draw out, edit Combine all Give idea Give idea
and do it in the
report to
finalize
ERD Diagram Draw give Draw and give Give suggestions Give
suggestions suggestions suggestions
Relation Customer table Staff and Product table and Products Sale
52
Schemas and Staff table Shipment Order inventory table and Sales
table(inventory table table
has drop)
Identifying All
Entities
User Interface Give idea Design and Give idea Give idea
Draw
53
Lecturer’s Comments
54