You are on page 1of 82

International School of Management and Technology

Tinkune, Kathmandu

NETWORKING ASSIGNMENT

H/615/1619

Submitted by: Submitted to:


Rubin chaulagain Marut Dhungana
Section: F
Session: 2020
Date of Submission: 14th August, 2021

1
STUDENT ASSESSMENT SUBMISSION AND DECLARATION

When submitting evidence for assessment, each student must sign a declaration confirming that the
work is their own.

Student Name Rubin Chaulagain Assessor Name Marut Dhungana

Issue Date 28thJan,2020 Submission Date 14th August, 2021


Programme BTEC HND in Computing

Unit Name Database

Assignment Title Food Ordering System

Plagiarism

Plagiarism is a particular form of cheating. Plagiarism must be avoided at all costs and students
who break the rules, however innocently, may be penalized. It is your responsibility to ensure that
you understand correct referencing practices. As a university level student, you are expected to
use appropriate references throughout and keep carefully detailed notes of all your sources of
materials for material you have used in your work, including any material downloaded from the
Internet. Please consult the relevant unit lecturer or your course tutor if you need any further
advice.

Student Declaration

2
3
INTERNATIONAL SCHOOL OF MANAGEMENT AND TECHNOLOGY
GAIRIGAUN, TINKUNE, KATHMANDU
NEPAL

BTEC HND in Computing

Unit 4: Database Design & Development Unit Code: H/615/1622

Session/Year: 2019 Assessment No: 01

Assignment Launch Date: 28 Jan 2020 Due Date: 28 March 2020

Assignment Title: Food Ordering System

Teacher Name: Marut Dhungana Iv’s Name :

Student Name: Pearson Reg No: Final Grade:

Purpose of this assignment

Database is a crucial part of most of the organizations. Database is defined as the skeleton of any
application. An understanding of database tools and technologies is an essential skill for designing and
developing systems to support them. The assignment provides opportunities to the students to develop an
understanding of the concepts and issues relating to database design and development and to extend the
practical skills to translate that understanding into the design and creation of complex databases. The
completion of the assignment will make sure that the students have been able to use appropriate tools to
design and develop a relational database system for the substantial problem. The students will have an
opportunity to test the system ensuring that user and the system requirements are met. And also, fully
document that system by providing the technical and user documentation.

The completion of the assignment will demonstrate that that the student has been able to:

4
 Use an appropriate design tool to design a relational database system for a substantial problem.
 Develop a fully functional relational database system, based on an existing system design.
 Test the system against the user and system requirements.
 Produce technical and user documentation.

5
Each student has to submit their assignment as guided in the assignment brief. The students are guided
what sort of information is to be produced to meet the targeted criteria. All the tasks need to be done
individually and the student has to produce an individual assignment.

Unit Learning Outcomes targeted in this assignment


LO1: Use an appropriate design tool to design a relational database system for a substantial problem.
LO2: Develop a fully functional relational database system, based on an existing system design.
LO3: Test the system against user and system requirements.
LO4: Produce technical and user documentation.
Scenario I

Universal Café want to design a food ordering system. You are one of the employee hired by this café to
design a database system. The details provided by the system are as follows:

There are three main component of the system: the dining area, the Kitchen, and Admin desk (cash
counter). Customers table with table name, table id and location as well as order details like table name,
order date, order id, delivery date, order status, comments are kept by waiter and entered into system.
The server on the restaurant admin‟s desk is used in updating and keep track of customer table records.
The central database for restaurant-admin to store updated menu information like item id, item name,
category, price and picture file name and order details.

At first the admin with attribute admin id, admin name, password, address, and phone will log into the
system and update the menu. The waiter has to login the system so that the system can assign
identification number to the ordered menu according to table.

The order details from customer‟s Table are updated in sever database and then sent to kitchen and
cashier respectively. The restaurant admin can manage the menu updates easily.

The customer order information and menu choices are sent to the server over network. The admin and
the kitchen cook will receive the ordered lists from the system. The admin can update the order status
into the system. The waiter can thus view his customer order status. After having the food customer with
reference to table can make payment with payment details like total amount, payment id, discount,
status, method of payment for the order that has made in admin desk.

6
Based on the context above, complete the followings.

Part 1

Produce a Report:

1. The design of the relational database system using appropriate design tools and techniques. It
should contain at least four interrelated tables.
2. Clear statements of user and system requirements.
Produce a more detailed document, so you will produce a comprehensive design for a fully functional
system which will include interface and output designs, data validations and cover data normalization
and assess the effectiveness of design in relation to user and system requirements.

Part 2
Once the designs accepted, you have to develop the database system using evidence of user interface,
output and data validations and querying across multiple tables.

You want to include more than just the basics so you will implement a fully functional database system
which will include system security and database maintenance features.

 You have decided to implement a query language into the relational database system.
1. Assessing whether meaningful data has been extracted through the use of query tools to
produceappropriate management information.
2. Evaluating the effectiveness of the database solution in relation to user and system
requirements,and suggest improvements.

3. Once the system has been developed, you will test the system
4. You will produce a brief report assessing the effectiveness of the testing, including an
explanation of the choice of test data used.

Part 3
Lastly you will produce technical and user documentation.
You want to provide some graphical representations for ease of reference in the technical guide,
so you have decided to produce a technical and user documentation for a fully functional system,
including diagrams showing movement of data through the system, and flowcharts describing
how the system works.

7
Pass Merit Distinction
LO1 Use an appropriate design tool to design a relational database system for a substantial problem
P1 Design a relational database M1 Produce a comprehensive LO1 D1 Assess the effectiveness
system using appropriate design design for a fully functional of the design in relation to user
tools and techniques, containing system which includes interface and system requirements.
at least four interrelated tables, and output designs, data
with clear statements of user and validations and data
system requirements. normalization.

LO2 Develop a fully functional relational database system, based on an existing system design.

P2 Develop the database system M2 Implement a fully functional LO2 & LO3 D2 Evaluate the
with evidence of user interface, database system which includes effectiveness of the database
output and data validations, and system security and database solution in relation to user and
querying across multiple tables. maintenance. system requirements, and

P3 Implement a query language M3 Assess whether meaningful suggest improvements.


into the relational database data has been extracted through
system. the use of query tools to produce
appropriate management
information.
LO3: Test the system against user and system requirements
P4 Test the system against user M4 Assess the effectiveness of
and system requirements. the testing, including an
explanation of the choice of test
data used.
LO4: Produce technical and user documentation.
P5 Produce technical and user M5 Produce technical and user D3 Assess any future
documentation. documentation for a fully improvements that may be
functional system, including required to ensure the continued
diagrams showing movement of effectiveness of the database
data through the system, and system.
flowcharts describing how the
system works.

Mention all the grades awarded in this assignments:


8
9
Note: Please access HN Global for additional resources support and reading for this unit.
For further guidance and support on report writing please refer to the Study Skills Unit on
HN Global. Link to www.highernationals.com

