0% found this document useful (0 votes)
58 views

Cafeteria: History

The document provides an introduction to mobile application development. It discusses the history of mobile phones and apps. It describes advantages like improved efficiency and ease of maintenance. It also covers Android Studio, its SDK and emulator. Java programming language features like being portable, robust and distributed are explained. XML is discussed as a markup language that focuses on data sharing and platform transition. The structure of the report is outlined covering chapters on introduction, problem definition, requirements, design, implementation, conclusions and references.

Uploaded by

greeshma
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views

Cafeteria: History

The document provides an introduction to mobile application development. It discusses the history of mobile phones and apps. It describes advantages like improved efficiency and ease of maintenance. It also covers Android Studio, its SDK and emulator. Java programming language features like being portable, robust and distributed are explained. XML is discussed as a markup language that focuses on data sharing and platform transition. The structure of the report is outlined covering chapters on introduction, problem definition, requirements, design, implementation, conclusions and references.

Uploaded by

greeshma
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 30

Cafeteria

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.

Dept. ISE, Atria I.T. 2020-2021 Page 1


Cafeteria

• 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.

1.2 Android Studio


Android Studio is the official Integrated Development Environment (IDE) for
Android app development, based on IntelliJ IDEA software. It provides the fastest
tools for building apps on every type of android device. It is a purpose-built for
android to accelerate the development and helps to build the highest-quality apps
for every android device. Features of Android Studio include,
• A flexible Gradle-based build system.
• A fast and feature-rich emulator.
• A unified environment where one can develop for all Android devices.
• Extensive testing tools and frameworks.

Dept. of ISE, Atria I.T. 2020-2021 Page 2


Cafeteria

1.2.1 Android Studio SDK:

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

1.2.2 Android Studio Emulator:

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 3


Cafeteria

• Architecture-neutral: Java compiler generates an architecture-neutral object


file format, which makes the compiled code executable on many processors, with
the presence of Java runtime system.
• Portable: Being architecture-neutral and having no implementation dependent
aspects of the specification makes Java portable. The compiler in Java is written in
ANSI C with a clean portability boundary, which is a POSIX subset.
• Robust: Java makes an effort to eliminate error-prone situations by emphasizing
mainly on compile time error checking and runtime checking.
• Multithreaded: With Java’s multithreaded feature it is possible to write
programs that can perform many tasks simultaneously.
• Interpreted: Java byte code is translated on the fly to native machine
instructions and is not stored anywhere.
• High Performance: With the use of Just-In-Time compilers, Java enables high
performance.
• Distributed: Java is designed for the distributed environment of the internet.
• Dynamic: Java is considered to be more dynamic than C or C++ since it is
designed to adapt to an evolving environment. Java programs can carry an
extensive amount of run- time information that can be used to verify and resolve
accesses to objects at run-time.

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 4


Cafeteria

• Easy and efficient data sharing.


• Compatibility with other markup language HTML.
• Supports platform transition.
• Allows XML validation.
• Adapts technology advancements.
• XML supports Unicode.

1.5 Structure of Report

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 5


Cafeteria

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.

The main advantage of an online ordering system is that it greatly


simplifies the ordering process for both the customer and the canteen. When the
customer visits the ordering web page, they are presented with an interactive and
up-to-date menu, complete with all available options and adjusting prices based
on the selected options. After making a selection, the item is then added to their
order, which the customer can review the details at any time before checking out.
This provides instant visual confirmation of what was selected.

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 6


Cafeteria

• 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.

The working of canteen automation system is similar to an e-commerce


website. Whenever your customers are busy with their work, instead of coming to
your canteen they can just open your website, choose the menu they like and can
simply order food.

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 7


Cafeteria

2.4 RELATED WORK:

• REQUIREMENT GATHERING & PLANNING


Planning identifies all deliverable services, describes the facilities, and defines
the working to provide details about lab details to the faculties. This planning
problem starts with a specification of user demand that is to be met by the
production plan. For this context, the facilities provided to the user faculties
are the major concern to be concentrated. This includes the easiest and
efficient way to make them available an unoccupied lab. Consequently, all the
fields must be kept while developing. Generally, a planning problem exists
because there are limited production resources that cannot be stored from
period to period. Choices must be made as to which resources to include and
how to model their capacity and behavior, and their costs. Also, there may be
uncertainty associated with the production function, such as uncertain yields
or lead times. One might only include the most critical or limiting resource in
the planning problem. Here comes the role of proper requirement gathering. If
the requirements of the user are clear then it is quite easier for the developer
to fulfill his all needs. As he can look into all the required resources, and with
proper planning and cost estimation, he can achieve his software. Thus, a
proper planning and requirement gathering leads to an efficient software
system.

• DESIGNING AND BACKEND


Designing is the most important and the most efficient function while software
development. Without a proper design, it is very difficult to develop
appropriate software that fulfills nearly all user demands. Therefore, managing
designing part in an organization is critical. A designer needs to ensure that the
design created by him can be easily understood by the all the members of
developing a team. A proper design will allow the coder to implement the
system development planning properly. Similarly, the backend part that
includes the database management plays a key role in any of the systems

Dept. of ISE, Atria I.T. 2020-2021 Page 8


Cafeteria

2.5 EXPECTED OUTPUT:


The product developed will provide an easy access to the user to manage and
alter the canteen automation according to the need.

Our application will be a platform independent application which will


maintain a database of all orders ordered from various sources. Established
canteen automation practices will provide the needed connectivity and
accountability between those two operational units, and when managed
properly, enhances the effectiveness of both operations.

• Registration

• Order

• Payment

• Update

