Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 48

ANDROID BASED MEAL BOOKING SYSTEM

DEDAN KIMATHI UNIVERSITY OF TECHNOLOGY

PROJECT REPORT FOR FINAL YEAR STUDY IN BSC COMPUTER SCIENCE

SUBMITTED BY

CHELANGAT NAOMI (C026-01-1017/2015)

PROJECT TITLE

ANDROID BASED MEAL BOOKING SYSTEM FOR DEDAN KIMATHI UNIVERSITY OF


TECHNOLOGY

A report submitted to the Department of Computer Science in the School of Computer Science
and Information Technology in partial fulfillment of the requirements for the award of the degree
of Computer Science Dedan Kimathi University of Technology

2018

i
ANDROID BASED MEAL BOOKING SYSTEM

DECLARATION

I hereby declare that the project entitled “Android Based Meal Booking System (ABMBS)”
submitted for the B.Sc. Computer Science degree is my original work and the project has not
formed the basis for award of any other degree, diploma or any other similar titles.

Signature …………………………….

Date: __________________________

SUPERVISOR

This is to certify that the above statement made by the student is true to the best of my
knowledge.

Signature ………………….

Date: ___________________

ii
ANDROID BASED MEAL BOOKING SYSTEM

ACKNOWLEDGEMENT

My sincere gratitude goes to the Almighty God for the gift of life and good health, to my
supervisor Dr. Musumba for his support, encouragement and his critics that paved way for the
success of the project, thanks to Mr. Opondo for his resourceful support and encouragement for a
short while, Dedan Kimathi University of Technology for giving me this opportunity to do this
project and to my family and friends for supporting me financially and whatsoever the case.

iii
ANDROID BASED MEAL BOOKING SYSTEM

DEDICATION

I lovingly dedicate this project to my mother who has been a source of inspiration throughout my
life. She has been my motivation and she has given me the courage to tackle tasks with
enthusiasm, hard work, hope no matter the situation is and determination. The project is also
dedicated to my sisters and brother who through it all they’ve showed me love and are a source
of inspiration.

iv
ANDROID BASED MEAL BOOKING SYSTEM

ABSTRACT

Technology and its effects has increased over a numbers of years. Taking advantage of the
advancement in technology, this project applies a digital touch to the way catering unit function,
in order to increase its reliability among students. Currently, there are no means of enabling
students to book meals online thus students have to be present for them to know the meals that
are still available and those that are not, on the other hand cashier has no means of knowing the
meals available and thus keeps waiting for update from those serving the meals.

Android Based Meal Booking System (ABMBS) solves the problem using the platform where
students can book meal within stipulated time, they can also check meals that are still available
according to preferences and finally manual update between the person serving and the cashier is
omitted since he or she would be able to control this through the use of the system.

The project allows;

 Students to check meals available and book them.


 Students to make payments through M-Pesa.
 Catering staff to eliminate manual updates.

The system followed the spiral development model in software development life cycle (SDLC)
through stages of identification, system design, construct or build, risk analysis and evaluation.
Since it combines the idea of iterative development with the systematic, controlled aspects of the
waterfall model. Software development takes place in series of developed releases. In initial
stage iterations, the release or model might be a paper model or a prototype. It allows changing
requirements to be accommodated.

TABLE OF CONTENTS

Table of Contents

v
ANDROID BASED MEAL BOOKING SYSTEM