Other Recommendations:

 It should be the student’s own work – plagiarism is unacceptable.


 Clarity of expression and structure are important features.
 Your work should be submitted as a well presented, word-processed document
with headers andfooters, and headings and subheadings, both in hard and soft
copies.
 You are expected to undertake research on this subject using books from the
Library, andresources available on the Internet.
 Any sources of information should be listed as references at the end of your
document and thesesources should be referenced within the text of your
document using APA referencing style
 Your report should be illustrated with screen-prints, images, tables, charts
and/or graphics.
 All assignments must be typed in Times New Roman, size 12, 1½ spacing.

I declare that all the work submitted for this assignment is my own work or, in the case of
group work, the work of myself and the other members of the group in which I worked, and
that no part of it has beencopied from any source. I understand that if any part of the work
submitted for this assignment is found to be plagiarized, none of the work submitted will be
allowed to count towards the assessment of the assignment.

9
Assignment Prepared By: Signature: Date: 15 Jan, 2020
Marut Dhungana

Brief Checked By: Signature: Date: 17 Jan, 2020


Dhruba Babu Joshi

10
Contents
Part 1:.................................................................................................................................................................................. 13
Introduction:.......................................................................................................................................................................14
Database:............................................................................................................................................................................ 14
Relational Database:...........................................................................................................................................................14
Object-oriented database:....................................................................................................................................................14
Normalization:.................................................................................................................................................................... 25
Second Normal Form (2NF):..............................................................................................................................................25
-Third Normal Form (3NF):................................................................................................................................................25
Second Normal Form (2NF)...............................................................................................................................................26
Third Normal Form (3NF)..................................................................................................................................................27
Data Validation:.................................................................................................................................................................. 28
Effectiveness of the design in relation to user and system requirements.............................................................................30
Parent Form:.......................................................................................................................................................................32
Queries across multiple tables:............................................................................................................................................35
1. Customer Table...................................................................................................................................................35
SYNTAX:...........................................................................................................................................................................37
Constraints..........................................................................................................................................................................38
Implementing a query language into the relational database system...................................................................................41
SELECT statement:............................................................................................................................................................ 41
INSERT statement:.............................................................................................................................................................43
DELETE statement:............................................................................................................................................................44
Syntax:................................................................................................................................................................................ 44
UPDATE statement:...........................................................................................................................................................45
SQL Clauses:...................................................................................................................................................................... 45
Joins:................................................................................................................................................................................... 48
Database Security:.............................................................................................................................................................. 50
SQL Server authentication:.................................................................................................................................................50
Password Policy:................................................................................................................................................................. 50
For login:............................................................................................................................................................................ 51
Evaluation of effectiveness of the database solution in relation to user and system requirements, and suggest
improvements..................................................................................................................................................................... 53
Feedback form:...................................................................................................................................................................53
Testing the system against user and system requirement:...................................................................................................55
Login Form:........................................................................................................................................................................57
Technical and user documentation......................................................................................................................................60
User Documentation of my system (IMS):.........................................................................................................................61
Interfaces:...........................................................................................................................................................................61
11
Basic Layout of my application.............................................................................................................................66
Context DFD (Zero Level DFD).........................................................................................................................................66
Level 1 Data Flow Diagram:..............................................................................................................................................68
Index:.................................................................................................................................................................................. 69
Sequence Diagram:.............................................................................................................................................................70
Future improvements that may be required to ensure the continued effectiveness of the database system.........................76
Bibliography.......................................................................................................................................................................78

12
Part 1:

Produce a Report:

1. The design of the relational database system using appropriate design tools and techniques. It
should contain at least four interrelated tables.

2. Clear statements of user and system requirements. Produce a more detailed document, so you
will produce a comprehensive design for a fully functional system which will include interface
and output designs, data validations and cover data normalization and assess the effectiveness of
design in relation to user and system requirements.

13
Introduction:

Nowadays, every technical field is trying to style the human life at ease. The past couple years
there has been enormous growth of internet restaurants. It‟s just a single window for ordering
from varied series of restaurants. Basically, „‟Food Ordering System” can be defined as a simple
and convenient way for the customers to purchase food online, without having to go to the
restaurant. This system is very useful to those who are very busy in work or in home and do not
have the time to go outside or cook the food. A customer doesn‟t really need to have technical
knowledge to operate it. Because it is designed in very modest way. It provides complete
dashboard with information about menus, orders, etc. This system can be used in any online food
industry. In short, it‟s easy, convenient, completely transparent food software and also customer-
friendly online ordering system.
Database:

Database, also called electronic database, any collection of data, or information, that is specially
organized for rapid search and retrieval by a computer. Databases are structured to facilitate the
storage, retrieval, modification, and deletion of data in conjunction with various data-processing
operations. A database management system (DBMS) extracts information from the database in
response to queries. A database is stored as a file or a set of files. The information in these files
may be broken down into records, each of which consists of one or more fields. Fields are the
basic units of data storage, and each field typically contains information pertaining to one aspect
or attribute of the entity described by the database. There are different types of database they are:

Relational Database:

A relation is a table, like a spreadsheet table, but with the difference that it can be related to
another table, or tables, in several ways. There are also definite rules on how a table should be
constructed. On this site is a database design tutorial. You will find everything you want to know
about database tables, how they should be constructed and how they relate to each other, in this
tutorial.

Object-oriented database:

An object-oriented database is a collection of object-oriented programming and relational


database. There are various items which are created using object-oriented programming
languages like C++, Java which can be stored in relational databases, but object-oriented
databases are well-suited for those items.
An object-oriented database is organized around objects rather than actions, and data rather than
logic. For example, a multimedia record in a relational database can be a definable data object, as
opposed to an alphanumeric value.

14
Centralized Database
The information (data) is stored at a centralized location and the users from different locations
can access this data. This type of database contains application procedures that help the users to
access the data even from a remote location.
Various kinds of authentication procedures are applied for the verification and validation of end
users, likewise, a registration number is provided by the application procedures which keeps a
track and record of data usage. The local area office handles this thing.
Distributed databases:

A distributed database is a type of database that has contributions from the common database and
information captured by local computers. In this type of database system, the data is not in one
place and is distributed at various organizations.

Open-source databases:

This kind of database stored information related to operations. It is mainly used in the field of
marketing, employee relations, customer service, of databases.

Cloud databases:

A cloud database is a database which is optimized or built for such a virtualized environment.
There are so many advantages of a cloud database, some of which can pay for storage capacity
and bandwidth. It also offers scalability on-demand, along with high availability.

Data warehouses:

Data Warehouse is to facilitate a single version of truth for a company for decision making and
forecasting. A Data warehouse is an information system that contains historical and commutative
data from single or multiple sources. Data Warehouse concept simplifies the reporting and
analysis process of the organization.

Graph databases:

A graph-oriented database uses graph theory to store, map, and query relationships. These kinds
of computers databases are mostly used for analyzing interconnections. For example, an
organization can use a graph database to mine data about customers from social media.

