Food Delivery Mobile Application

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

HOME TOWN 19 ANDROID MOBILE GAME

By

Mahboob

2016-GCUF-072146

Project submitted in partial fulfillment of the requirements for


the degree of

BACHOLAR OF SCIENCE

(BS) IN

COMPUTER SCIENCE

DEPARTMENT OF COMPUTER SCIENCE


GOVERNMENT COLLEGE UNIVERSITY,
FAISALABAD
September, 2020

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.

Signature of the Student:

Registration No. 2016-GCUF-072146

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

Signature with Stamp……………………………

iii

III
Table of Contents
1 Analysis 1

1.1 Introduction 2

1.1.1 Purpose 2

1.1.2 Scope 2

1.1.3 Document Overview 3

1.1.4 Definitions and Acronyms 4

1.2 System Architecture 13

1.3.1 Project Deliverables 13

1.4 Project Organization 14

1.4.1 Process Model 14

1.5 Managerial Process 15

1.5.1 Managerial Objectives 16

1.5.2 Monitoring and Controlling Mechanisms 16

1.5.3 Risk Management 16

1.6 Work Schedule 17


1.6.1 Schedule 17

1.6.2 Phase1 17

1.6.3 Phase2 18

1.6.4 Phase3 18

1.6.5 Phase4 19

2 Software Requirements Specifications 20

2.1 Software Requirements Specifications 21

2.1.1 Purpose 21

2.1.2 Scope 21

2.1.3 Overvie 22

2.2 Overall Description 22

2.3 Requirements Specifications 22

2.3.1 Performance 22

2.4 Graphical User Interface 23

2.4.1 Accessibility 23

2.4.2 Performance 24

2.4.3 Security 24

2.4.4 Supportability 24

2.4.5 Configuration Management Tool 24

2.4.6 Design Constraints 24

2.4.7 Purchased 24

2.4.8 Interfaces 24

2.5 HOMETOWN19 Use Case 25

2.6 HOMETOWN19 Class Diagram 31


2.7 HOMETOWN19 Collaboration Diagram 35
3 Implementation 36

3.1 Working 37

3.2 Activity Main.XML 38

3.3 Android Manifest.XML 40

3.4 Main Activity.Java 46

4 Software Architecture and Design 52

4.1 Architecture and Design 53

4.2 Design Goals 54

4.3 System Behaviour 55

4.4 Logic View 55

4.4.1 High level Design 56

5 Testing 57

5.1 Sign-Up Test Case 58

5.2 Login Test Case 61

5.3 Sign-Up Test Case 62

6 Features 63

6.1 HOMETOWN19 Features 63

6.1.1 Welcome Screen 64

6.1.2 Profile 65

6.1.3 Main Menu 66

6.1.4 Admin Penal 67

6.1.5 Add Cart 68

6.1.6 Help 69

6.1.7 Recent 70

6.1.8 Check-Out 71

6.1.9 Statistics 71
List of Figures

1.1 Waterfall Model 9

1.2 Spiral Model 11

1.3 QRF Architecture 13

1.4 Process Life-cycle 15

2.1 ONLINE Food Delivery use case 25

2.2 Login architecture 26

2.3 ONLINE Food Delivery class diagram 31

2.4 SSD of login Activity 32

2.5 Use case diagram for Login 33

2.6 SSD for sign up 34

2.7 LB Collaboration Diagram 35

4.1 System Behaviour 55

4.2 High Level Design Architecture 56

6.1 Welcome Screen 64

6.2 Profile 65

6.3 Main Memory 66

6.4 Admin Penal 67

6.5 Add to Cart 68

VIII
6.6 Help 69

6.7 Recent 70

6.8 Checkout 71

6.9 Category 72

6.10 Fire-based Databas 73


Acknowledgement

Firstly, we are thankful to ALLAH ALMIGHTY who blessed us with knowledge to


complete this project. I truly acknowledge the cooperation and help make by teachers
and also the Project Coordinator of Department of Computer Science of
Government College University Faisalabad for his help and guidance throughout this
project. He has been a constant source of guidance throughout the course of this project.
He helped in requirement gathering and specification.

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

1.1.5 Definitions and Acronyms


Term Description

XML Extrinsic Markup Language

SDLC Software development Life cycle

SDM Software Development Methodology

APM Agile Project Management

XP Extreme Programming

DSDM Dynamic Systems Development Method

FDD Feature-Driven Development

Table # 1.1 :Definitions and Acronyms

 XML

XML is the abbreviation for Extensible Markup Language and is an established