DECLARATION.........................................................................................................................................ii
ACKNOWLEDGEMENT..........................................................................................................................iii
ABSTRACT...............................................................................................................................................iv
TABLE OF CONTENTS.............................................................................................................................v
LIST OF FIGURES...................................................................................................................................vii
CHAPTER ONE: INTRODUCTION..........................................................................................................1
Background.............................................................................................................................................1
1.2 Problem Definition............................................................................................................................2
1.3 Objectives..........................................................................................................................................2
1.3.1 General Objective.......................................................................................................................2
1.3.2 Specific Objectives.....................................................................................................................2
1.5Justification........................................................................................................................................2
1.6 Scope.................................................................................................................................................3
1.6.1 General Scope.............................................................................................................................3
1.6.2 Specific Scope............................................................................................................................3
CHAPTER 2: LITERATURE REVIEW.....................................................................................................4
2.1 INTRODUCTION.............................................................................................................................4
2.2 Case studies.......................................................................................................................................4
2.2.1 Case 1: Green Templeton College Oxford..................................................................................4
2.2.2 Case 2: Rhodes University Meal-booking System (South Africa...............................................4
2.2.3 Case 3: Durham University.........................................................................................................5
2.2.4 Case 4 Murray Edwards..............................................................................................................5
2.3 Weakness of their system..................................................................................................................5
2.4 Challenges solved by the system.......................................................................................................6
2.5 Research gap and summary of literature review................................................................................6
2.6 Assumptions......................................................................................................................................6
2.7 Methodology Used............................................................................................................................6
CHAPTER 3: METHODOLOGY...............................................................................................................7
3.1 Introduction.......................................................................................................................................7
3.2 Target population...............................................................................................................................7
3.3 Sampling strategy..............................................................................................................................7
3.4 Data collection...................................................................................................................................7

vi
ANDROID BASED MEAL BOOKING SYSTEM

3.4.1 Advantages of using questionnaires............................................................................................8


3.4.2 Disadvantages of other methods of data collections...................................................................8
3.4.3 Justification.................................................................................................................................8
3.6 System Development Methodology...................................................................................................9
3.6.1 Introduction................................................................................................................................9
3.6.2 Advantages of using spiral model...............................................................................................9
3.6.4 Justification...............................................................................................................................10
CHAPTER FOUR: SYSTEM DESIGN....................................................................................................10
4.1 Introduction.....................................................................................................................................10
4.1.0 Functional Requirements..........................................................................................................10
4.1.1 Non-Functional requirements...................................................................................................11
4.2 Data analysis....................................................................................................................................11
4.2.1 System recommendation...........................................................................................................12
4.2.2 Impact of online booking system..............................................................................................12
4.3 Process modelling techniques used..................................................................................................13
4.3.1 Use Case Diagram....................................................................................................................14
4.3.2 Context Diagram.......................................................................................................................15
4.3.3 Level 1 context Diagram...........................................................................................................16
4.3.4 Entity relationship diagram(ERD)............................................................................................17
4.4 System Design.................................................................................................................................18
4.4.1 Home page and login page........................................................................................................18
4.4.2 Add meals.................................................................................................................................19
4.4.3 Receive cash.............................................................................................................................20
4.4.4 Dish details...............................................................................................................................21
CHAPTER 5: SYSTEM TESTING AND IMPLEMENTATION............................................................................22
5.0 Objectives........................................................................................................................................22
5.1 Testing Overview.............................................................................................................................22
5.1.0 Black Box testing......................................................................................................................22
5.1.1 White Box Testing.....................................................................................................................22
5.1.2 Admin Login..............................................................................................................................23
5.1.3 Cashier login.............................................................................................................................27
References.................................................................................................................................................28

vii
ANDROID BASED MEAL BOOKING SYSTEM

Appendix...................................................................................................................................................29
Software Resources...........................................................................................................................32

LIST OF FIGURES
Figure 1: Spiral development model (Houghton Mifflin, 1981; Penguin Books)........................................9
Figure 2: System recommendation............................................................................................................12
Figure 3:Impact of online meal booking system........................................................................................13
Figure 4 Use Case diagram........................................................................................................................14
Figure 5: Context Diagram........................................................................................................................15
Figure 6: Level 1 context Diagram............................................................................................................16
Figure 7: Entity relationship diagram(ERD)..............................................................................................17
Figure 8: Home page and login page.........................................................................................................18
Figure 9:Add meals...................................................................................................................................19
Figure 10: Receive cash.............................................................................................................................20
Figure 11:Dish details................................................................................................................................21
Figure 12: Administrator Dashboard..........................................................................................................23
Figure 13: Form for adding/registering Users............................................................................................24
Figure 14:List of Registered Users with different privileges......................................................................25
Figure 15: Administrator Dashboard for “Kennedy Onyango”..................................................................25
Figure 16: Cashier Dashboard....................................................................................................................27

List of tables
Table 1:Test Case and Error Messages for Users Registration Modules....................................................25

viii
ANDROID BASED MEAL BOOKING SYSTEM

ABBREVIATIONS
ABMBS- Android Based Meal Booking System.

SDLC – Software Development Life Cycle

PHP- Personal Home Page.

JAD - Joint application development

ERD - Entity relationship diagram

DKUT –Dedan Kimathi University Of Technology

ix
ANDROID BASED MEAL BOOKING SYSTEM

CHAPTER ONE: INTRODUCTION


Background
Dedan Kimathi University of Technology(DKUT) has catering unit that offers the best meals at
affordable price to students. However, students face the challenges whereby they want certain
meal according to their preferences but go there and find out that specific meal is over. Catering
unit staff also face challenge whereby they have to update each other on the remaining food
between in the counter and the ones serving food.

Students would have wasted time by moving to the catering unit and finds that meals are no
longer there. The students also face challenge where lecturers extend lessons and by the time the
students go to the mess some of the favorites meals are over.

Android Based Meal Booking System(ABMBS) is an answer this problem since it will make
work easier for students as they thrive through their studies. The system also aims at improving
student’s satisfaction.
This project seeks to utilize the technological convergence, by coming up with an Android Based
Meal Booking System (ABMBS) that can be installed on android mobile phone where the
students can check meals available and can also book meals. Implementing the system will help
the students save on time that would have been spent moving to catering unit to check on the
availability of meals. On the other hand, catering unit workers are saved on manual update
between the cashier and the person serving meals.

The system will overcome demerits of manual mess system whereby they will put down meals
available in the board and erasing them when there is notification from kitchen that certain meals
are no longer available.

Nearly all Kenyan Universities do not have systems where students can book their meals in
advance thus the system will be of the great use to most Kenyan university students.

1
ANDROID BASED MEAL BOOKING SYSTEM

1.2 Problem Definition


Dedan Kimathi university catering section, has no means of enabling students to book meals
online thus students have to be present for them to know the meals that are still available, on the
other hand cashier has no means of knowing the food available and thus keeps waiting for update
from those serving the meals.

Introducing Android Based Meal Booking System will solve the problem by introducing the
platform were students can book meal within stipulated time, they can also check meals that are
available and those that are not and finally manual update between the person serving and the
cashier is omitted since he or she would be able to control this through the use of the system.

1.3 Objectives
1.3.1 General Objective
The main objective of this research is to come up with a system that enables the students to book
meals in the school catering unit.
1.3.2 Specific Objectives

i. To develop system that will help the catering unit staff solve manual update between the
cashier and those serving food.

ii. To develop system that will help the student to know the food that are still available and
be able to book the meals.

iii. To develop a system that will enable payments through M-Pesa.

1.5Justification
The system will ensure no wastage of resources such as time, energy, labor amongst others
which arise due to lack of a system which would complement those resources.
The Android Based Meal Booking System will be used by the students in Dedan Kimathi
University of Technology to book their meals, check the availability of meals and solve the
manual update between cashier and the person serving the meals.
This system can also be implemented in other universities in Kenya as well as Africa at large.

2
ANDROID BASED MEAL BOOKING SYSTEM

1.6 Scope
1.6.1 General Scope
It is possible to design Android Based Meal Booking System that can be implemented in all
Kenyan universities and in Africa. Some of which have done very little on their catering unit
section where students cannot check meals still available and cannot be able to book.

1.6.2 Specific Scope


This proposal has been developed to specifically, develop a meal booking system based on
Dedan Kimathi University of Technology catering unit section.

The system shall be developed by collecting the data from Dedan Kimathi University of
Technology students’ and catering unit staff/workers, and using it to come up with a system that
will be able to solve problems that are currently encountered.

3
ANDROID BASED MEAL BOOKING SYSTEM

CHAPTER 2: LITERATURE REVIEW

2.1 INTRODUCTION
The body of text aims to review the critical point of current knowledge including substantive
findings as well as theoretical and methodological contributions towards the project. It doesn’t
involve any original experimental work, just secondary sources. Chapter two of this document
situates the current study within the field and scope covered by the project as well as providing
context. The document gives an account of what has been published related to my project by
scholars and other researchers. The document highlights on the knowledge and ideas that have
been established, their weaknesses as well as strengths.

2.2 Case studies


2.2.1 Case 1: Green Templeton College Oxford
This new system will enable you to book in directly for College dinners over the internet. To use
this system, you need a University email account (SSO) and an account on the College Battels
system. If you do not possess both of these, you will need to contact dinner@gtc.ox.ac.uk to have
them to book a place at dinner.
Dinners booked this way will be charged directly to your Battels account and this system will
also allow you to book places for your guests, along with any dietary requirements.
Once your login to the system one is able to check meals listed and book meals on line over the
internet

2.2.2 Case 2: Rhodes University Meal-booking System (South Africa)

This one of the universities in African continent that was founded in 1904 as Rhodes University
College, named after Cecil Rhodes, through a grant from the Rhodes Trust. It became a
constituent college of the University of South Africa in 1918 before becoming an independent
university in 1951.Rhodes meal booking system is a web based system where students can login
and book, unbook, rebook, change their meals or double book their meals any time of the day
from one of the computer in one of the computer labs. This must be done at least 48 hours in
advance.The meal booking computers are on 24hrs a day so you can make changes that you want
at any time. One important limitation is that you need to make changes 48hrs in advance of the

4
ANDROID BASED MEAL BOOKING SYSTEM

meal in question. This is done because the kitchens need that time to order the correct amounts
and sorts of food so that they can prepare the correct numbers and types of meals without
running short of anything.

University(2018). Meal booking help documents. Retrieved from:


https://www.ru.ac.za/residential operations/meal bookings/

2.2.3 Case 3: Durham University


Durham meal booking system is a web based system where users can log with their email
address and request for a password. One will be emailed a password almost immediately but you
can change it later if you wish. After login one is able view meals and book meals. The system
also allows user to see who else is attending the meal or event and even allows you to keep track
of the cost of your bookings

University. (2018). Meal bookings. Retrieved from


https://www.ru.ac.za/residentialoperations/mealbookings/

2.2.4 Case 4 Murray Edwards


This system was developed to enable students to book meals, cancel meals they can also book
meals for their guest. When they login in to the meal booking system one sees the Home Page.
This displays information about service downtimes and nut allergy information. This page
displays the date, time and types of meals available over the set of period. Spaces indicates the
number of spaces currently available for each meal.

University. (2018). meals. [online]. Available at:https://www.murrayedwards.cam.ac.uk/step-


step-guide-using-meal-booking-system.

2.3 Weakness of their system.


Weakness of the systems above are time limited, since failure to book in advance within a period
not less than 24 hours will make the user miss meals, also users must have their money included
in their school accounts for them to be able to book meals.

5
ANDROID BASED MEAL BOOKING SYSTEM

2.4 Challenges solved by the system


Challenges that will be solved by the system are as follows; users will be able to book their
meals through their mobile based android app in their phones and they can book meals and have
payments via M-Pesa.

2.5 Research gap and summary of literature review


According to the research I have carried out concerning the system there is a gap between the
existing systems and the proposed system.

The existing systems does not allow users book meals even with little amount since mode of
payment is limited to payment alongside with school fees of the student over time while the
proposed system would allow the students to book meals even with the little amount of money
they have i.e. via M-Pesa.

The proposed system will enable the user to checks the meals that are still available without
necessarily visiting the catering unit.

The proposed system will also help catering staff to put away the manual update between the
cashier at the counter those the meals.

2.6 Assumptions
It is assumed that;

i) There will be internet availability.