Application of DB:
A database application is computer software which allows one to enter, update, read and delete
data from a database. Most end-user targeted database applications see to it that the end-user has
a GUI to work with. There are two main ways of providing a GUI. The second one is increasing
in popularity:

 a desktop GUI like with MS Access


 the database application creating web pages which are displayed in a browser

15
Applications where we use Database Management Systems are:

 Banking System:

For storing customer info, tracking day to day credit and debit transactions, generating
bank statements etc. All this work has been done with the help of Database management
systems.

 Sales:

To store customer information, production information and invoice details.

 Airlines:

To travel though airlines, we make early reservations, this reservation information along
with flight schedule is stored in database.

 Education sector:

Database systems are frequently used in schools and colleges to store and retrieve the data
regarding student details, staff details, course details, exam details, payroll data, attendance
details, fees details etc. There is a hell lot amount of inter-related data that needs to be
stored and retrieved in an efficient manner.

 Online shopping:

You must be aware of the online shopping websites such as Amazon, Flipkart etc. These
sites store the product information, your addresses and preferences, credit details and
provide you the relevant list of products based on your query. All this involves a Database
management system.

User requirements:

 A waiter approaches the customers.


 A waiter has login the system so that the system can assign identification number
to the order menu according to table.
 At the first admin with attribute Admin ID, Admin Name, Password, Password,
Address and phone number will login into the system update the menu.
 The admin and the kitchen cook will receive the order list from the system.
 The customer order information and menu choices are sent to the server over
network.
 The waiter can view the customer order status and after leaving the customer with
reference to table can make payment with payment details.

16
System Requirement:

 Admin should be table to track on the customer tables.


 Restaurant admin should be able to update menu information.
 The waiter can view the customer order status and after leaving the customer with
reference to table can make payment with payment details.
 Admin and kitchen cook will receive the order list from the system.
 The admin should update the order status into the system.

Database Design Tool and Technique:

Database Design Tool and Technique is a properly designed database provides you with access
to up-to-date, accurate information. Because a correct design is essential to achieving your goals
in working with a database, investing the time required to learn the principles of good design
makes sense. In the end, you are much more likely to end up with a database that meets your
needs and can easily accommodate change.

Entity Relationship Diagram(ER Diagram):

An ER diagram shows the relationship among entity sets. An entity set is a group of similar
entities and these entities can have attributes. In terms of DBMS, an entity is a table or attribute
of a table in database, so by showing relationship among tables and their attributes, ER diagram
shows the complete logical structure of a database. Let‟s have a look at a simple ER diagram to
understand this concept.

According to the scenario the ER diagram is given below:

17
Explanation of ER Diagram:

As we know that entity relationship diagram(ER Diagram) model is a design or blueprint of a


database that can later be implemented as a database. The main components of E-R model are:
entity set and relationship set. I am using draw.io to make the Given ER diagram. In this ER
diagram I am using some entity like Cashier, Cafe, Customer, Order, Chef, Items, waiter,
Manager. There is relation between these entity like; the cashier has cafe, the cafe has manager,
Manager takes order, order contain item, manager tells chef, bill pay customer, waiter delivers to
customer, order taken by waiter etc. A Universal café is an establishment that primarily
serves coffee (of various types, e.g. espresso, latte, cappuccino). Some cafe may serve cold
drinks such as iced coffee and iced tea; in continental Europe, cafés serve alcoholic drinks. A
cafe may also serve food such as light snacks, sandwiches, muffins, fruit or pastries. Cafe range
from owner-operated small businesses to large multinational corporations. Some cafe chains
operate on a franchise business model, with numerous branches across various countries around
the world.

Symbol and Notation of ER Diagram:

Entity symbols

Entities are objects or concepts that represent important data. Entities are typically nouns such as
product, customer, location, or promotion. There are three types of entities commonly used in
entity relationship diagrams they are:

Entity Symbol Description

These shapes are independent from other


entities, and are often called parent entities,
since they will often have weak entities that
depend on them. They will also have a primary
key, distinguishing each occurrence of the
entity.

Weak entities depend on some other entity


type. They don't have primary keys, and have
no meaning in the diagram without their parent
entity.

18
Associative entities relate the instances of
several entity types. They also contain
attributes specific to the relationship between
those entity instances.

Relationship symbols

Within entity-relationship diagrams, relationships are used to document the interaction between
two entities. Relationships are usually verbs such as assign, associate, or track and provide useful
information that could not be discerned with just the entity types.

Relationship symbol Description

Relationships are associations between or


among entities.

Weak Relationships are connections between a


weak entity and its owner.

Attribute symbols

ERD attributes are characteristics of the entity that help users to better understand the database.
Attributes are included to include details of the various entities that are highlighted in a
conceptual ER diagram.

19
Attribute Symbol Description

Attributes are characteristics of an entity, a


many-to-many relationship, or a one-to-one
relationship.

Multivalued attributes are those that are can take on


more than one value.

Derived attributes are attributes whose value can be


calculated from related attribute values.

Relationships are associations between or among


entities.

Data types:

A database data type refers to the format of data storage that can hold a distinct type or range of
values. When computer programs store data in variables, each variable must be designated a
distinct data type. Some common data types are as follows: integers, characters, strings, floating
point numbers and arrays.

20
Indexes:

Indexing is a way to optimize the performance of a database by minimizing the number of disk
accesses required when a query is processed. It is a data structure technique which is used to
quickly locate and access the data in a database.

Primary/foreign keys:

Primary keys

A primary key is a column or a set of columns in a table whose values uniquely identify a row in
the table. A relational database is designed to enforce the uniqueness of primary keys by
allowing only one row with a given primary key value in a table.

Foreign keys

A foreign key is a column or a set of columns in a table whose values correspond to the values of
the primary key in another table. In order to add a row with a given foreign key value, there must
exist a row in the related table with the same primary key value.

Entity relationship modeling:

Entity Relationship Model (ER Modeling) is a graphical approach to database design. It is a


high-level data model that defines data elements and their relationship for a specified software
system. An ER model is used to represent real-world objects. An Entity is a thing or object in
real world that is distinguishable from surrounding environment.

Referential integrity:

Referential integrity refers to the accuracy and consistency of data within a relationship. In
relationships, data is linked between two or more tables. This is achieved by having the foreign
key (in the associated table) reference a primary key value (in the primary – or parent – table).

Data Schema diagrams:

The design of the database is called a schema. This tells us about the structural view of the
database. It gives us an overall description of the database. A database schema defines how the
data is organized using the schema diagram. A schema diagram is a diagram which contains
entities and the attributes that will define that schema. A schema diagram only shows us the
database design. It does not show the actual data of the database. Schema can be a single table
or it can have more than one table which is related. The schema represents the relationship
between these tables.

21
Data Dictionary:

Data Dictionary of Cashier:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Cashier ID No Integer 50 Primary 2541


Key

Name Varchar 50 Ram

Data Dictionary of Bill:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Bill Bill No Integer 50 10

