USE CASE DIAGRAM
DESIGN OF DATABASE TABLES
PROGRESS TILL DATE
The main objective of this project is to create an Application that can run on any android device. As android is the mostly used operating system and easily affordable. As Android phone has become available to everyone. So, this app is being developed for all foodie people, so that they can order food of their choice anytime, anywhere. The user interface of the app is very convenient for anyone to use. Users using the app for the first time will not find it difficult to browse through the app.
This app will be used by both customer and the owner who is providing food. User can add food of their choice to cart and then they can place their order, while placing their order they have to provide their proper order so that food can be delivered.
User’s phone number is used for registration when they sign up from the app. The phone will be used further to contact the customer if food is not delivered. The user will get notification about their order.
The app will display food item with their price tag and user can select quantity according to their need. User’s can add or delete products from cart. The orders that they made will be saved in the database.
Android Studio : Android Studio is the official integrated development environment (IDE) for Google’s Android operating system, built on JetBrains’ IntelliJ IDEA software and designed specifically for Android development.
Adobe XD : Adobe XD is a user experience design software application developed and published by Adobe Systems. It supports vector design and wireframing, and creating simple interactive click-through prototypes.
Java: Programming language which is used make the app. Functionality of the app is coded in java language. It’s a primary language for android development.
XML: It is used to design views and layout of the android app.
Google Firebase: Firebase is a Backend-as-a-Service?—?BaaS. Firebase is a platform which allow to build web and mobile applications without server-side programming language. You can store user’s data on its real-time database which sync data among user’s data in no time.
SQLite: SQLite is a relational database management system. Used to store user’s data.
Android Design Support library: It provides various views which are coded by the developers of this library using XML.
Here are some of the Material Design components the library provides:
Floating Action Button
Toolbar (Flexible Space with Image Pattern, Quick Return, etc)
Material Design Tabs
SQLite Asset Helper: The android SQLite asset helper library allows you to build your database in your desktop computer, and to import and use it in your android application. An Android helper class to manage database creation and version management using an application’s raw asset files.
Picasso: Picasso allows for hassle-free image loading in your application—often in one line of code.
Elegant Number Button: Provides a button which has both increment and decrement option. Used for quantity picker to select food item’s quantity.
Recycler View: Used to improve apps performance. It can display a long list of data without consuming much memory. It basically recycles the new View with old ones which are not being used currently.
Food ordering app will allow user to access a wide variety of food items at their place. Food ordering apps provides the ease to order food from your place without going outside and searching for a good restaurant. This app will provide a wide range of list items from which you can select food items of your choice and order them.
User’s Sign in and Sign up page has been made. Through sign in page user can log into the app if he is already registered. Sign in requires user’s phone number and password which they have set while signing up for the app.
Sign up page requires user’s name, phone number and password. So, that it will be stored in the database and whenever user again try to sign in into the they do not have to register again they can just log in using their phone number and password.
After successfully login, user will be provided with the category menu, where he can select food item of their choice various categories are provided such as: Desserts category, if user clicks on desserts categories it will provided with the types of desserts available in restaurant.
After clicking on any food item which you want to order user will be guided to another page which will have image of food item, description and price of food.
User can also select the quantity of food from the quantity picker.
Navigation Drawer is also there in the app which will provide information such as current logged in user’s name will be displayed on the header of the navigation drawer. All other options like cart, orders and sign out option will also be provided in the navigation drawer.
USE CASE DIAGRAM
DESIGN OF DATABASE TABLES
NAME PHONE NUMBER PASSWORD
NAME PRICE DISCOUNT IMAGE MENU ID DESCRIPTION
PROGRESS TILL DATE
The project is in development phase currently and is expected to be developed by the specified by date with the mentioned features. The user interface (UI) has been designed and database design is still in process. Some of the data tables has been also identified such as user’s table, categories and food items table. These databases used here is Realtime database and written in JSON format.
The use case diagram and Entity Relationship diagram are also designed and have been attached in the implementation chapter.
Connection to Google Firebase has been established and user’s login and signup to the app. The user information provided by the user’s during signup is stored in database for further use, if user comes again and want to use the app he can directly login using phone number and password they don’t need to sign up again.
As android devices have covered most of the mobile phone market and android devices are also affordable. So, we have made this app for android users so that most of the mobile phone users can access this app. This application has been developed considering almost all the user requirements. So that users can avail services from their place. It generates business opportunities for many restaurants. They can grow their business, everything is online these days and the restaurant market is also growing day by day.
Well I have worked hard to present a good and functional app that will fulfill nearly all the user’s requirements. Few advantages of this app are user’s records and orders will be stored in database. It reduces most of the user’s manual work of going to a restaurant, they can have the same food at their place.
Still I found that project can be done in a better way. Some improvements can be done such as users can search for a particular product from the menu they do not have to browse through the whole catalog step by step. Payment options can be added such as card payment. Notifications can be provided to the user regarding their ordered food. Various payment options should be provided such as cash on delivery and credit/debit card payments.
Reference has been taken from these sites
For creating Recycler View
https://firebase.google.com/docs/auth/SQLite Asset Helper
https://github.com/jgilfelt/android-sqlite-asset-helperMaterial design Library
http://square.github.io/picasso/Elegant Number Button
https://github.com/ashik94vc/ElegantNumberButtonImage cloud storage