ii) availability android mobile phones.
iii) Availability of desktop machine/laptop.

2.7 Methodology Used


The system followed the spiral system design life cycle. This is because it accommodates
changing requirements.

6
ANDROID BASED MEAL BOOKING SYSTEM

CHAPTER 3: METHODOLOGY
3.1 Introduction
Methodology refers to the system of methods or procedures used in sampling and collecting data
required for particular research.it is also application of the principles of data collection methods
and procedures in any field of knowledge (,2003).

This being android based system aimed at helping the school to provide efficient services to the
students, the best data collection techniques for it are observations, and questionnaires for
students and catering unit staff. The development methodology to be used will be spiral model.

3.2 Target population


The target population was from Dedan Kimathi University of Technology students’ who were
randomly picked based on their willingness to answer questionnaires. These included various
students from different schools such as School of Computer Science and Information
Technology, School of Engineering, School of Nursing and Health Sciences, school of science
etc. Another target population was catering unit staff who happened to be involved in the use of
the system.

3.3 Sampling strategy


Strategy was the plan set forth to ensure that the sample used in research represented population
from which the sample is drawn. Systematic sampling was used in the study since the population
was logically homogenous. The main advantage of using systematic sampling over simple
random sampling is assurance that population will be evenly sampled (Ken Black,2004).