Order 100 2 Pizza and


Details 1Burger

Data Dictionary of Customer:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Customer Name Varchar 50 Hari

Address Varchar 100 Pokhara

Contact Integer 100 9813548564

22
Data Dictionary of Waiter:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Waiter Name Varchar 50 Krishna

ID No Integer 50 5

Data Dictionary of Items:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Items Items No Integer 50 45

Description Varchar 50

Price Integer 50 500

Quantity Integer 50 3

Data Dictionary of Order

Entity Fieldname Data Type Filed Constraints Description Example


Length

Order Order No Integer 50 30

No of Item Integer 50 3

23
Data Dictionary of Manager:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Manager Name Varchar 50 Tipendra

ID No Integer 50 4

Contact Integer 50 9814589621

Data Dictionary of Café:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Cafe Name Varchar 50 Universal


Cafe

Contact Integer 50 9844526578

Address varchar 50 Kathmandu

Data Dictionary of chef:

Entity Fieldname Data Type Filed Constraints Description Example


Length

Name Varchar 50 Pinku

ID No Integer 50 20

24
Normalization:
Data Normalization is systematic technique of decomposing or dividing database tables to
remove redundancy and undesirable characteristics anomalies. It puts data into multiple tables by
using different steps by removing the duplicated data from the table. Normalization is done to
make sure that data are stored logically in database using different tables. If data is not properly
normalized, data may loss and inconsistency in database may occur(Gour, et al., 2018). There are
three common types of normalization which are listed below:

1) First Normal Form (1NF)

2)Second Normal Form (2NF)

3)Third Normal Form (3NF)

First Normal Form (1NF):

First Norm Form or 1NF is the technique of dividing unnormalized into another table by
identifying therepeating groups and removing those repeating groups within the table. Repeating
groups can be attributes or group of attributes which comes with multiple values for a single
occurrence of the nominated key attribute(s) for the table. Normally, it means every attributes in
the table must be unique and separate table must be created for the set of related data.

Second Normal Form (2NF):

For a table to be in 2NF, first table should be in 1NF and it should not contain partial
dependency. It is based on the concept of full functional dependency.It is the relation which is in
1NF and all the attributes which are not primary key must be fully functionally dependent on the
primary key.

-Third Normal Form (3NF):

Though 2NF is less redundant then 1NF, they may still suffer from the update anomalies which
is caused by transitive dependencies. We need to remove those anomalies by progressing into
3NF. So, the relation which is in 1NF and 2NF and when non-primary-key doesn‟t contain
transitive dependencies on the primary key is called third normal form (3NF).

25
Example of normalization:

Waiter Order Payment


Waiter Id Order ID Payment method
Name, Phone Number Table Name, Oder status, Total Amount, Discount,
Comments Payment Id
Delivery Date Status
Before 1NF Normalization

Waiter Order Payment


1211 1220 E-Sewa,
Aashika 1 4000
9821121315 Completed 10%
Good 5216
3/22/2020 Completed

After1NF Normalization

Second Normal Form (2NF)


The rules of normalization in which first normal form and every non-key attribute which fully functional
depend upon the primary key.

Waiter Order Payment Admin


Waiter Id Order ID Payment method Address
Name, Phone Number Table Name, Oder Total Amount, Discount, Admin Id, Phone No,
status, Comments Payment Id Password
Delivery Date Status Admin Name

Before 2NF Normalization

Waiter Order Payment


1211 1220 E-Sewa,
Aashika 1 4000
9821121315 Completed 10%
Good 5216
3/22/2020 Completed
After 2NF Normalization

26
Again we create here another table for Payment minimize it in 2NF

Waiter Payment Admin


1211 E-Sewa, Tinkune
Aashika 4000 5124
9821121315 10% 9821121314
5216 Admin@12134
Completed Nikesh

From the above picture there are two different picture which shows one before the 2NF & another
shows the after 2NF. For being the Second Normal Form, 1NF must be fulfilled. A single table which was
shown above that cannot fulfilled the 2NF for getting 2NF that table divided into two different tables
Finally, last table shows the normalized form.

Third Normal Form (3NF)

The database must follow some conditions to be a third normal form & they are:

i. First of all, it must be in second normal form(2NF)


ii. There shouldn’t be transitive functional dependency

Waiter Order Payment Admin Menu


Waiter Id Order ID Payment method Address Food Id
Name, Phone Table Name, Total Amount, Discount, Admin Id, Phone Food name,
Number Oder status, Payment Id No, Food Quantity
Comments Password

Delivery Date Status Admin Name Food Price


Before 3NF Normalization

Waiter Order Payment


1211 1220 E-Sewa,
Aashika 1 4000
9821121315 Completed 10%
Good 5216
3/22/2020 Completed

Admin Menu
Tinkune 2110
5124 Pizza
9821121314 5
Admin@12134 2500
Nikesh

27
After 3NF Normalization

Data Validation:

As its name suggests it helps to check the accuracy and quality of source data before using,
importing or otherwise processing data. We perform data validation test for analyst can get
insight into the scope or nature of data conflicts. It ensures that the data complies with the
requirement and quality benchmarks. It is also known as input validation. Some of the typed of
validation includes data length validation, data format validation, data range validation and data
presence validation.

Data validation means checking the accuracy and quality of source data before using, importing
or otherwise processing data. A data validation test is performed so that analyst can get insight
into the scope or nature of data conflicts. It ensures that the data complies with the requirements
and quality benchmarks. It is also known as input validation. Some of the types of data validation
include:

1. Menu Validation
2. Payment Validation
3. Waiter Validation
4. Order Validation

1. Menu Validation

28
2. Payment Validation

3. Waiter Validation

29
4. Order Validation

Effectiveness of the design in relation to user and system


requirements
As an IT person of a company, I have first designed a relational database using different
development tools and techniques. As per my client’s requirement I have designed my
application which has a simple and user-friendly interface which helps my client to interact with
the application easily. Basically, the system that I have designed has four basic elements which
are products, purchases, order and suppliers which is also the requirement of my client. Using
this application, vendor can store data on the products that has been bought from any of its
suppliers and data of customers located in different countries that can make orders on these
products. The application has function to save all the information of customers that have ordered
the particular product which acts as an evidence for communication, decision making and further
actions. It also contains feature to generate reports of products and suppliers which allows user to
view the report such as maximum sales in a particular date, total sales with tax, number of
products supplied in one year and so on which helps to develop the further strategy of a
company. Vendors can also view the statement of order; which product has been ordered by
whom, what‟s the price of that particular product, the details of person who has ordered that
particular product and the amount of the ordered product. It also contains separate password
policy for users and separate password policy for admin which is very effective in the point of
security.

30
Part 2

Once the designs accepted, you have to develop the database system using evidence of user
interface, output and data validations and querying across multiple tables.

You want to include more than just the basics so you will implement a fully functional database
system which will include system security and database maintenance features.

 You have decided to implement a query language into the relational database
system.

