1 of 50

Applied Research Project A, SS2019

Mensa Online

Kamp-Lintfort, Germany.

Rhine-Waal University of Applied Science

By

Francisco Susana (26574) 

Sowmya Ranjan Nayak (26441)

S M Asif  A (26590)

Marjahan Akter (26569)

Herdilia Sunu (26589)

Deepak Kumar (26571)

Prof. Dr. Timo Kahl

2 of 50

Agenda

02

Requirement Analysis

System Architecture

Client side – System Architecture

Introduction

Market Research

Existing System vs Proposed System

01

03

04

05

06

Server side - System Architecture

Server-Side Implementation

Project Demonstration

Client side - Implementation

3 of 50

Introduction

  • The old style of food ordering tends to have high human mistakes which increasing unnecessary operational cost.

Wrong order processing due to the human mistake also causes food wastage and increases the operating cost

Keeping that in mind, Mensa online is specially designed for a restaurant in Hochschule Rhein-Waal

  • Mensa Online was designed to help the restaurant to make better-informed decisions for the food they provide.

  • The web application of this system is used to maintain restaurant data, manage a reservation, perform food ordering, payment, and 

reporting.

  • The Mensa Online is a web-based service which is created with mobile users as its first priority as target audience. Mensa Online was

created for a large number of audience mind.

  • The current system is capable of accommodating machine learning attributes which could automate the complete process in the near

future, which will further reduce the cost of operation.

4 of 50

Market Research

After a quick analysis of the researched data, it was concluded that “Canteen” was the highest downloaded platform

among the five, and Mensa balance was the second highest downloaded platform followed by Mensa card. Mesa plan had the highest rating

followed by Mensaar

It was concluded that the Canteen app includes over 500 menus from refectories and cafeterias in over 180 cities.

Continued……..

5 of 50

  • Whereas Mensa Balance was highly rated for the ease of use, and did not have any international language support and did not have

HSRW in their list.

  • Mensa Card is Dedicated Balance Checking app for Mensa Card with no international language and it is not integrated with their primary

canteen application.

  • Mensa Balance had multiple dedicated apps for every region in Germany, but it is not available for NRW/HSRW with no international

language support.

  • Saarland University Mensa Cafes had dedicated web page and app for all the cafes and canteens in Saarland University. It also had an

Integrated Blue Code Payment System.

  • It is not available for NRW/HSRW and no International Language, It has very low downloads and the Link to the mobile application was broken.

6 of 50

Existing System vs Proposed System

Existing System

 

 

The existing system is mostly app-based. Most of the systems are not focused on HSRW. Most systems have

only one method of payment, with German only as UI language. These systems are not very widely used due to their lack of efficiency and user friendliness. Few of these systems having a certain mobile operating system will lack the ability to support other diverse systems.

 

 

Proposed System

 

 

The goal of our proposed system is to address the drawbacks of the existing system and deliver an efficient system which could support all

the diverse devices independent of the nature of the operating system being used. The proposed system aims to address international language support, calories for the food as well as a new system of transaction which the existing systems lack.

7 of 50

Requirement Analysis

  • User needs menu with calories and price
  • User needs to recharge and check the balance online
  • User needs to select the meal(s) online
  • User needs to checkout
  • User needs to check the order state

8 of 50

System Architecture

9 of 50

Front-End Framework

  • Vue is a progressive framework for building user interface.
  • The core library of Vue focused on the view layer
  • Vue.js is easy to pick up and integrate with other libraries or existing projects.
  • Vue.js would be better for small-size projects and other applications which prefer faster speed over greater functionality.

Vue.js

10 of 50

Front-End Framework

11 of 50

Front-End Framework

12 of 50

Application Programming Interface

Axios

  • Axios is a promise-based modern http client library that runs on the browser and the server through Node.js.

 

  • Axios to send API or HTTP calls from a Vue.js interface to a RESTful API back-end built with Django.

13 of 50

Application Programming Interface

14 of 50

MVC Framework

Model-View-Controller (MVC) is an architectural pattern that separates an application into three main logical components.

Each of these components are built to handle specific development aspects of an application.

15 of 50

Functionality of MVC

16 of 50

Object-Relational Mapping (ORM)

ORM provides a bridge between relational

database tables, and python objects.

RDBMS

Object

ORM

17 of 50

Django

Django is a high-level Python Web framework that encourages rapid

development and clean pragmatic design.

MTV vs. MVC

Django uses MTV

Model(M) is a model of the data access layer. It defines;

- How to access data

– How to validate data

– What are the relationships between the data

Template (T) is the presentation layer. It defines;

- How something should be displayed on a Web page

View (V) is the business logic layer. It defines the logic that;

- Accesses the model and references the appropriate template(s).

Django

ORM

MVC

18 of 50

Vue Life Cycle

19 of 50

Vue Life Cycle

20 of 50

Vue App

21 of 50

Vue Routing

22 of 50

Vue Routing & Components

23 of 50

about.vue component

Applayout.vue

Vue Routing & Components

24 of 50

API – Fetching

Index.js

Menu.vue

25 of 50

API – Fetching

1

2

3

26 of 50

Vuex – Saving Orders

27 of 50

Vuex – Saving Orders

28 of 50

Vuex – Saving Orders

Menu.vue

cart.vue

29 of 50

Vuex – Saving Orders

1

2

30 of 50

Vuex – Saving Orders

3

31 of 50

API – Submitting

Index.js

Cart.vue

32 of 50

API – Submitting

33 of 50

API – Submitting

34 of 50

Workflow

Database Schema

35 of 50

Workflow

BACKEND

  • Models

36 of 50

Workflow

  • Django REST Framework

Django REST framework is a powerful and flexible toolkit for building Web APIs.

API

37 of 50

Workflow

  • URLs

38 of 50

Workflow

  • Views

39 of 50

Workflow

  • Serializers

40 of 50

Challenges

- Put both frameworks to work together

- Develop the proper staging for Vuex

- API for making payments

41 of 50

MENSA ONLINE

EVALUATION

42 of 50

Project Demonstration : User Portal

43 of 50

Project Demonstration : Admin Portal

44 of 50

Project Demonstration : Order Foods

1)Select Menus :

45 of 50

Project Demonstration : Order Foods

2)Checkout Order :

46 of 50

Project Demonstration : Order Foods

3)Mensa Admin Confirmation(Approve/Cancel) :

47 of 50

Project Demonstration : Recharge Wallet

48 of 50

Project Demonstration : Admin Food Management

49 of 50

References

https://vuex.vuejs.org/

https://blog.bitsrc.io/how-to-build-vue-components-like-a-pro-fd89fd4d524d

https://codingthesmartway.com/getting-started-with-axios/

https://realpython.com/tutorials/django/

https://www.tutorialspoint.com/mvc_framework/mvc_framework_introduction.htm

https://hackernoon.com/thinking-in-redux-when-all-youve-known-is-mvc-c78a74d35133

50 of 50

Thank you