3.4 Data collection


Two methods of data collection were employed in this research; questionnaires and observation.
The data collection procedure for observation involved a visit to university catering unit section
during meals times and observe how things are done. Other method of data collection is the use
of questionnaires that was prepared and distributed in form of google forms and a few printed
copies distributed to catering unit staff. The online forms were through WhatsApp groups to

7
ANDROID BASED MEAL BOOKING SYSTEM

different classes in various schools. Data collected from this form were automatically collected
by google forms and aggregated in chart formats. It is from chats that done analysis were done.

3.4.1 Advantages of using questionnaires


It allows gathering of information over larger audience. Online, one can literally distribute
questions to anyone as long the audience are within the target population.

No pressure, when using online questionnaires, there is no time limit and no one on the other end
waiting for an answer. Respondents can take their time to complete questions. They will often
answer question more truthfully.

They are cost efficient and time efficient. Questionnaires are one of the most affordable ways to
gather quantitative data. Especially online surveys have very low cost and a generous reach.

User anonymity. Questionnaires allows respondent to maintain their anonymity and allows also
to invisibly complete the questions.

3.4.2 Disadvantages of other methods of data collections


Interviews are more prone to bias than questionnaires because of interviewer factor (Selltiz
et.al,1962). The interviewer may be an inkling of his or her opinion by her tone, the way she
reads a questions and even appearance.

Interviews are costly than questionnaires (Moser and Kalton,2000). All interviews require
careful preparation that means time and effort. Arrangements to visit, securing necessary
permission, confirming arrangements, rescheduling and rescheduling appointments.

Interviews requires great time amount of time to collect information. Because it takes several
interviews with different people.

Joint application development(JAD) is also similar to interviews since it requires a lot of time
and is costly. Few people often dominate the discussions and not everyone participates thus
making it bias.

3.4.3 Justification
For the above analysis questionnaires turns out to be the best method that was chosen as a
method of data collection since it is less costly, requires less time and it is no bias.

8
ANDROID BASED MEAL BOOKING SYSTEM

3.6 System Development Methodology


3.6.1 Introduction
The system followed the spiral development model (Houghton Mifflin, 1981; Penguin Books) in
software development life cycle (SDLC) through stages of identification, system design,
construct or build, risk analysis and evaluation. Since it combines the idea of iterative
development with the systematic, controlled aspects of the waterfall model. Software
development takes place in series of developed releases. In initial stage iterations, the release or
model might be a paper model or a prototype. In the later stages a more complete version of
software is actually produced.

Figure 1: Spiral development model (Houghton Mifflin, 1981; Penguin Books)