1. Assessing whether meaningful data has been extracted through the use of query tools to
produce appropriate management information.

2. Evaluating the effectiveness of the database solution in relation to user and system
requirements, and suggest improvements.

3. Once the system has been developed, you will test the system

4. You will produce a brief report assessing the effectiveness of the testing, including an
explanation of the choice of test data used.

31
Introduction:

An integrated development environment (IDE) is software for building applications that


combines common developer tools into a single graphical user interface (GUI). IDEs increase
programmer productivity by combining common activities of writing software into a single
application: editing source code, building executable, and debugging. Developers use numerous
tools throughout software code creation, building and testing. Development tools often include
text editors, code libraries, compilers and test platforms. Without an IDE, a developer must
select, deploy, integrate and manage all of these tools separately. An IDE brings many of those
development-related tools together as a single framework, application or service. The integrated
toolset is designed to simplify software development and can identify and minimize coding
mistakes and typos.

User Interface (UI):


A user interface, also called a "UI" or simply an "interface," is the means in which a person
controls a software application or hardware device. A good user interface provides a "user-
friendly" experience, allowing the user to interact with the software or hardware in a natural and
intuitive way. Nearly all software programs have a graphical user interface, or GUI. This means
the program includes graphical controls, which the user can select using a mouse or keyboard. A
typical GUI of a software program includes a menu bar, toolbar, windows, buttons, and other
controls.
Following is the User Interface (UI) of our project:

Parent Form:

32
Interfaces:

These are the User Interfaces (UI) of the Food Ordering System which is very user-friendly,
simple and attractive. Each menu has multiple sub-menus which directs user to different pages.

33
Here are the different interfaces to insert, update and delete data in my project.

34
Queries across multiple tables:

DDL (Data Definition Language) allows database administrator (DBA) or user for creation
and deletion of the table.DDL statements are used to create, alter, and remove database
objects. These statements are used to create, destroy and change the structures that make up
the conceptual schema(Connolly & Begg, 2014). It is also used to define a schema or to
modify an existing one. Common DDL statements are

1. CREATE

2. DROP

3. ALTER

CREATE STATEMENT:
The SQL create statement is used to create a new table in the database.

SYNTAX:

CREATE TABLE table_name (

column1datatype,

column2datatype,

column3datatype;

columndatatypeN;

);

I have used CREATE command to create five different tables which have different columns with
different data types. Also, I have determined primary keys to uniquely identify the data.

1. Customer Table

35
2. Product Table

3. OrderItem Table

4. Order Table

36
5. Supplier Table

ALTER Statement
This statement is used to modify columns in the existing table. This statement is also used
to drop different constraints on the existing table.

SYNTAX:

ALTER TABLE table_name

ADD column_namedatatype;

I have used ALTER statement to use foreign key in different tables which is the primary key of
another table so that one table can be linked with another table in my project food ordering
System.

37
Constraints

SQL constraints are used to specify rules for the data in a table. These can be specified when
tables are created or after it has been created.Constraintsare used to limit the type of data that can
go into a table. This ensures the accuracy and reliability of the data in the table. If there is any
violation between the constraint and the data action, the action is aborted

Some of the common constraints are:

1. Primary Key:
The primary key is a designated candidate key which is noted not to be null and
uniquely identifies each row in a table. If we declare a particular attribute as a primary key, then
the value of attribute cannot be null and it has to be distinct too.(Sumathi.s & Esakkirajan.s,
2007)

38
In the picture table „Customer‟, ID is primary key whose data type is int and it cannot be null.

The above command creates Id as primary key in customer table.

2. Foreign Key:
Foreign key is a set of fields or attributes in one relation that is used to refer to a
tuple in another relation. It is used to relate two tables.

Customer Table Order Table

In Customer table, Id is the primary key which is set as foreign key in Order table as CustomerId.
The value that is entered in Id which is set as foreign key in Order table must be present in
Customertable where it is set as primary key. This prevents invalid data to be inserted into
CustomerId column of Order table.(Sumathi.s & Esakkirajan.s, 2007)

39
The above command in Order table creates foreign key.

3. Unique Key:
Unique Key ensures that all values in a column are different.A unique constraint requires that
the values in one or more fields be unique. Note that it only makes senseto place a uniqueness
constraint on a superkey. Recall that a superkey is a group of one or more fieldsthat cannot
contain duplicate values. It wouldn‟t make sense to place a uniqueness constraint on fieldsthat
can validly contain duplicated values. For example, it would be silly to place a uniqueness
constrainton a Gender field.(Stephens, 2008)

Both the Unique and Primary key constraints provide a guarantee for uniqueness for a column or
set of columns. A primary key constraint automatically has a unique constraint but multiple of
unique keys can be defined in a table whereas only one primary key can be defined in a table.

As Primary key automatically has a unique constraint, following command makes [Id] as a
unique key.

4. Not Null:
It Ensures that a column cannot have a NULL value.This enforces a field to always
contain a value, which means that we cannot insert a new record, or update a record without
adding a value to this field.

40
Above is the command in order to create a Not Null value. In the above table „Order‟, Id,
OrderDate, OrderNumber, CustomerId, TotalAmount cannot contain null values which means
this fields must contain values in it.

Implementing a query language into the relational database system

Introduction
Queries are short statements to tell database management system to perform an operation such as
SELECT data from a certain table, INSERT some data into a table, UPDATE the records or data
of a table, DELETE the data from table and so on.(Chatham, 2012). It is the language to retrieve
the data from database. For our project we have used SQL (Structured Query Language) for
implementing a query language into the relational database system. SQL is a database query
language used for storing and managing data in Relational DBMS. SQL was the first commercial
language introduced for E.F Codd's Relational model of database. Today almost all
RDBMS(MySql, Oracle, Infomix, Sybase, MS Access) use SQL as the standard database query
language. SQL is used to perform all types of data operations in RDBMS.

Following are some of the query statements used in my project:

SELECT statement:
The SELECT query is used to retrieve data from one or more tables form the database.
By using SELECT query, we are able to control how much data is returned by the
database, by means of both how many rows and how many columns are returned.
SELECT query allows the retrieval of data in a read-only form, so whatever is done to
the data retrieved from the table, for example calculation of values or manipulation of
output, will not affect the underlying data stored in the database table.(Chatham, 2012)
Some of the examples of SELECT query from my project.

41
Here UserName is selected/extracted from „User‟ table where UserName is supplied
from the textbox named „txtusername‟ as string. This query is used in login form in my
project to login.
The final query is shown below:
“Select UserName from [User] Where UserName=‟Apaar‟”;

Here, Id and ProductName is selected from „Product‟ table. This query is used in
PlaceOrder form in my project to extract Product.

Here, Id, FirstName and LastNameis selected from „Customer‟ table where
FirstName and LastName is extracted as Name (single column). This query is used in
PlaceOrder form in our project to extract the names of customers.

Here, UnitPrice is selected from „Product‟ table where Id is supplied from the
combobox. The final query is shown below:
“Select UnitPriceFrom Product Where Id=1;
This query is used in PlaceOrder form in our project to extract the unit price of product.