The above are the modules of canteen automation system.

3. SYSTEM REQUIREMENT SPECIFICATIONS

Dept. of ISE, Atria I.T. 2020-2021 Page 9


Cafeteria

3.1 REQUIREMENTS:

• Functional Requirements:
Users of the canteen automation system, namely canteen customers, must be
provided the following functionality:

• Create an account.

• Manage their account.

• Log into the system.

• Navigate the canteen’s menu.

• Select an item from the menu.

• Customize options for a selected item.

• Add an item to their current order.

• Review their current order.

• Remove an item/remove all items from their current order.

• Provide payment details

• Place an order.

• Receive confirmation in the form of an order number.

 NON- FUNCTIONAL REQUIREMENTS


PERFORMANCE CRITERIA:

Dept. of ISE, Atria I.T. 2020-2021 Page 10


Cafeteria

 TIME COMPLEXITY: The elapsed time between the submission of


order process between the customer and cashier in a canteen should be as
minimum as possible.

 USER-FRIENDLY: Our canteen automation system should be more users


friendly. The user interface should be kept simple and uncluttered. Since
the different type of people will interact with this process so our project
should be very easy to them to understand.

 FLEXIBILITY: Our project should be so flexible that whenever we want


to make changes in it very easily it can be done.

 EXTENSIBILITY: It should be able to accommodate the variations like:

1. The different order should be handled easily.

2. It should be an option for cash on delivery, pay through card between


customer and canteen.

 PORTABLE: Our project should be portable on any platform and


available on websites easily and at a faster speed than others.

 REUSABLE: Our project should be portable on any platform and available


on websites easily and at a faster speed than others.

3.2. DIAGRAMS:

3.2.1. USE-CASE DIAGRAMS:

Dept. of ISE, Atria I.T. 2020-2021 Page 11


Cafeteria

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.

Dept. of ISE, Atria I.T. 2020-2021 Page 12


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 13


Cafeteria

3.2.2. CLASS DIAGRAMS:


Dept. of ISE, Atria I.T. 2020-2021 Page 14
Cafeteria

In the Unified Modeling Language (UML), a class diagram is a type of static


structure diagram that describes the structure of a system by showing the system's
classes, their attributes, and the relationships between the classes.

Dept. of ISE, Atria I.T. 2020-2021 Page 15


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 16


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 17


Cafeteria

3.2.3. SEQUENCE DIAGRAMS:


A sequence diagram in Unified Modeling Language (UML) is a kind of interaction
diagram that shows how processes operate with one another and in what order.
It is a construct of a Message Sequence Chart. Sequence diagrams are sometimes
called event diagrams, event scenarios, and timing diagrams.

Dept. of ISE, Atria I.T. 2020-2021 Page 18


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 19


Cafeteria

Fig 3.4 Sequence Diagram for Menu Selection

Fig 3.5 Sequence diagram for Payment

Dept. of ISE, Atria I.T. 2020-2021 Page 20


Cafeteria

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.

4.1.3 ANDROID STUDIO: Android Studio is called IDE it is an abbreviation of “


Integrated Development Environment”, which is used for developing Android
applications, such as whatsApp, Instgram, snapchat and camscan. It has a virtual
android device, which you can try your app on it before publishing in the market
to be ensure that it's work normaly and effectively.

4.2. SOFTWARE PROCESS MODEL:


Dept. of ISE, Atria I.T. 2020-2021 Page 21
Cafeteria

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.

Why not Waterfall model?


Waterfall model can be adopted because in our case because requirements are
known in advance but there are some limitations of waterfall model due to which
it is not feasible to adopt:

• No parallelism of work.
• Time consuming.

Why not Evolutionary models?

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.

5.CONCLUSION AND FUTURE ENHANCEMENTS

Dept. of ISE, Atria I.T. 2020-2021 Page 22


Cafeteria

The final product will be an application using which you can order your food from
canteen menu.

Fig: The Login page

Dept. of ISE, Atria I.T. 2020-2021 Page 23


Cafeteria

Fig. Menu

Dept. of ISE, Atria I.T. 2020-2021 Page 24


Cafeteria

Fig : order by customizing

Dept. of ISE, Atria I.T. 2020-2021 Page 25


Cafeteria

Fig. Invoice

5.2. CONCLUSION AND FUTURE WORK:


Dept. of ISE, Atria I.T. 2020-2021 Page 26
Cafeteria

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:

Dept. of ISE, Atria I.T. 2020-2021 Page 27


Cafeteria

Canteen Food Ordering Android System , Abhishek Singh , Amit Tanwar ,


Aditya Sawant, Chaitanya Parulekar, Kunal Yadav , IT Department, MUMBAI
University, International Journal on Recent and Innovation Trends in Computing
and Communication, ISSN: 2321-8169

Shweta Shashikant Tanpure, Priyanka R.Shidankar, Madhura M. Joshi,


"Automated Food Ordering System With Real Time Customer Feedback",
International Journal of Advanced Research in Computer Science and Software
Engineering, Vol. 3 Issue 2, Feb 2013,Pune .

[Ashutosh Bhargave,Niranjan Jadhav ,Apurva Joshi,Prachi Oke Prof.Mr. S.R.


Lathe, "Digital Ordering System for Restaurant Using Android",International
Journal of Scientific and Research Publications Issue 4,April 2013. [5] Eng Wei
Seng, "Canteen and Catering Management System", Project report submitted to
he school of arts and science, Campbell University ,U.S.A

Dept. of ISE, Atria I.T. 2020-2021 Page 28


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 29


Cafeteria

Dept. of ISE, Atria I.T. 2020-2021 Page 30

You might also like