3.6.2 Advantages of using spiral model
a) It accommodates changing requirements.
b) It allows extensive user of prototype.
c) Requirements are captured more accurately.
d) Users see the system early.
e) Development can be divided into smaller parts and riskier parts can be developed earlier
which helps better risk management

9
ANDROID BASED MEAL BOOKING SYSTEM

3.6.3 Disadvantages of other methods of software development cycle

Iterative model application requires highly skilled resources for risk analysis, more management
attention is also required and finally project progress is highly dependent upon the risk analysis
phase.
Waterfall model requires fixed requirements as it cannot accommodate the changing
requirements, it is difficult to measure the progress within the stages and it is not suitable for
projects where requirements are at moderate risk of changing.
Agile method requires more commitments, is less predictable for some deliverables and
developers cannot the full extent of required efforts and the project can easily fall of track.

3.6.4 Justification
From the above analysis, spiral turns out to be the method that was chosen since it
accommodates the changing requirements, allows extensive use of prototypes and has better
mechanisms for carrying risk analysis.

CHAPTER FOUR: SYSTEM DESIGN


4.1 Introduction
The system design developed is achieved by developing the system architecture after gathering
the system requirements, the context diagram, the data flow diagrams; both the context diagram
and the level1diagrams and the use case diagrams. The ABMBs is developed following the
requirements gathered and presented using the design procedures of Unified Modeling
Language. In this chapter too, the system requirements; functional and non-functional
requirements are defined.

10
ANDROID BASED MEAL BOOKING SYSTEM

4.1.0 Functional Requirements


These are statements of services the system should provide, how the system should react to
particular inputs (Fulton and R.2017), and how the system should behave in particular situations.
In some cases, the functional requirements may also explicitly state what the system should not
do.
i. A user should be able to generate reports and receipts.
ii. A user should be to book meal and have reserved after payments.
iii. Each user using the system shall be uniquely identified by his/her username/email address
iv. Each user should be able to check meal availability.

4.1.1 Non-Functional requirements


These are constraints on the services or functions offered by the system (Stallman et al,2005).
They include timing constraints, constraints on the development process, and constraints
imposed by standards.
Speed
Be fast in terms of processed transactions/second. The user/event response time screens refresh
time.
Security

All passwords should be encrypted, username and password verification as part security
measures.

Ease of use

The system should be ease to use for students, navigation should also be ease.

Robustness
Time to restart after failure, percentage of events causing failure, probability of data corruption
on failure.

Portability

This refers to the target percentage of dependent systems.

11
ANDROID BASED MEAL BOOKING SYSTEM

4.2 Data analysis


A total of 375 online google forms questionnaires were filled online and a total of 7 printed
copies were issued to catering unit staff. Out of 7 copies only 5 were returned. This section
discusses the results obtained from the relevant personnel upon receipt of the questionnaires.
4.2.1 System recommendation
Figure 5 shows a chart detailing the respondent’s responses on whether they recommend an
online meal booking system or not.

Figure 2: System recommendation

51% of the respondents highly recommends the online meal booking system to be implemented
in University catering unit section.
31% of the respondent moderately recommend the online meal booking system and 17% highly
discouraged the online meal booking system in the university.
4.2.2 Impact of online booking system
The figure below shows the respondent’s responses on the impact of online booking system
whether positively or negatively.

12
ANDROID BASED MEAL BOOKING SYSTEM

Figure 3:Impact of online meal booking system

63% of the respondent’s think that the system the online meal booking system would bring
positive impact on the University catering unit section and to students.

11% of the respondents think that the online meal booking system would bring negative impact
to both university catering unit and students.

25% of the respondents think that the online meal booking system would not bring an impact to
both university catering unit and students.

4.3 Process modelling techniques used


This is the process of developing abstract models of a system, with each model presenting a
different view or perspective of that system. They involve the data flow diagrams; the context
and the level1 diagrams, and the use case diagrams.

13
ANDROID BASED MEAL BOOKING SYSTEM

4.3.1 Use Case Diagram


A simple scenario that describes what a user expects from a system (Siau and Lee,2004). The
aim to present a graphical overview of the functionality provided by the system. Identifies the
actors involved in an interaction and names the type of interaction (McLaughlin et al,2006). It
identifies the individual interactions between the system and its users or other systems.

Figure 4 Use Case diagram

14
ANDROID BASED MEAL BOOKING SYSTEM

4.3.2 Context Diagram


Context diagrams are used to illustrate the operational context of a system; they show what lies
outside the system boundaries (Kossiakoff and Sweet,2011). Identifies the entities outside the
system that interface to it in some way (Richard Wiener,1998). It normally shows that the
environment includes several other automated systems.

Show the other systems in the environment, not how the system being developed is used in that
environment. System boundaries are established to define what is inside and what is outside the
system. They show other systems that are used or depend on the system being developed.

Figure 5: Context Diagram

15
ANDROID BASED MEAL BOOKING SYSTEM

4.3.3 Level 1 context Diagram