Here, maximum Order Number is being extracted from „Order‟ table and 1 is added to
the extracted value. This query is used in Place Order form in my project to extract the
maximum number of Order Number.

Here, the whole data of „Product‟ table is displayed in the datagridview which is used in the
Product form in my project. Here, the data are displayed in the ascending order.

The above statement is used to display the data from „Customer‟ in the
datagridview which is used in Customer form in my project which displays data in the
ascending order.

42
The above statement is used to display the data from „Supplier‟ in the datagridview
which is used in Supplier form in our project which displays data in the ascending order.

The above statement checks whether the supplied username is admin or not. Admin will
have a full control or authority over an application.

INSERT statement:
The SQL INSERT statement is used to insert new records or data into the table. There are
two ways of inserting data or records into the table. They are:
1. INSERT INTO TABLE_NAME
(column1, column2, column3,....columnN)
VALUES
(value1, value2, value3,....valueN);
Here, column1, column2, column3,...columnN are the names of the columns in the table
into which you want to insert the data.

2. INSERT INTO TABLE_NAME


VALUES (value1,value2,value3,. valueN);
Some of the queries used in our project are:

Here, CompanyName, ContactName, ContactTitle, City, Country, Phone and Fax and
inserted using INSERT query. The inserted values will be saved in „Supplier‟ table. The
values are supplied through text box which is used in Supplier form

43
Here, the values of FirstName, LastName, City, Country and Phone are inserted using
INSERT query. The inserted values will be saved in „Customer‟ table. The values
are supplied through text box which is in Customer form.

Here, the values of ProductName, SupplierId, UnitPrice, Package, and IsDiscontinued are
inserted using INSERT query. The supplied values are inserted in „Product‟ table. The
values are supplied through textbox which is in Product form in our project.

DELETE statement:
The DELETE statement is used to delete existing records in a table. We can use the
WHERE clause with a DELETE query to delete the selected rows, otherwise all the
records would be deleted.
Syntax:
DELETE FROM table_name WHERE condition;
The DELETE query used in our project is given below:

Here, Using DELETE query one of the records of Customer table is deleted.
The final query will be “Delete From Customer Where Id=1;
Here, the record of customer whose id is 1 is deleted from the „Customer‟ table.

Here, Using DELETE query one of the records of Product table is deleted.
The final query will be “Delete From Product Where Id=1;
Here, the record of product whose id is 1 is deleted from the „Product‟ table.

Here, Using DELETE query one of the records of Supplier table is deleted.
The final query will be “Delete From Supplier Where Id=1;
Here, the record of Supplier whose id is 1 is deleted from the „Supplier‟ table.

44
UPDATE statement:
UPDATE statement is used to modify the data or records of the table. It can update one
or more records in a table. We can use WHERE clause with UPDATE statement to
update or modify the records within the table.
The UPDATE query used in my project is given below:

Here, the values of ProductName, SupplierId, UnitPrice, Package and IsDiscontinued are
updated using UPDATE query in my project. This is done in a „Product‟ form in my project and
also updates in „Product‟ table

Here, the values of FirstName, LastName, City, Country and Phone are updated using
UPDATE query in my project. This is done in a „Customer‟ form in my project and also updates
in „Customer‟ table

Here, the values of CompanyName, ContactName, ContactTitle, City, Country, Phone and Fax
are updated using UPDATE query in my project. This is done in a „Supplier‟ form in my project
and also updates in „Supplier‟ table.

SQL Clauses:
there are three sql clauses , they are group by clause, having
clause and order by clause.
Group by clause:

45
This statement is used to arrange the data into a group. This clause is used with the SQL select
statement.

46
Having clause:
This clause is used to postulate conditions on the aggregate function. This is used instead of
WHERE when aggregate functions are used.

Order by clause:
This clause determines how the data/record should be ordered. It shorts the result in ascending
order in default.

Syntax:

47
Joins:

Inner Join:
Inner join is used to select the data that are common in both the tables. It returns the
combination of the data which are common in both tables when the condition is met.

Left Outer Join:


The left outer join returns all the data from table A (left table) and any matching records
from table B (right table).

48
Right Outer Join:

This type of join returns all rows from the table B (right table) specified in the condition
and only those rows from the tableA (left table) where the join condition is satisfied.

Full Outer Join:


Full outer join is the combination of both left and right outer join.

49
Database Security:
Data is most important fact that organization try to protect. The data in database could be kept secure
using different model.Database security deals with the security assurance of the structure of the
database and its contents. One of the famous one is CIA model, according to this model data is
confidentiality, integrity and availability so that unauthorized person cannot use these data.

Windows Authentication:
Windows authentication is the default integrated security. When any user login or connects
using the windows account, SQL Server authenticates the username and password with
windows principles (users’ identity is confirmed by windows). In windows authentication
mode no password is required and identity validation is not performed. This type of
authentication is also known as trusted connection because SQL Server trusts the credentials
which is provide by windows.

SQL Server authentication:


The type of authentication in which username and password are created using SQL server and
stored in SQL Server and which is not based in windows user accounts is called SQL Server
authentication. While connecting through SQL Server authentication, we must provide our login
details (username and password) every time and must apply strong password for all the
accounts.

Password Policy:
The first line of defense to protect any important data, financial statements or personal
information is password. Password must be strong and standard to minimize the security issues
in any systems or applications. For a secure application or system, we have to follow some of

50
the password policies. Password policies are the set of rules which are used for better security
by creating reliable and strong password. Some of the basic policies that must be used for
better security are mentioned below:

-Minimum password length: Shorter password is easier to guess, therefore set the minimum
length of password for better security.

-Password Composition: Password must not only contain alphabets but the mixture of
alphanumeric and special characters.

-Password History: This ensures how often password can be reused. Users should not be using
same password again and again.

-Password Age Policy: Password must be changed after a certain period of time. Same
password must not be used forever.

In my application, different privileges are given to administrator and a user. Full access of an
application is given to administrator and user access or privileges are given to normal user.

For login:

51
Database Maintenance:

The methods or tasks we perform for the improvement of database is called database
maintenance. We have to have a database management strategy for visual performance and to
meet our database goals. Database maintenance strategy helps to ensure the data integrity,
consistency and ensures database security too. There are some of the key items for database
maintenance which are:

1.Log File Maintenance

2.Backup/Restore plan

3.Corruption detection.

1. Log File Maintenance:

Log file is the file which keeps record of every actions that are performed in database. The
database of SQL also contains log file which keeps record of every transaction done in a
database. Using database log file, we can actually restore the database to the state it was
before. So, logs play vital role when data are corrupted, harmed or spammed. Each time data
increases, log files also increase in database and Virtual Log File (VLF) is created and data are
stored in it. VLF starts harming the database if the size of VLF increases, so our maintenance
routine determines the maintenance of these virtual log files and also compact these large VLF
for smooth performance.

