Cafeteria: History
Cafeteria: History
1.INTRODUCTION
1.1 Introduction to Mobile Application Development
Mobile application development is the process of creating software applications that run
on a mobile device, and a typical mobile application utilizes a network connection to
work with remote computing resources. Like web application development, mobile
application development has its roots in more traditional software development.
1.1.1 History:
• The first mobile phones were invented whose microchips required the most basic
software to send and receive voice calls.
• On 3rd of April 1973, Martin Cooper of Motorola made the first call on the
mobile phone to Dr. Joel S. Engel of the Bell Labs.
• The R&D department of IBM Simon came up with the first mobile app for
Smartphones in 1993 exactly two decades after the first call was made.
• EPOC, first operating system developed by Psion, released in the early 90s, this
was first of the recognizable apps.
• Palm OS, developed by Palm Inc. in the year 1996, these were mainly designed
for personal digital assistants and were known as Garnet OS.
• The wireless markup language was specifically designed for devices that were
dependent on XML and could be run across wireless application protocols.
• Java ME or J2ME or JME – it was first introduced as JSR 68. It was given
various shapes and forms for use via Phones, embedded devices, and even PDAs.
• Symbian, developed by Symbian Ltd, which was a joint venture from Ericsson,
Motorola, Nokia and PSION, this was a further developed version of PSION
EPOC.
• Later on, the smartphones and iPhones that we use today evolved, making lives a
lot easier for people.
1.1.2 Advantages:
• Improves Efficiency.
• Offers High Scalability.
• Secures the App Data.
• Integrates With Existing Software.
• Easy to Maintain.
• Improves Customer Relationship.
• Facilitates New Client Data Retrieval.
• Provides Real-time Project Access.
• Ease in Project Management.
Android SDK performs all the tasks needed to develop apps for all versions of Android.
This program is a necessary tool for any developer who wants to make smoothly running
applications for the latest systems. It uses Java for development and relies on the
Integrated Development
The Android Emulator simulates Android devices on your computer so that you
can test your application on a variety of devices and Android API levels without
needing to have each physical device. The emulator provides almost all of the
capabilities of a real Android device. Simulation of incoming phone calls and text
messages, specify the location of the device, simulate different network speeds,
simulate rotation and other hardware sensors, access the Google Play Store, and
much more are possible.
1.3 JAVA
Java is an object-oriented programming language created by James Gosling, Mike
Sheridan, and Patrick Naughton in 1991. It is a high-level, class-based language
that is designed to have a few implementation dependencies as possible. It is a
general-purpose programming language intended to let android developers run the
compiled Java code on all platforms that support Java without any need for
recompilation. Features of Java include,
• Simple: Java is designed to be easy to learn.
• Secure: With Java’s secure feature it enables to develop virus-free, tamper-free
systems. Authentication techniques are based on public-key encryption.
1.4 XML
Extensible Markup Language (XML) is a markup language that defines a set of
rules for encoding documents in a format that is both human-readable and
machine-readable. The design goals of XML focus on simplicity, generality, and
usability across the Internet. It is a textual data format with strong support via
Unicode for different human languages. Features of XML include,
• XML focuses on data rather than how it looks.
This report is for our mini project newsMag using Mobile Application
Development concepts. Our report consists of five chapters where in first chapter
we are giving introduction to mobile application development with its history. In
second chapter we have given brief description of our problem definition and
literature survey made. Similarly in third chapter we have a brief document on the
requirement specifications of hardware and software required along with purpose
and scope of our project. The fourth and fifth module gives us the design and
implementation knowledge. To conclude we have added our conclusions and
further enhancement. We have also mentioned the references to our project. Last
but not the least we have the screen shots of our output showing execution of our
program in appendix.
2.LITRETURE SURVEY
2.1. INTRODUCTION:
In today’s age of fast canteen automation in the canteen, many canteens have
chosen to focus on quick preparation and speedy delivery of orders. Until very
recently, all of this delivery of orders were placed over the phone, but there are
many disadvantages to this system, including the inconvenience of the customer
needing to have a physical copy of the menu, lack of a visual confirmation that the
order was placed correctly, and the necessity for the canteen to have an
employee answering the phone and taking orders.
This system also greatly lightens the load on the canteen’s end, as the
entire process of taking orders is automated. Once an order is placed on the web
page, it is entered into the database and then retrieved, in pretty much real-time,
by a web-based application on the canteen’s end. Within this application, all items
in the order are displayed, along with their corresponding options and delivery
details, in a concise and easy to read manner. This allows canteen employees to
quickly go through the orders as they are placed and produce the necessary items
with minimal delay and confusion.
2.2. OBJECTIVE :
Canteen Automation System is the system where customers order their food and
receive food in the canteen or at their doorstep. This system aims to accelerate
customer orders and customer order system used by employees to accept
customer order.
• The system requires very fewer time factors as compared to manual system.
• The system will provide fast and efficient automated environment instead of
slow and error prone manual system, thus reducing both time and manpower
spent in running the system.
• The system will have GUI interface and very less user training is required to
learn it.
2.3. AIM :
A complete canteen automation system makes canteen workers monitor
overall day to day business analytics more accurately with an ease. It increases
the presence of canteen fascinates core customers towards your food business
leading to increased sales.
By bringing all necessities in one place canteen automation system benefits both
the user as well as the canteen owner smartly. Ultimately all business operation
will be mad easier and single handed with the required inbuilt features.
As soon as order gets placed, you will be notified immediately, so that you
can start order processing. One of the main advantages of canteen automation
system is the order details are accurate when compared to the phone ordering
system or manual system.
This canteen automation system is useful for the canteen as well customer
because canteen automation system save the time of the canteen's workers as
well of the customers and as saves the manpower.
• Registration
• Order
• Payment
• Update
3.1 REQUIREMENTS:
• Functional Requirements:
Users of the canteen automation system, namely canteen customers, must be
provided the following functionality:
• Create an account.
• Place an order.
3.2. DIAGRAMS:
A use case is a description of how end-users will use a software code. It describes a
task or a series of tasks that users will accomplish using the software and includes
the responses of the software to user actions.
4.DESIGN
4.1. DESIGN TECHNIQUES:
The design of the app has been done using the following technologies:-
• JAVA
• XML
• ANDROID STUDIO
• FIREBASE DATABASE
4.1.1 JAVA: Java is a known language; developers know it and don't have to learn
it. It's harder to shoot yourself with Java than with C/C++ code since it has no
pointer arithmetic. It runs in a VM, so no need to recompile it for every phone out
there and easy to secure. Large number of development tools for Java (see point
1).Several mobile phones already used Java ME, so Java was known in the
industry. The speed difference is not an issue for most applications; if it was you
should code in low-level language.
4.1.2 XML: You can see that in android app development we store information
about activity size, layout, etc information in xml file. Here security about this
information is not our main concern. We can store password in xml but it is not
logical to store secure information in xml. Because xml is almost public database.
In many cases the information about the products are kept in xml. For example in
a medicine company they maintain a record about all medicine in a xml file. So
when a hospital or medical store needs to add those medicines’s information to
their website or application then they can use the xml file provided by the
medicine company instead creating new database.
We are using RAD model for developing this application. The striking feature of
the incremental model is that each module can be completed and released as and
when the requirement arises because of lack of time.
The user can thus get a feel of these modules and give his feedback which can be
utilized for making the software more user-friendly and in line with the user
requirements.
Not only that the deadline set for this project is 6 months and we need a high
Adaptation model and again will be concentrating on parallelism because our
team will be working on the different module at the same time. Moreover, we will
be using latest tools such as Visio, Project Manager as a result of which we can
work much faster. So looking into all these requirements we find Incremental RAD
model is best suited for our system because it enables the development team to
create a fully functional system within a very short period of time.
• No parallelism of work.
• Time consuming.
These models are best suited where requirements are fuzzy. These models are
best suited for the systems where requirements keep on changing. But for our
system requirements are crystal clear so it is not feasible to adopt any of the
evolutionary models.
The final product will be an application using which you can order your food from
canteen menu.
Fig. Menu
Fig. Invoice
With this project we are trying to reduce the distance between your room
and canteen. Here all the order details like the order types are stored daily
which reduces manual work. Use of Real-time database makes it one of a
kind as all the data will be saved in the database and administrator can
view all the data on time.
Add different payment options such as Paytm, PayPal, UPI etc.
Enhance user interface by adding more user interactive features. Allow to
process order as a guest.
REFERENCES: