Dbms Report Cake Managment
Dbms Report Cake Managment
DARSHAN K HARSHITHA S
USN: 1VK21CS014 USN: 1VK21CS028
Submitted in the partial fulfilment of the requirements for the fifth Semester Database Management Lab
(21CSL55)
BACHELOR OF ENGINEERING
IN
COMPUTER SCIENCE AND ENGINEERING
Prof. Soniya L
Asst Professor department of CSE VKIT,
Bengaluru
External Viva-Voce
Name of the Examiners Signature with date
1.
2.
ACKNOWLEDGEMENT
It gives us immense pleasure to write an acknowledgement to this mini project, a contribution of all
people who helped me realize it. We are very thankful to our Principal, Dr. K M Ravi Kumar, VKIT,
Bengaluru, for being kind enough to provide us an opportunity to work on a project in this institution.
We would like to convey our heartfelt thanks to our beloved HOD, Dr. Vidya A, Department of
Computer Science and Engineering, VKIT, Bengaluru for giving us the opportunity to embark up to
this topic. We would like to sincerely thank our project guide Prof. Soniya L Asst. Professor, Dept.
of Computer Science and Engineering for their valuable guidance, constant assistance, support and
constructive suggestions for the betterment of the project, without which this project would have not
been possible.
Finally, it is a pleasure and happiness to the friendly co-operation showed by all the staffs of Computer
Science and Engineering Department, VKIT
Darshan K (1VK21CS014)
Harshitha S (1VK21CS028)
i
ABSTRACT
An “CAKE ORDERING MANAGEMENT” that allows users to check for various Types of Cakes
available at the online store and purchase online. The project consists of list of Cakes and Cookies
displayed. The user may browse through these items as per categories. If the user likes a product, he may
add it to his shopping cart. Now he may pay through a credit card or Cash on Delivery. Once the user
makes a successful transaction, he gets a transaction id and he can check his or her orders in My order
page. Here we use CSS and JS framework to make the entire frontend. The middle tier or code behind
model is designed in HTML. And SQL serves as a backend to store Cake lists data, Thus the online Cake
shopping project brings an entire Cake shop online and makes it easy for both buyer and seller.
ii
TABLE OF CONTENTS
Acknowledgement i
Abstract ii
Table of contents iii
List of Snapshots iv
List of Tables v
List of Figures vi
List Of Abbreviation vii
1.Introduction 1
1.1 Project Overview 1
1.2 Project Objectives 1
1.3 Existing System 2
1.4 Proposed System 3
1.5 Advantages 3
3.System Design 8
3.1 Input design 8
3.2 Er diagram of flower bouquet system 8
iii
3.3 Schema diagram of flower bouquet system 9
4.Database Technique 10
3.4 Database Management System 10
3.5 Trigger 11
3.7 Normalization 12
3.7.1 First normal form 12
3.8 Testing 14
3.8.1 Unit testing 14
6.CONCLUSION 20
7.BIBLIOGRAPHY 21
iii
LIST OF SNAPSHOTS
iv
LIST OF FIGURES
v
LIST OF TABLES
vi
LIST OF ABBREVATIONS
3. JS : Java Script
vii
Chapter 1
INTRODUCTION
A Database Management System (DBMS) refers to the technology for creating and managing databases.
Basically, DBMS is a software tool to organize (create, retrieve, update and manage) data in a database.
The main aim of a DBMS is to supply a way to store up and retrieve database information that is both convenient
and efficient. By data, we mean known facts that can be recorded and that have embedded meaning. Normally
people use software such as DBASE IV or V, Microsoft ACCESS, or EXCEL to store data in the form of
database. Database system is meant to handle large collection of information. Management of data involves
both defining structures for information and providing mechanisms that can do the manipulation of those stored
information. Moreover, the database system must ensure the safety of the information stored, despite system
crashes or attempts at unauthorized access.
Item Module:
The item module is helps to manage overall item details. Here we can insert the new item, delete the existing
item, modify the item, and view.
Company Module:
The item module is helps to manage overall company details. Like company name, company address, contact.
Sales module:
The sales module is used to manage sales items. Sales date, sales item, customer name and so on. This module
is also used to collect information about sales that in the electronic products purchased by the customer. This
input saved in the database. It’s called sales module.
Purchase module:
This is used to manage purchase detail information like name of the item and company name, supplier id,
product cost, date and so an.
Complaint module:
This module is used to store the complaint details. Here this system can store complaint description, complaint
name, product id and so an. This module is also helps to resolve the complaints or problems.
The existing system maintained the data manually. The data maintenance adopted by the system is not
systematic. The personal details about the customers, the transactions made with the customer in various places,
Bill of material details, Receipt details, Stock, Packing, each of these are maintained manually in a separate
register. Maintaining data becomes difficult, when the details are maintained in the form of hard copy.
Disadvantages:
• Highly Expensive.
This software is capable of recording details of sales and purchase order. Similarly keeps track of expenses and
income of the company. This billing accounting software can be used to generate various reports including
Item, Ledger, Sales order, Purchase order and Expenses ledger and more. This software is totally self-contained
and works relatively as efficient as other packages related to the subject. It provides simple database rather than
complex ones for high requirements and it provides good and easy graphical user interface to both new as well
as experienced user of the computer.
1.5 ADVANTAGES
• Security is assured.
After analyzing all the existing or required functionalities of the system, the next task is to do the feasibility
study for the project. All projects are feasible – given unlimited resources and infinite time. Feasibility study
includes consideration of all the possible ways to provide a solution to the given problem. The proposed solution
should satisfy all the user requirements and should be flexible enough so that future changes can be easily done
based on the future upcoming requirements.
This is a very important aspect to be considered while developing a project. We decided the technology based
on minimum possible cost factor.
• All hardware and software cost has to be borne by the organization.
• Overall, we have estimated that the benefits the organization is going to receive from the
proposed system will surely overcome the initial costs and the later on running cost for system.
This included the study of function, performance and constraints that may affect the ability to achieve an
acceptable system. For this feasibility study, we studied complete functionality to be provided in the system, as
described in the System Requirement Specification (SRS), and checked if everything was possible using
different type of frontend and backend platform.
No doubt the proposed system is fully GUI based that is very user friendly and all inputs to be taken all self-
explanatory even to a layman. Besides, a proper training has been conducted to concerned the clients are
comfortable and happy as the system has cut down their loads and doing.
The Software Requirements Specification is produced at the culmination of the analysis task. The function and
performance allocated to software as part of system engineering are refined by establishing a complete
information description, a detailed functional and behavioral description, an indication of performance.
• MYSQL
MYSQL is language used to manipulate relational databases. It is tied closely with relational model. It is issued
for the purpose of data definition and data manipulation. Program runs as server providing multi-user access to
number of databases. MySQL is a multithreaded, multi-user SQL database management system (DBMS). It
includes facilities to add, modify or delete data from the database, ask questions (or queries)
about the data stored in database and produce reports summarizing selected contents.
• PHP
Hypertext Preprocessor (or simply PHP) is a server-side scripting language designed for Web development,
but also used as a general-purpose programming language. It was originally created by Rasmus Lerdorf in 1994,]
the PHP reference implementation is now produced by The PHP Group. PHP originally stood for Personal
Home Page,] but it now stands for the Recursive acronym PHP: Hypertext Preprocessor PHP code may be
embedded into HTML code, or it can be used in combination with various web template systems, web content
management systems, and web frameworks. PHP code is usually processed by a PHP interpreter implemented
as a module in the web server or as a Common Gateway Interface (CGI) executable. The web server combines
the results of the interpreted and executed PHP code, which may be any type of data, including images, with
the generated web page. PHP code may also be executed with a command-line interface (CLI) and can be used
to implement standalone graphical applications.
• Xampp
XAMPP is a free and open-source cross-platform web server solution stack package developed by Apache
Friends, consisting mainly of the Apache HTTP Server, MariaDB database, and interpreters for scripts written
in the PHP and programming languages. XAMPP stands for Cross-Platform (X), Apache (A), MariaDB (M),
PHP (P) and Perl (P). It is a simple, lightweight Apache distribution that makes it extremely easy for developers
to create a local web server for testing and deployment purposes. Everything needed to set up a web server –
server application (Apache), database (MariaDB), and scripting language (PHP) – is included in an extractable
file. XAMPP is also cross-platform, which means it works equally well on.
• HTML
Hypertext Markup Language (HTML) is the standard markup language for creating web pages and web
applications. With Cascading Style Sheets (CSS) and JavaScript, it forms a triad of cornerstone technologies
for the Web browsers receive HTML documents from a server or from local storage and render the documents
into multimedia web pages. HTML describes the structure of a web page semantically and originally included
cues for the appearance of the document.HTML elements are the building blocks of HTML pages. With HTML
constructs, images and other objects such as interactive forms may be embedded into the rendered page.
System Design
In this phase initially ER Diagram has been designed in order to identify various entities and relationship set,
entity set, attributes.
After this step database for the new system has been designed and normalized it.
The login page has username and password for user login.
• Admin: The admin can do various functions like add Cake, delete Cake, update Cake details, keep
track of the bookings, can search various Cakes and its details, etc.
3.2 ER DIAGRAM
An entity–relationship model (ER model) describes inter-related things of interest in a specific domain of
knowledge. An ER model is composed of entity types (which classify the things of interest) and specifies
relationships that can exist between instances of those entity types. In software engineering an ER model is
commonly formed to represent things that a business needs to remember in order to perform business processes.
Consequently, the ER model becomes an abstract data model that defines a data or information structure that
can be implemented in a database, typically a relational database.
An entity–relationship model is usually the result of systematic analysis to define and describe what is important
to processes in an area of a business. An E-R model does not define the business processes; it only presents a
business data schema in graphical form. It is usually drawn in a graphical form as boxes (entities) that are
connected by lines (relationships) which express the associations and dependencies between entities. An ER
model can also be expressed in a verbal form, for example: one building may be divided into zero or more
apartments, but one apartment can only be located in one building. Entities may be characterized not only by
relationships, but also by additional properties (attributes), which include identifiers called "primary keys".
Diagrams created to represent attributes as well as entities and relationships may be called entity attribute-
relationship diagrams, rather than entity-relationship models. An ER model is typically implemented as a
database. In a simple relational database implementation, each row of a table represents one instance of an
entity. There is a tradition for ER/data models to be built at two or three levels of abstraction. Note that the
conceptual-logical-physical hierarchy below is used in other kinds of specification, and is different from the
three-schema approach to software engineering.
When designing a database schema, the choice of names for entity types, attributes, relationship types, and
(particularly) roles is not always straightforward. One should choose names that convey, as much as possible,
the meanings attached to the different constructs in the schema. We choose to use singular names for entity
types, rather than plural ones, because the entity type name applies to each individual entity belonging to that
entity type. In our ER diagrams, we will use the convention that entity type and relationship type names are in
uppercase letters, attribute names have their initial letter capitalized, and role names are in lowercase letters.
3.3 SCHEMA:
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. The term "schema" refers to the organization of data as a blueprint of how the database is
constructed (divided into database tables in the case of relational databases). The formal definition of a database
schema is a set of formulas (sentences) called integrity constraints imposed on a database. A relational schema
shows references among fields in the database. When a primary key is referenced table in the database, it is called
a foreign key. This is denoted by an arrow with the head pointing at the referenced key attribute.
DATABASE TECHNIQUES
• The CREATE TABLE command is used to specify a new relation by giving it a name and specifying
its attributes and initial constraints.
• The attributes are specified first, and each attribute is given a name, a data type to specify its domain of
values, and any attribute constraints, such as NOTNULL.
• The key, entity integrity, and referential integrity constraints can be specified within the CREATE
TABLE statement after the attributes are declared, or they can be added later using the ALTER TABLE
command.
• The schema name can be explicitly attached to the relation’s name, separated by a period.
• Syntax: create table <table name> (<attribute1><type1>, <attribute2><type2>);
• INSERT is used to add a single tuple to a relation. The relation’s name and a list of values are specified
for the tuple.
• The values should be listed in the same order in which the corresponding attributes were specified in
the CREATE TABLE command.
• A second form of the INSERT statement allows the user to specify explicit attribute names that
correspond to the values provided in the INSERT Command. This is useful if a relation has many
attributes but only a few these attributes are assigned values in the new tuple.
• Syntax: 1. insert into <table name> values(‘value1’,’value2’);
• The UPDATE command is used to modify attribute values of one or more selected tuples.
• A WHERE clause in the UPDATE command selects the tuples to be modified from a single relation.
• A SET clause in the UPDATE command specifies the attributes to be modified and their new values.
• Syntax: update <table name> set <attribute>=<new value> where<attribute>=<value>;
• A missing WHERE clause indicates no condition on tuple selection. All tuples of the relation specified in
the FROM clause qualify and are selected for the query result.
• If more than one relation is specified in the FROM clause and there is no WHERE clause, then the CROSS
PRODUCT-all possible tuple combinations-of these relations is selected.
• To retrieve all the attribute values of the selected tuples, an asterisk (*) can be specified, which stands
for all the attributes.
4.2 TRIGGER
Another important statement in SQL is CREATE TRIGGER. Trigger has three components:
i. The event(s): These are usually database update operations that are explicitly applied to the database. In this
example the events are: inserting a new employee record, changing an employee’s salary, or changing an
employee’s supervisor.
ii. The condition that determines whether the rule action should be executed: Once the triggering event has
occurred, an optional condition may be evaluated. If no condition is specified, the action will be executed once
the event occurs
iii. The action: The action is usually a sequence of SQL statements, but it could also be a database
transaction or an external program that will be automatically executed.
• A stored procedure is a program that is executed through a single SQL statement that can be locally
executed and completed within the process space of the database server.
• The results can be packaged into one big result and returned to the application, or the application logic can
be performed directly at the server, without having to transmit the results to the client.
• Stored procedures are also beneficial for software engineering because once a stored procedure is registered
with the database server, different users can re-use the stored procedure, eliminating duplication of efforts
in writing SQL queries or application logic, and making code maintenance easy.
4.4 NORMALIZATION
Database normalization, or simply normalization, is the process of organizing the columns (attributes) and
tables (relations) of a relational database to reduce data redundancy and improve data integrity. Normalization
is also the process of simplifying the design of a database so that it achieves the optimal structure composed of
atomic elements.
Normalization involves arranging attributes in relations based on dependencies between attributes, ensuring
that the dependencies are properly enforced by database integrity constraints Normalization is accomplished by
applying some formal rules either by a process of synthesis or decomposition. Synthesis creates a normalized
database design based on a known set of dependencies. Decomposition takes an existing (insufficiently
normalized) database design and improves it based on the known set of dependencies.
First normal form is an essential property of a relation in a relational database. Database normalization is the
process of representing a database in terms of relations in standard normal forms, where first normal is a
minimal requirement.
A relation that is in first normal form (1NF) must meet additional criteria if it is to qualify for second normal
form. Specifically: a relation is in 2NF if it is in 1NF and no non-prime attribute is dependent on any proper
subset of any candidate key of the relation. A non-prime attribute of a relation is an attribute that is not a part
of any candidate key of the relation.
Third normal form is a normal form that is used in normalizing a database design to reduce the duplication
of data and ensure referential integrity by ensuring that (1) the entity is in second normal form, and (2) all
the attributes in a table are determined only by the candidate keys of that relation and not by any non-prime
attributes. 3NF was designed to improve database processing while minimizing storage costs. 3NF data
modelling was ideal for online transaction processing (OLTP) applications with heavy order entry type of needs.
Fourth normal form (4NF) is a normal form used in database normalization. Introduced by Ronald Fagin in
1977, 4NF is the next level of normalization after Boyce–Codd normal form (BCNF). Whereas the second,
third, and Boyce–Codd normal forms are concerned with functional dependencies, 4NF is concerned with a
more general type of dependency known as a multi valued dependency. A table is in 4NF if and only if, for
every one of its non-trivial multi valued dependencies X, Y, X is a super-key—that is, X is either a candidate
key or a superset.
A database is said to be in 5th Normal Form, if and only if, it is in 4th Normal Form and if we decompose
the table further to eliminate redundancy and anomaly and when we re-join the decomposed tables by means of
candidate keys we should not be losing the original data or any new record set should not arise. In simple words
joining two or more decomposed tables should not lose records or create new records.
4.5 TESTING
The purpose of testing is to discover errors. Testing is the process of trying to discover every convincible fault
or weakness in a work product. It provides a way to check the functionality of components, sub- assemblies,
assemblies, and/or finished product. It is the process of exercising software with the intent of ensuring that the
software system meets its requirements and user expectations and does not fail in an unacceptable manner.
LEVELS OF TESTING:
Unit testing is a method by which individual units of source code, sets of one or more computer program
modules together with associated control data, usage procedures and operating procedures. For unit testing first
we adopted the code testing strategy, which examined the logic of program. During the development process
itself all the syntax errors get rooted out. For this developed test case that result in executing every instruction
in the program.
User acceptance testing of the system is the key factor for the success of the system. A system under
consideration is tested for user acceptance by constantly keeping in touch with the prospective system at the
time of development and making change whenever required. This is done with regard to the input screen design
and output screen design.
GUI testing is use to ensure the visual clarity of the system, flexibility of the system, user friendliness of the
system. The various components which are to be tested are:
• Relative layout
• Various Link and Buttons
At the culmination of black box testing, software is completely assembled is a package. Interfacing errors have
uncovered and the correct and final states of tests i.e. validation is defined with a simple definition that
validation succeeds when the software function in a manner that can be reasonably accepted by the customer.
After performing validation testing, the next step is output testing of the proposed system. Since the system
cannot be useful if it does not procedure the required output. Asking the user about the user about this required
format in which the system is required tests the output displayed or generated by the system under consideration.
Description: Login page allows the user to login with their respective credential.
Description: Registration page allows the user to register by filling the details.
Description: This page shows all the Cake items available in the website.
Description: Here the items in the cake list page can be added to the cart as per users wish.
Description: This page shows the grand total and asks the user to select the mode of payment.
CONCLUSION
This application” CAKE ORDERING MANAGEMENT SYSTEM” avoids the manual work and the problems
concern with it. It is an easy way to obtain the information regarding the various cake products information that
is present in the markets. This system is an improved application better than the existing one’s regarding the
information about the various activities. Still, we found out that the project can be done in a better way.
Primarily, when we request information about particular details it shows all the relevant information. This
project is a computerized solution for storing the details of all related information in an organization and also
task assigned to an employee by an organization. Here, we can conclude that the application been developed is
to reduce manpower and various complexities.