2.Backup/Restore Plan:
The process of replicating or copying the data from primary device to secondary device is
called taking a backup. If the primary database is corrupted or crashed, we need to have a
secondary copy of database to make sure important data has not lost.

Following is the SQL statement I have used to back up my database:

Successfully backup.

52
To restore the backup data, I have used following SQL statement:

Evaluation of effectiveness of the database solution in relation to user and


system requirements, and suggest improvements.

The application that I have designed to my client is effective in so many ways. It has four
different elements i.e. product, supplier, order and purchase. The application can store the data
of product, supplier and customer. It also generates the reports of sales according to different
conditions. It has different features and functions that help vendors to meet their requirements
easily. Following is the user feed form which helps to improve the further strategy of a
company and helps for profit maximization.

Feedback form:

Project Title: Food ordering System


Feed Back Given By: Date:
Signature:

Project Description: This is a simple and effective food ordering system build to allow create,
delete, update and create data as required

Checklists Yes Comment


No
Does client like this application? They love it.

53
Does it have all system requirements?
Is it user friendly?
Is this application fully secured? It is partly secured
Does this application can be used in big No bugs
supermarket?
It can be used in future
Can this system overcome the entire problem we
faced before?
Does this system need further enhancement? Yes it does need some.

FeedBack Evaluated By: RanjankumarMukhiyaDate: Signature:

Future Enhancements:
This system is buildby the learning student, so there are many errors that could be enhance in coming
future so that we can build more effectives management system. So I have listed some of the
enhancement that can make this system more effective.

1. Need more details of customer so that the data we need can be more reliable.
2. Customer details only search with name so it is not effective if the customer with same name
use this system.
3. To make it more effective we can add payment button for online payment.
4. There should be another table which tells about the damaged product.
5. If user forgets the password then they should be provided with new alternative way to connect
with the system.
6. This runs only on window so it is not that effective if the user use other operating system.

54
[Part 3]
1. Once the system has been developed, you will test the system and your manager will
complete a witness statement indicating how your tests are performing against user and
system requirements. 2. You will produce a brief report assessing the effectiveness of the
testing, including an explanation of the choice of test data used. 3. Lastly you will produce
technical and user documentation which will be given to the company. 4. You want to provide
some graphical representations for ease of reference in the technical guide, so you have
decided to produce a technical and user documentation for a fully functional system, including
diagrams showing movement of data through the system, and flowcharts describing how the
system works.

Testing the system against user and system requirement:


The activity of checking whether the expected output matches theactual output iscalled system
testing. It also helps to find bugs or errors and makes sure the products meet the requirements
of the clients. It is the detailed document that explains everything on the tests that are meant
to be made on the unit.Testing helps to enhance the quality of an application and also reduces
the cost, maximizes the Return of Investment (ROI) and saves the development. For Application
Testing, the lifecycle of testing includes different stages which include requirement analysis,
test planning, test analysis, test design, test execution & bug reporting, etc. There are different
methods of ensuring that the application is fully tested and contains no errors. Some of them
are:

1. Unit Testing
2. Integration Testing
3. Black Box Testing
4. White Box Testing

1. Unit Testing:

It is that kind of testing where each and every individual unit of the system is tested.It should
have no dependencies on code outside the unit tested. While writing code this types of testing
id done .The reasons to conduct unit testing is that it saves the cost by fixing the error. It helps

55
developer for quick change and help to understand the code easily.It reduce debugging time by
providing documentation. It also helps to re-use the code written at if necessary for new project.

3. Integration Testing:It is that kind of testing where different small units of a program are
combining together and then tested is known as integration testing.It can be carried out in two
ways Bottom-up method and Top-down method. Bottom-top method is started from lower part of
unit and move up where as top-down method is tested starting from the top and moves down to the
lower part.

3. Black Box Testing:


It is that kind of testing which involves looking at the specifications and does not need any kind of
programming skills. These types of testing are done by using the point of view of users.

1. Login Page:

S. No. Where Expected Output Outcome display


1. If the given password and Should display error Has sent error
username is wrong or invalid or message message
not sign up.
2. If the user doesn’t enter Should display error Has sent error
password. message message
3. If the user doesn’t enter user Should display error Has sent error
name. message message
4. If the admin and user selection is Should display error Has sent error
not done message message
5 If username and password is Parent MDI form Parent MDI form was
correctly entered should be displayed displayed

Let’s try it with invalid one :

We put wrong password and system display this message .

Now with valid one:

With correct password and username the login form takes us to this main form

56
White Box Testing:
This is that kind of testing that is also known as clear, glass, or open testing where we look external
functionality of code is tested by looking at the code of program. In project we look as follow:

Login Form:

Dashboard

57
Oder details

For customer details:

58
For suppliers:

59
Explanation of choice of data used:

The application was tested by one of the small supermarket owner named kamaldhakal . To test this
application we frequently provide both correct and not correct information to this application. By the
testing we find that login was given with wrong information as it work it doesn’t function. After
that we gave correct information then it works. In all form we tested the nature of the application and
found positive respond even though same error arises. To test my software I use different testing
method and the result was positive. All this kind of testing helps to make an application full of features.

Technical and user documentation


User Documentation:
User documentation is the text that tells what need to be done. This contains user guidance, reference,
rules and how the system works. It tells you about the functions the system have .Not only that it helps
you to operate the system without the help of technical person. There are numbers of solutions to the
problem that users faced frequently while using the application.

Technical Documentation:
Technical document are that kind of document that includes the functionality, creation, handling and
etc. This documentation is provided to administrator and users if authority is given. For the
understanding of technical documentation you should have knowledge of technical field.

System/Application Description:

This is a simple and effective food ordering system suitable for small supermarket. Here, we
can create users, admin as per required. This system is very helpful to for business point of view
and keeps the record of necessary information. This system is secure, easy to use and effective.

Important features of application of this application and limitations


S.n Important Limitation
1. User-friendly and simple Cannot store big files.

60
2. Good for small scale organization Need enhancement for better performance.
3. Keeps the record of all the data. Has no backup system.
4. Costumer can view the total amount at the No online payment system features.
end.
5. Can be login with both users and admin Cannot be operate in web application.

User Documentation of my system (IMS):

First you need to purchase the installation files, when you purchase it double click it and the
application will download itself. When an installation is done it will talk you to following
page:

Login Page: Here, you have to add valid username and password and user type and click it on
login.

Parent Form: After you give the correct information to the login page it will take you to this
parent form where you can perform numbers of activities.

Interfaces:

61
Here, in this page, you first have to fill you name address and contact number. You also gave
the features of searching. You can see down there are 4 bottom which are use for saving,
updating, deleting and reseting the information provided.

Here, in this page, you can search the details of the customer using their name.

62
Here, costumer replace the order there are different field like if you order number of product
by writing its name, you can also see the total amount of your all product and this new bottom
change the costumer and reset is use to reset the order.