It shows all the processes at the first level of numbering the data stores, external entities, and
data flows among them. Used to show all the major high-level processes of the system and how
they are interrelated. All process models have one and only one level 1 DFD.

Figure 6: Level 1 context Diagram

16
ANDROID BASED MEAL BOOKING SYSTEM

4.3.4 Entity relationship diagram(ERD)


An entity–relationship model (ER model) describes interrelated things of interest in a specific
domain of knowledge. A basic ER model is composed of entity types and specifies relationships
that can exist between instances of those entity types (Chen and Peter,1976).).

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 (Beynon-Davies and Paul, 2004).

Figure 7: Entity relationship diagram(ERD)

17
ANDROID BASED MEAL BOOKING SYSTEM

4.4 System Design


4.4.1 Home page and login page
User is able to login with credentials given by administrator.

Figure 8: Home page and login page

18
ANDROID BASED MEAL BOOKING SYSTEM

4.4.2 Add meals


Chef is able to add meals and be viewed by cashier in the web application and students in the
mobile application.

Figure 9:Add meals

4.4.3 Receive cash


Cashier is able to serve students, receive cash and produce receipts

19
ANDROID BASED MEAL BOOKING SYSTEM

Figure 10: Receive cash

4.4.4 Dish details


User is able to view dish details and add to the cart.

20
ANDROID BASED MEAL BOOKING SYSTEM

Figure 11:Dish details

21
ANDROID BASED MEAL BOOKING SYSTEM

CHAPTER 5: SYSTEM TESTING AND IMPLEMENTATION


5.0 Objectives
The major objectives of system testing and implementation are to check the developed
system and implement. This section also provides the different strategies and
implementation plan required for the purpose of testing and implementation.

5.1 Testing Overview

In software engineering, system testing plays an important role for the delivery of the project or
the system. Every developed system is checked in order to find out the programming bugs.
Meanwhile, testing cannot guarantee the total bug free system. Hence, the basic objective of the
system is to find out the bugs solve them for the bugs free system. White box testing and black
box testing were used.

5.1.0 Black Box testing

Method of software testing that examines the functionality of an application without peering into
its internal structures or workings. This method of test can be applied virtually to every level of
software testing: unit, integration, system and acceptance. It is sometimes referred to as
specification-based testing (Jerry Gao et al ,2003).

5.1.2 Admin Login


The admin logs in just like a normal user but he is redirected to administrator page. This gives
the admin the privilege of adding users and removing them in the system.

22
ANDROID BASED MEAL BOOKING SYSTEM

Figure 12: Administrator Dashboard

5.1.2.0 Users Registration


The test case below is for Users registration/ creation for a sample user with the name “Kennedy
Onyango”. The screenshots and results are shown below:

Figure 13: Form for adding/registering Users

If successful i.e. no errors have occurred, the following are the expected results:
1. Account created successfully. Once accessed the Registered Accounts “Kennedy Onyango’s”
details should be available.
2. “Kennedy Onyango” would be able to login as administrator and given privileges of
administrator

23
ANDROID BASED MEAL BOOKING SYSTEM

Figure 14:List of Registered Users with different privileges.

24
ANDROID BASED MEAL BOOKING SYSTEM

Figure 15: Administrator Dashboard for “Kennedy Onyango”

Table 1:Test Case and Error Messages for Users Registration Modules

An empty form is submitted S name, f name, username, phone, email and


password required
A user submits the registration form with an The f name field is required.
empty First Name field

A user submits the registration form with an The s name field is required.
empty Last Name field

A user submits the registration form with an The username field is required.
empty username

A user submits the registration form with an The phone field is required.
empty phone number

A user submits the registration form with an The password field is required.
empty password

A user submits the registration form with The password confirmation does not match.
password fields not matching

A user submits the registration form with The password must be at least 6 characters.
password less six characters

A user submits the registration form with an The email field is required.
empty email

A user submits the registration form with an The email has already been taken.
email already used by another user

25
ANDROID BASED MEAL BOOKING SYSTEM

A user submits the registration form with an The email must be a valid email address.
invalid email format

Table 1: Test Case and Error Messages for Users Registration Modules

5.2 implementation
The ABMBS system is a combination of an android App and web Application. The
implementation part is more specific to the website as this site is meant to serve a large number
of users(students). It is expected that the server hosting this website will always have huge traffic
and thus needs to be hosted on the best server hardware and the software.

The best server to host the system should be;

1. Consistently dependable: ensures long term reliability with uninterrupted functionality.


2. Intelligent data management: it built a high-density data center with the kind of asset
flexibility that enables the administrator to manage data and other critical business
resources.
3. Workload flexibility: by combining the outstanding performance, density and efficiency
into an individually serviceable quarter-height, the server should give an exceptional
opportunity to build the ideal data center for the ABMBS.
4. Outstanding operational efficiency: simplifies deployment, updating, monitoring and
maintenance of the system.

5.3 Deployment.
5.2.0 Release
During the course of development ABMBS System prototypes were and shall continue to be
released for user testing and reviews. The prototypes and final application shall be hosted on the
server.

