Food Delivery Mobile Application
Food Delivery Mobile Application
Food Delivery Mobile Application
By
Mahboob
2016-GCUF-072146
BACHOLAR OF SCIENCE
(BS) IN
COMPUTER SCIENCE
I
DECLARATION
The work reported in this thesis was carried out by me under the supervision of
Mr. Saadullah Haris Department of Computer Science GC University, Faisalabad Pakistan.
I hereby declare that the title of documentation HOMETOWN19 ANDROID MOBILE
GAME and the content of project are the product of my own research and no part has been copied
from any publish source (except the references, standard mathematical or genetic models
/equations /formula/protocols etc.). I further declare that this work has not been submitted for
award of any other degree /diploma. The University may take action if the information provided is
found inaccurate at any stage.
II
CERTIFICATE BY THE PROJECT SUPERVISOR
We certify that the contents and form of thesis submitted by Mr.Mahboob, Registration
No. 2016-GCUF-072146 has been found satisfactory and in accordance with the
prescribed format. We recommend it to be processed for the evaluation by the
External Examiner for the award of degree.
Internal Examiner
Name:
Signature:
External Examiner
Name:
Signature:
Chairperson
iii
III
Table of Contents
1 Analysis 1
1.1 Introduction 2
1.1.1 Purpose 2
1.1.2 Scope 2
1.6.2 Phase1 17
1.6.3 Phase2 18
1.6.4 Phase3 18
1.6.5 Phase4 19
2.1.1 Purpose 21
2.1.2 Scope 21
2.1.3 Overvie 22
2.3.1 Performance 22
2.4.1 Accessibility 23
2.4.2 Performance 24
2.4.3 Security 24
2.4.4 Supportability 24
2.4.7 Purchased 24
2.4.8 Interfaces 24
3.1 Working 37
5 Testing 57
6 Features 63
6.1.2 Profile 65
6.1.6 Help 69
6.1.7 Recent 70
6.1.8 Check-Out 71
6.1.9 Statistics 71
List of Figures
6.2 Profile 65
VIII
6.6 Help 69
6.7 Recent 70
6.8 Checkout 71
6.9 Category 72
MAHBOOB
2016-GCUF-
072146
Chapter 1
Analysis
1
1.1Introduction
1.1.1 Purpose
1.1.2 Scope
Scope of this project is
1.1.3 Document Overview
1.1.4 The Purpose of the Project
XP Extreme Programming
XML
An XML file must be well-formed. This means that it must apply to the following
conditions:
An XML document always starts with a prolog (see below for an explanation of
what a prolog is)
Every opening tag has a closing tag.
All tags are completely nested.
A valid XML file is well-formed and must contain a link to an XML schema and
be valid according to that schema.
SDLC
SDLC is a process followed for a software project, within a software organization.
It consists of a detailed plan describing how to develop, maintain, replace and
alter or enhance specific software. The life cycle defines a methodology for
improving the quality of software and the overall development process.
SDM
In software engineering, a software development process is the process of
dividing software development work into distinct phases to
improve design, product management, and project management. It is also known
as a software development life cycle. The methodology may include the pre-
definition of specific deliverables and artifacts that are created and completed by a
project team to develop or maintain an application.
APM
Agile project management is an approach based on delivering requirements
iteratively and incrementally throughout the project life cycle. At the core of agile
is the requirement to exhibit central values and behavior of trust, flexibility,
empowerment and collaboration.
XP
Extreme Programming (XP) is an agile software development framework that aims to
produce higher quality software, and higher quality of life for the development team.
XP is the most specific of the agile frameworks regarding appropriate engineering
practices for software development.
DSDM
Dynamic systems development method (DSDM) is an agile project delivery
framework, initially used as a software development method. First released in
1994, DSDM originally sought to provide some discipline to the rapid application
development (RAD) method. In later versions the DSDM Agile Project
Framework was revised and became a generic approach to project management
and solution delivery rather than being focused specifically on software
development and code creation and could be used for non-IT projects. The DSDM
Agile Project Framework covers a wide range of activities across the whole
project lifecycle and includes strong foundations and governance, which set it
apart from some other agilemethods. The DSDM Agile Project Framework is
an iterative and incremental approach that embraces principles of agile
development, including continuous user/customer involvement
FDD
Feature-Driven Development (FDD) is a client-centric, architecture-centric, and
pragmatic software process. The term "client" in FDD is used to represent what
Agile Modeling (AM) refers to as project or eXtreme Programming (XP) calls
customers. FDD was first introduced to the world in 1999 via the book Java
Modeling in Color with UML, a combination of the software process followed by
Jeff DeLuca's company and Peter Coad's concept of features. FDD was first
applied on a 15 month, 50-person project for a large Singapore bank in 1997,
which was immediately followed by a second, 18-month long 250-person project.
A more substantial description is published in the book A Practical Guide to
Feature-Driven Development as well as the Feature web site.
As the name implies, features are an important aspect of FDD. A feature is a
small, client-valued function expressed in the form <action><result><object>. For
example, "Calculate the total of a sale", "Validate the password of a user", and
"Authorize the sales transaction of a customer". Features are to FDD as use
cases are to the Rational Unified Process (RUP) and user stories are to Scrum -
they're a primary source of requirements and the primary input into your planning
efforts.
Explanation
In a waterfall model there are five stages that are following:
1. Requirement Analysis
2. Design
3. Coding
4. Testing
5. Maintenance
1. Requirement Analysis
The first phase in this cycle is requirement analysis from the customer point of
view. So, in the project, hand writing machine has been created and also reliable
for a person rather than work manually.
2. Design
In a this phase designing concept is there, where project defined the architecture
of software, hardware, components, data interface, modules and more in terms of
satisfying the customer. What language used while programming the project, IDE
all consider under in this stage. In this stage, user interface addressed, including
accessibility and navigation related issues.
3. Coding
In this stage of waterfall model is the implementation phase, which deals with the
product construction depends on design specification. This step consists of many
programmer but as this is individual project only one programmer is a part of this
stage. In this step, we also write coding for sense the characters etc.
4. Testing
In next stage of waterfall model is testing where there are different types of
testing like unit testing, system testing, integration testing, acceptance testing and
more. In this components are verified properly to ensure that they do not consist
of any error or any other problem. If suppose the error has occurred then
programmer work on that part.
5. Maintenance
Every testing is different from each other like unit testing if for testing the
individual modules, in project this testing helps in checking the small components
of the project. Then, system testing through which product tested and next is
acceptance testing which conducted on behalf of customers.
1.2.2 Spiral Model
Spiral model is also software development model but is also known as risk driven process
model. The prior focus of Spiral model is on the unique risk patterns. Spiral model allows
the team members to adopt elements in respect to completion of project.
Spiral Model Architecture
Explanation
Spiral model is a combination of prototyping model and waterfall model. It meant for
expensive, complicated and large models. There are many steps in spiral model and as
follows:
Step1
In the first step, define the queries or problems with in detail by interviewing the
clients and users of the system, also if possible studying any existing system. So,
project in the starting stage it discussed about the hand writing machine
problems. What problems people faced while working manually. Also conducted
online surveys, interviews people about it.
Step2
A particular preliminary design is created for the project. Like in this case, CNC
Step3
(Computer Numerical Control) kit has been create
Now in forth step, second prototype is derived with the help of following ways:
Evaluate the strengths, risks and weakness of the first prototype.
Explain the requirements of second prototype.
Proper planning and designing of the second prototype
Lastly, construction and testing the second prototype appropriately.
Step5
This is very crucial step from customer point of view, if they think development
cost over . Runs, miscalculation of operating cost or any other factors that might
create some problem for
the product, they can decide to scrap the complete project.
Step6
Create the new prototype if required by the customer.
Step7
Iteration is done until customer is not completely satisfied with the final product.
Step8
Final system Construction.
Step9
Lastly, final project is thoroughly tested, evaluated and proper routine
maintenance carried out for the long life of the project.
Project followed exactly the same steps as described by the Spiral Model. In the
end, I did the evaluation also and feedbacks are just awesome. The biggest
advantage of using the spiral model is the estimation if schedule and budget
become more realistic. Cope up with changes is really very easy inherent to
software development.
1.3.1Project Deliverables
1.4Project Organization
1.5Managerial Process
1.5.1Management Objectives
1.5.2Monitoring and Controlling Mechanisms
1.5.3Risk Management
1.6.1 Schedule
Issues
was agreed to be the overriding decision factor.
2.1.1 Purpose
2.1.2 Scope
2.1.3 Overview
2.2 Overall Description
2.3.1 Functionality
2.4 Graphical User Interface
Android Based Product
There are no memory requirements. The computers must be equipped with android
mobile storage such as internal storage. The product must be stored in such a way that
allows the client easy access to it. Response time for loading the product should take no
longer than five minutes. A general knowledge of basic computer skills is required to use
the product.
2.4.1Purchased Components
Not Applicable
2.4.8Interfaces
There are many types of interfaces as such supported by the Online Food Delivery system
namely; User Interface, Software Interface and Hardware Interface.
User Interfaces
2.5 Use Cases
# UC1
Use case Title:
Description:
Primary Actor:
Pre-Condition:
Post-Condition:
# UC2
Use case Title:
Description:
Primary Actor:
Pre-Condition:
Post-Condition:
# UC 3
Use case Title:
Description:
Primary Actor:
Pre-condition:
Post-Condition:
# UC4
Use Case Title:
Description:
Primary Actor:
Pre-Condition:
Post-Condition:
2.6 Class Diagrams
System Sequence Diagram (SSD):
Login User
SignUp
38
39
Chapter 4
Software Architecture and
Design
4.1 Architecture and design
1. Logical View
2. Process View
3. Development
4. Use Case View
Requirement# 01
Description User will be moved to add Cart page after click any item.
58
Item Input Test Expected Result P/F Date
Type
SDK
Executed on Executed bypassed/Failed
5.2 Login Test case
Actors Administrator
Login
Description This use case describes the process of login verification for the
users of the system
Primary Scenario Step 1. The user will provide number and password
Secondary Scenario 1. The administrator can click exit to close the application.
Post-Condition The system shall apply the proper access rights defined for the
current user.
Use Case
Diagram
Create User
Administrator
Description This use case describes the process Creating the users for the
system
Primary Scenario Step 1. The user will provide number and password
Step 4. The system will save the entered information into the
database.
Post-Condition The system shall apply the proper access rights defined for the
current user.