63
Here, in this page, you can look the entire product, to do so you have to fill all the necessary
information that the system needs and here too you can save the data, update the data, delete
it and importantly reset it.

Here, in this table, you can see the whole information about the supplier. To use this page you
have to fill all the necessary information and you have the features of searching the name and
company. Here, too, you have the feature of saving, updating, deleting and resetting.

64
65
Basic Layout of my application

Data Flow Diagram:

If the flow of data of an application/system are visually represented, then it is called Data Flow
Diagram or simply DFD. DFD is used to describe the transfer of data (input to output) and used
to generate the reports. Different standard symbols and notations are used to represent the
data flow of an application.

Context DFD (Zero Level DFD)

Context DFD is a 0 level DFD that only shows the top-level data flow of an application. It is used
to show the boundaries of an application and to understand the context DFD no technical
knowledge is required. The diagram below shows the context data flow diagram of an
application that I have built. There are five entities in my DFD (Customer, Product, Supplier,
Order and Order Item) which interacts with the application. There are also connectors to show
the information exchange between entities and application.

66
Fig: Context Data Flow Diagram

67
Fig: Flowchart of Login Management

Level 1 Data Flow Diagram:

The flowing diagram is the level 1 DFD which is the break down of a context DFD.

68
Index:

Shapes Meaning
Entity

Data Store

Connectors
Processes

In the above Data Flow Diagram (DFD), there are six entities, three processes and two data
stores. By observing the DFD, we know that Customer places Order. Here, Order entity contains

69
Order Item. Also, Supplier supplies Product and user generates reports with the generate
report process. In the above DFD, different relations are shown with the help of different
connectors.

Sequence Diagram:

UML Diagram:

It helps in understanding a compact/complex system and shows the inter relation


between the different elements of a system. UML diagrams are categorized based on two
factors: Behavioral and Structural UML Diagram. There are various types of UML diagram and
among them I’ve chosen Use Case Diagram and Sequential Diagram.

70
Fig:Use case UML diagram

Using the diagram above, we can see the authentications that are given to admin and user. Admin have
privilage to create user but user do not have access to create user feature.

71
72
73
74
75
Future improvements that may be required to ensure the continued effectiveness of
the database system.

Everything has its pros and cons. The limitations need to be improved for more effective
application. Further improvement can be policy or process within a workplace which helps to
keep focusing on the improving the way things are done on a daily basis. Further improvement
can maintain advantages to a company and can maximize profits as well.

The application that I have made is an food ordering System which has four basic elements i.e.
Products, Supplier, Customer and Oder. It is an application where the vendor store data on the

76
products that has been bought from any of its suppliers and data of customers located in
different countries that can make orders on these products. It can keep the records of
customers who have ordered products and also can update and delete their information as per
requirement. Vendor can also view different report of sales as per requirements. The IMS that I
have designed is user-friendly.

Though it has basic features which should be considered in food ordering system, it consists of
the limitations and drawbacks which can be improved later for the enhancement of an
application.

The application that I have designed can be more user-friendly which helps to determine
the reaction of users towards the application. The design of user interface and color selection is
not quite professional which might be boring. Improvement of application loading time can be
also be done by resizing or removing large size images that takes longer time to load to give
result as we know faster application fulfills the experience of users. My application is a
windows-based desktop application which could be further upgraded into web-based
application which could solve the problems of vendor. We can also use Oracle for data
management because data recovery is easier compared to MySQL. Also, it can handle large
amount of data and allows to change platform any time. My application does not have backup
option which could be improved later as we know how vital data are today. Once product has
been ordered through my application it cannot be cancelled which might not be quite
preferable to vendors. We can add order cancellation feature in it. It doesn’t contain
feature to view the amount of stocks remaining of the products which can be further
improved. In my application, every right is given to admin so, if user forgets his/her login
password, they should contact admin to renew the password. We can give rights to user to
change their accounts passwords which can be more flexible.

Therefore, further improvement helps in user-experience (UX) and focuses on profit


maximization. Further improvement can be effective to the database solution in relation to user
and system requirements

77
Bibliography
Basta, A., Zgola, M., Bullaboy, D. & Whitlock L, T., 2011. Database Security. Boston: Course Technology.

Chatham, M., 2012. Structured Query Language. 1st ed. s.l.:Mark Chatham.

Connolly, T. & Begg, C., 2014. Database Systems. 4th ed. New Delhi: Pearson Education.

Desikan, S. & Ramesh, G., 2008. Software testing principles and practices. 6th ed. New Delhi: Dorling
Kindersley.

Basta, A., Zgola, M., Bullaboy, D. & Whitlock L, T., 2011. Database Security. Boston: Course Technology.

Chatham, M., 2012. Structured Query Language. 1st ed. s.l.:Mark Chatham.

Connolly, T. & Begg, C., 2014. Database Systems. 4th ed. New Delhi: Pearson Education.

Desikan, S. & Ramesh, G., 2008. Software testing principles and practices. 6th ed. New Delhi: Dorling
Kindersley.

Basta, A., Zgola, M., Bullaboy, D. & Whitlock L, T., 2011. Database Security. Boston: Course Technology.

Chatham, M., 2012. Structured Query Language. 1st ed. s.l.:Mark Chatham.

Connolly, T. & Begg, C., 2014. Database Systems. 4th ed. New Delhi: Pearson Education.

Desikan, S. & Ramesh, G., 2008. Software testing principles and practices. 6th ed. New Delhi: Dorling
Kindersley.

Basta, A., Zgola, M., Bullaboy, D. & Whitlock L, T., 2011. Database Security. Boston: Course Technology.

Chatham, M., 2012. Structured Query Language. 1st ed. s.l.:Mark Chatham.

Connolly, T. & Begg, C., 2014. Database Systems. 4th ed. New Delhi: Pearson Education.

Desikan, S. & Ramesh, G., 2008. Software testing principles and practices. 6th ed. New Delhi: Dorling
Kindersley.

78
Basta, A., Zgola, M., Bullaboy, D. & Whitlock L, T., 2011. Database Security. Boston: Course Technology.

Chatham, M., 2012. Structured Query Language. 1st ed. s.l.:Mark Chatham.

Connolly, T. & Begg, C., 2014. Database Systems. 4th ed. New Delhi: Pearson Education.

Desikan, S. & Ramesh, G., 2008. Software testing principles and practices. 6th ed. New Delhi: Dorling
Kindersley.

79
Gopi, A. & Ayyavaraiah, M., 2017. Database Management System. s.l.:horizon books.

Gour, B., Shrivasthav, M. & Richhariya, v., 2018. Database Management systems and normalization
concepts. New Delhi: educreation publishing.

Ritchie, C., 2002. Relational database principle. 2nd ed. London: Thomson Learning.

Singh, A., 2018. Database at a glance. 1st ed. India: ajit singh.

Stephens, R., 2008. Begining database design solution. s.l.:wrox.

Sumathi.s & Esakkirajan.s, 2007. Fundamentals of Relational Database Management System. New York:
Springer.

80
81

You might also like