26
ANDROID BASED MEAL BOOKING SYSTEM

5.2.1 Install and activate


The application is installed on the server and is accessible via the native PC web browsers. A
future prospect is to host the web application with an internet service provider. APKs would be
installed on users’ android phone v4 and above and login credentials be provided to them.

5.2.2 Versioning and Update


The versioning shall continue with every release of the ABMBS System prototype. Updates shall
be implemented once a newer version of the system has been released.

5.4 Security
For security purposes, the following were implemented:

5.4.0 Password Security


Use passwords for authentication.

Set the minimum length of required password and let the password include mixture of character
and symbols.

Allow administrator to create and moderate accounts of participants.

5.4.1 Web Application Security


Delete cache memories to avoid automatic remembering and cache storage of username and
passwords.

Use sessions, when user logs out, clicking back button in the browser will prompt the user to
enter the username and password.

Test file upload fields to assure code cannot be uploaded.

Use POST instead of GET to submit data so sensitive information is not in the URL.

5.4.2 Server Security


Update the control panel regularly.

Reduce information disclosure, e.g. changing Server Tokens in Apache.

Not to install software that is not used.

Not to store backups or old versions of software on the production system.

27
ANDROID BASED MEAL BOOKING SYSTEM

Restrict access to directories with proper permissions

Make sure you log all admin level accesses with date, times and usernames.

Maintain backups.

Test backups.

Use root account only when required. Enforce strong passwords and change policies.

CHAPTER 6: RECOMMENDATIONS AND CONCLUSIONS.


6.0 Introduction
This chapter concludes this project by highlighting the limitations of the project, conclusion and
recommendations to be implemented in the future for the betterment of the system. It is majorly
based on my experience while developing the system and my future changes to the system so as
to fit the changing requirements of users.

In line with the specific objectives that were stipulated; this is how each was achieved by the
system, the system was proposed to enable payment through M-pesa, which the system has
achieved that through M-Pesa sandbox for testing.

To develop a system that enhance meal booking in a mobile android app. This was achieved
when the users are able to view meal and be able to book.

To develop system that will help the catering unit staff solve manual update between cashier and
serving the food by enabling chef to add meals and be viewed by users (cashier and students).

6.1 Limitations
The following are the limitations and challenges that I face during the development of Android
Based Meal Booking System:
1. Budget constraints: I was constrained by cost overruns. I intended to integrated M-Pesa online
payment which needed a lot money to acquire M-Pesa and formalities to enable online payments.

28
ANDROID BASED MEAL BOOKING SYSTEM

2. M-Pesa till number that enhances online payment and ended up simulating using M-Pesa
sandbox for simulation.

3. Less literature review on the meal booking system that uses online payment through M-pesa.
6.4 Recommendations
The following are the recommendation for Android Based Meal Booking System:
1. Ensure that ABMBS is available at all times. It is very crucial to ensure that Android
Based Meal Booking System has the full trust from its users. Breakdown of the system
will cause loss of trust.
2. Till number that allows online payment should be acquired to enhance meal booking and
enhance payment to the catering unit account.
3. Create awareness among the users so that they aware of the usability of the system in
general.
4. Continual redesign of the System. Many online users get “bored” with the same user
interface over time and may opt to go other opt for the old methods.

6.2 Conclusions
The main goal was to develop mobile application that can be used book meals by Dedan Kimathi
University students and catering unit staff hence address the need of users on saving time and
discouraged manual update between cashier and people in the kitchen.

The opportunity that exists in DKUT concerning meal booking is not well utilized thus mobile
application comes in handy to offer a solution.

The proposed solution is android based mobile application that was designed, developed and
tested for use by DKUT students.

29
ANDROID BASED MEAL BOOKING SYSTEM

References
University (2018). Meal booking help documents. Retrieved from:
https://www.ru.ac.za/residential operations/meal bookings/

Floyd et al.: STEPS to software development with users. In: Ghezzi, C.; McDermid, J.A. (eds.):
ESEC’89: Lecture Notes in Computer Science Nr. 387; Berlin: Springer 1989.

Christian Dawson 2013, Software Development Process: A Technique for Evaluation and
Decision-Making, Knowledge and Process Management.

Boehm and B. W (1988).: A Spiral Model of Software Development and Enhancement; IEEE
Computer 21, 1988.

University, M. (2018). meals. [online]. Availableat:https://www.murrayedwards.cam.ac.uk/step-


step-guide-using-meal-booking-system.

Houghton Mifflin, (1981). ; Penguin Books

Beck and K.: extreme Programming Explained: Embrace Change; Addison-Wesley, 2004 (2 nd
Edition).

Ken Black (2004). Business statistics for contemporary Decision Making (fourth (Wiley student
Edition for India) ed.).

  Beynon-Davies, Paul (2004). Database Systems. Basingstoke, UK: Palgrave: Houndmills. 

Chen and Peter (March 1976). "The Entity-Relationship Model - Toward a Unified View of
Data". ACM Transactions on Database Systems. 1 (1): 9–36.

 Jerry Gao; H.-S. J. Tsao; Ye Wu (2003).  Testing and Quality Assurance for Component-based
Software

30
ANDROID BASED MEAL BOOKING SYSTEM

Appendix
Sample questionnaires

Hello interviewee, please help us collect information about the current system-. The information
given in this interview is meant for coming up with a long lasting solution to provide quality and
timely services to all our students. Information will be kept confidential and will NOT be used for
any other purpose.
STUDENTS QUESTIONS.
Please answer the questions according to your opinion, there are no penalties for your response.

1. How often do you take your meals in the


university mess? 2. Have you ever missed a meal (of your
 Everyday choice) in the university mess?
 Twice a week  Yes
 More than twice a week  No

3. If yes, how often? 4. Rate the current system of the university


 Less often mess (1-5)
 Often  One
 More often  Two
 Very often  Three
 Four
 Five

5. Have you ever booked meal online? 6. If yes, did you like it?
 Yes  Very much
 No  Yes

31
ANDROID BASED MEAL BOOKING SYSTEM

 No

7. In scale of 1 to 10, how will recommend 8. Is online recommended system likely to


online meal booking in the university change the number of times you will the
mess? meals in the university mess?
 8-10-highest (highly recommended)  Yes, positively
 5-7-moderately recommended  No
 3-4-not recommended  Yes, negatively
 1-2-lowest (highly discouraged)

STAFF QUESTIONS UNIVERSITY CATERING SECTION.


Please answer the questions according to your opinion, there are no penalties for your response.

3. Who do you serve? Tick all that apply 4. How many meal varieties do you offer?
 Students  Less than 5
 Lecturers  5-20
 Guest  Above 20
 Any other

5. In scale of 1-5,5 being the highest, rate the 6. Have you ever thought of venturing into online
current system? meal booking system?
 One  Yes
 Two  No
 Three
 Four
 Five

32
ANDROID BASED MEAL BOOKING SYSTEM

7. If yes, what was the challenge?

8. How you ever received complaints from 1. If yes, how often(appropriate)


students about your current meal system?  0-2 a week
 Yes  3-5 a week
 No  More than 5 a week
THANK YOU FOR YOUR RESPONSE.

Gantt Chart

33
ANDROID BASED MEAL BOOKING SYSTEM

Software Resources
 Operating system (windows 8.0, windows 8.1, windows 10, Ubuntu).
 Android studio.
 MYSQL database.
 Apache server.
 Sandbox for testing M-Pesa payments
 Android phone.

User Manual
Log in –Tasks for cashier and administrator
1. Go to meal.shulemall.com

2. In the home page click “login” in the top right of the home page

3. Enter your username and password

4. Click "Login."

Add users – Task for administrator only

34
ANDROID BASED MEAL BOOKING SYSTEM

1. Go to meal.shulemall.com and login

2. Click on “create accounts” button

3. Fill in the registration form with the details

4. Click “Create Account “button

5. Click go back to view details of registered user

Delete Users/Edit details – Task for Administrator only

1. Admin logs in as a normal user but has overall privileges

2. Click on “Registered Accounts” button

3. Click delete Icon /edit Icon alongside the name of the user you want to delete /edit

4. Click “Edit Account” to save details.

35
ANDROID BASED MEAL BOOKING SYSTEM

Manage Meals – Task for Cashier only

1. Login to your account

2. Click on manage meals link

3. Click on “Cart Icon”

4. Input the quantity ordered.

5. Click on “Add to Orders” button.

6. Go to saved orders on the top left corner.

7. Enter the cash.


8. Click on “check out and print”

36
ANDROID BASED MEAL BOOKING SYSTEM

Manage orders - Task for Cashier only

1. Login to your account

2. Click on “manage orders “link

3. Click “printer icon”

4. Click on “submit and print”


5. Click on print.

Manage Reports - Task for Cashier only

1. Login to your account

2. Click on “manage reports” link

3. Click “report icon”

4. Click on “submit and print”


5. Click on print.

Add meals – Chef only

1. download and install

2. login to your account

3. Click “addition icon”

4. Input meal name, quantity and price

5. Click on add button


6. Click on meal list or add new meal link

37
ANDROID BASED MEAL BOOKING SYSTEM

Delete meal-task for chef only


1. Login to your account

2. Click on “delete icon” against food list

Order meals-task for students only

1. Login to your account

2. Click on “cart icon” in the middle.

3. Click on “cart icon” on the right top corner

4. Click on “checkout button”

5. Input phone number

6. Click on “pay button”


7. Input Mpesa Pin
8. Click on Verify
9. Wait for mpesa message

Delete meals from cart

1. Login to your account

2. Click on “cart icon “to navigate to list of meals in the cart

3. Click on “delete icon” alongside the meal you want to delete

Log Out –task for Cashier and administrator

38
ANDROID BASED MEAL BOOKING SYSTEM

1. Click on “logout button” on top left corner

39

You might also like