data exchange format. XML was defined 1998 by the World Wide Web
Consortium (W3C).An XML document consists of elements; each element has a
start tag, content and an end tag. An XML document must have exactly one root
element (i.e., one tag which encloses the remaining tags). XML differentiates
between capital and non-capital letters.

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.

1.1.6 Current Process


1.2 Model Used
1.2.1 Waterfall Model
Waterfall model is a sequential life cycle model which used in software development.
Waterfall model consists of all the information of the customer needs. There are various
stages like from top to bottom requirement analysis, then design, implementation, testing
and then finally maintenance
Water Fall Model Architecture

Figure 1.1 :Water Fall Model Architecture

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

Figure 1.2: 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

Once preliminary design is created, then first prototype of a new system


constructed and scaled down as the version of final product. Same did for the
Hand Writing Machine also. First, the sketches created, then wireframes and then
Step
4 finally the main design.

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 System Architecture

1.3.1Project Deliverables
1.4Project Organization

1.4.1 Process Model

1.5Managerial Process

1.5.1Management Objectives
1.5.2Monitoring and Controlling Mechanisms

1.5.3Risk Management

1.6 Work Schedule

1.6.1 Schedule
Issues
 was agreed to be the overriding decision factor.

1.6.2 Phase 2: Software Design


Issues
1.6.3 Phase 3: Software Implementation
Issues
1.6.4 Phase 4: Software Testing
Issues
Chapter 2
Software Requirement And
Specification
2.1 Software Requirements Specification

2.1.1 Purpose

2.1.2 Scope
2.1.3 Overview
2.2 Overall Description

2.3 Requirements specifications

The specific requirements are –

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

Figure 2.6:SSD for Sign Up


2.7 Collaboration Diagram

Figure 2.7: Collaboration Diagram


Chapter 3
Implementation
3.1 Working

Table 3.1: Tools and Techniques


3.2 Activity_main.xml

Figure 3.1: Main Activity

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

4.2 Design Goals

4.3 System Behavior

Figure 4.1:System Behavior


4.4 Logical View

4.4.1High-Level Design (Architecture)

The high-level view or architecture consists of following major components:

Figure 4.2: High Level Design Architecture


Chapter 5
Testing
5.1 Signup Test Case

TC# 01 Date created: 20/06/20 Created by: M.Umar

Requirement# 01

Description User will be moved to add Cart page after click any item.

Steps Click/Touch item option

Click/Touch add cart

Step Type Description Expected Actual P/F

1 Test User will be User will see After Pass


to moved to add Add Cart click/touch
pass Cart page after button, after item add card
click any item. clicking this button will
button he will pop up ,then
move towards we will
add cart page. touch/click
this button and
item will be
added to cart.

Table 5.1:Add Cart test Case

58
Item Input Test Expected Result P/F Date
Type

1.1 Click/Touch category Test to Food category Pass 20/06/20


tab pass will be displayed.

1.2 Click/Touch Test to Further items Pass


Category item pass regarding this
Pass
category will
Test to appear.
pass

Operating system Environment Software used Version

Android Java environment Android studio Android 3.0.1

JDK Photoshop Photoshop CS5

SDK
Executed on Executed bypassed/Failed
5.2 Login Test case

Use Case ID User

Use Case Name Login

Actors Administrator

Use Case Diagram

Login

Description This use case describes the process of login verification for the
users of the system

Pre-Condition Database should be connected.

Primary Scenario Step 1. The user will provide number and password

Step 2. The user will click login Button.

Step 3. The system will validate the login information.

Step 4. The system will show main Application.

Secondary Scenario 1. The administrator can click exit to close the application.

Exceptions Step 2. Username/Password not supplied.

Step 3. Username/Password is not valid.

Step 5. Unable to connect to database, the application will be


closed.

Post-Condition The system shall apply the proper access rights defined for the
current user.

Table 5.2:Login Test Case


5.3 SignUp Test Case
Use Case ID UC-02

Use Case Name Sign up User

Actors Administrator, High Authority

Use Case
Diagram
Create User

Administrator

Description This use case describes the process Creating the users for the
system

Pre-Condition Database should be connected.

Primary Scenario Step 1. The user will provide number and password

Step 2. The user will click save button.

Step 3. The system will validate the create user information.

Step 4. The system will save the entered information into the
database.

Step 5. The system will show the main Application.

Secondary 1. The administrator can close the application.


Scenario

Exceptions Step 1. Name, number, password not supplied.

Step 2. Unable to connect to database, the application will be


closed.

Post-Condition The system shall apply the proper access rights defined for the
current user.

Table 5.3:SignUp Test Case


Chapter 6
Features

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy