[go: up one dir, main page]

0% found this document useful (0 votes)
13 views73 pages

My Documentation

The document presents a project report for 'Build Pro App', developed by Maryam Shahzadi and Maneeba Mehmood under the supervision of Sir Umar Bashir at Government College University, Faisalabad. The app aims to connect skilled professionals like plumbers and electricians with customers seeking their services, facilitating easier communication and job management. It includes sections on project feasibility, system requirements, design, implementation, and user roles, highlighting its potential impact on the construction industry.

Uploaded by

Iqra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views73 pages

My Documentation

The document presents a project report for 'Build Pro App', developed by Maryam Shahzadi and Maneeba Mehmood under the supervision of Sir Umar Bashir at Government College University, Faisalabad. The app aims to connect skilled professionals like plumbers and electricians with customers seeking their services, facilitating easier communication and job management. It includes sections on project feasibility, system requirements, design, implementation, and user roles, highlighting its potential impact on the construction industry.

Uploaded by

Iqra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 73

Government College University, Faisalabad

Build Pro App

Supervised By

Sir Umar Bashir

Submitted By

Student Name University Roll No

Maryam Shahzadi 685691

Maneeba Mehmood 685710

Department of Computer Science Govt. Islamia Graduate College,


Faisalabad 2020-2024
CERTIFICATE

This is to certify that Maryam Shahzadi & Maneeba Mehmood bearing registration
numbers 2020-GCUF-058363 and 2020-GCUF-069307 has completed the final project
titled as “Build Pro App” At the department of computer science, Govt. Islamia graduate
College Faisalabad to fulfill the partial requirement for the degree of BSCS.

Supervisor

Sir Umar Bashir Signature:____________

Internal Panel

Member1: Sir Umar Bashir Signature:____________

Member2: Sir Bilal Signature:____________

Head of Department

Signature:____________

Department of Computer Science

Govt. Islamia Graduate College

Sarghoda Road, Faisalabad


DECLARATION
The Work reported in this project was carried by us under the supervision of Sir Umar
Bashir at Govt. Islamia Graduate College Faisalabad.

We hereby declare that this project and contents of the project are the product of our own
work and is not done by any other person.

We further declare that this work has not been submitted for award of any other degree.
The institution may take action if the provided information is found inaccurate at any
stage.

Name: Maryam Shahzadi Signature:____________

Reg no: 2020-GCUF-058363

Name: Maneeba Mehmood Signature:____________

Reg no: 2020-GCUF-069307


ACKNOWLEDGEMENT
we really feel extremely privileged to take this chance to precise our heartiest gratitude
and deep sense of in depth to Head of institution in regard to this kind and scholastic
guidance eager curiosity and constant encouragement.

We are thankful to ALLAH and our respected teacher because my teachers efforts are so
important for us. We were not able to perfume this task and we cannot complete this
project without their hard work. Thank to our family and our teacher for their trust and
support.

My special and heartly thanks to supervisor Sir Umar Bashir, who encouraged and
directed us. His challenges brought this work towards a completion. It’s because of him
we achieved this task and this project came into existence.
ABSTRACT
People face many problems to find expert plumbers, technician, electrician and builders to
fulfill their requirements. In this app they easily find expertise for their work. They can
also make an account in this app to find different expertise in their daily life.

In this app expertise (plumber, technician, electrician and builders etc) can also make an
account to find customers. In this way they easily run their work and earn better.

.
Table of Contents
CHAPTER NO 1: INTRODUCTION................................................................................1

1.1 Introduction to Project...............................................................................................2

1.2 Purpose of Project.....................................................................................................2

1.3 How it works.............................................................................................................3

1.4 Scope of Project.........................................................................................................3

1.5 Feasibility..................................................................................................................3

1.5.1 Technical Feasibility..........................................................................................4

1.5.2 Operational Feasibility.......................................................................................4

1.5.3 Economic Feasibility..........................................................................................4

1.5.4 Information Feasibility.......................................................................................4

1.5.5 Motivational Feasibility.....................................................................................4

1.5.6 Legal and Ethical Feasibility..............................................................................5

1.6 Risk Management......................................................................................................5

1.7 Project Planning........................................................................................................5

1.8 Project Modules.........................................................................................................6

CHAPTER NO 2: BACKGROUND AND PROBLEM DEFINITION.............................7

2.1 Background Research................................................................................................8

2.2 Existing Technology..................................................................................................9

2.3 Area of Study.............................................................................................................9

2.4 Reason of the Project.................................................................................................9

2.5 Objectives of the Project.........................................................................................10

CHAPTER NO 3: SYSTEM REQUIREMNT ANALYSIS.............................................11

3.1 System Functional Requirements............................................................................12

3.2 System Non-Functional Requirements....................................................................12

3.2.1 Performance.....................................................................................................12
3.2.2 Safety................................................................................................................12

3.2.3 Security............................................................................................................13

3.2.5 Portability.........................................................................................................13

3.2.8 Usability...........................................................................................................13

3.2.9 Maintainability.................................................................................................13

3.2.10 Reusability......................................................................................................13

3.2.11 Efficiency.......................................................................................................13

3.3 Hardware and Software Requirements....................................................................14

Storage: 1GB.............................................................................................................14

CHAPTER NO 4: SYSTEM DESIGN.............................................................................15

4.1 Use Cases................................................................................................................16

4.1.1 Registration......................................................................................................16

Table 4.1 Registration Use Case...............................................................................16

4.2 Login...................................................................................................................18

4.2.2 User Profile......................................................................................................20

4 Upload jobs............................................................................................................22

5 View for job...........................................................................................................23

6 View and delete own jobs......................................................................................24

7 Upload your expert job...........................................................................................25

8 View found items...................................................................................................26

9 View and delete own found items..........................................................................27

10 Logout..................................................................................................................28

CHAPTER NO 5: IMPLEMENTATION AND TESTING..............................................31

5.1 Testing Methods......................................................................................................32

5.1.1 Black Box Testing............................................................................................32

5.1.2 White Box Testing...........................................................................................32


5.1.3 Unit Testing......................................................................................................32

5.1.4 Integration Testing...........................................................................................32

5.1.5 System Testing.................................................................................................32

5.1.6 Acceptance Testing..........................................................................................33

5.1.7 Performance Testing........................................................................................33

5.1.8 Security Testing...............................................................................................33

5.1.9 Compatibility Testing.......................................................................................33

5.2 Test Cases................................................................................................................34

5.2.1 Registration......................................................................................................34

5.2.2 Login................................................................................................................35

5.2.3 User Profile......................................................................................................36

5.2.4 Upload job........................................................................................................37

5.2.5 View for job screen..........................................................................................38

5.2.6 View and delete own job..................................................................................39

CHAPTER NO 6: USER MANUAL................................................................................40

6.2 Login Screen............................................................................................................42

6.3 Signup Screen..............................................................................................................43

6.4 User Profile Screen.....................................................................................................44

6.5 Main Screen................................................................................................................45

6.6 Upload Job Screen......................................................................................................46

CHAPTER NO 7: USER ROLES & PERMISSIONS.......................................................42

7.1 Types of users............................................................................................................47

7.1.1 Admin..................................................................................................................47

7.1.2 Professionals.......................................................................................................47

7.1.3 Clients.................................................................................................................47

7.2 Permission based on user roles..................................................................................47


7.3 Role specific user journey..........................................................................................47

7.3.1 Admin workflow.................................................................................................47

7.3.2 Professional workflow........................................................................................47

7.3. Client workflow....................................................................................................47

7.4 Security measures for user roles................................................................................47

7.5 Future enhancement for user roles.............................................................................47

CHAPTER NO. 8 PROJECT MANAGEMENT FAETURES..........................................47

8.1 Overview....................................................................................................................47

8.2 Project assignment and scheduling............................................................................47

8.3 Real time collaboration and communication.............................................................47

8.4 Resource and management.........................................................................................47

8.5 Time tracking and workload.....................................................................................47

8.6 Real time collaboration and communication.............................................................47

8.7 Real time collaboration and communication.............................................................47

8.8 Issue reporting and budget management...................................................................47

8.9 Review and feedback system....................................................................................47

8.10 Analytics Report......................................................................................................47


CHAPTER NO 1: INTRODUCTION

1
1.1 Introduction to Project

In our daily life we all look for job that is very difficult in this Era. Many expertise are
jobless just because no one knows about their talent. On other side in our daily life
sometime we need expert workers to fulfill our need, but it’s very difficult to found good
workers on time. To solve this problem, we built this app where both worker or customer
can ease their problems. where finders can be directly linked to customer using mobile
app.

In this period of mobile phones, devices and technology, everyone carries objects
such as laptops, phones etc. which are of great value and also due to this mobility, are
very inclined to lose such objects. In this regard, we will develop a mobile application
that will help the users to solve their own problems with the help of their mobile. This
mobile application will enable the end user to describe the details about his expert join
and about his need also this application will provide two main screens, Worker &
Customer screens. Worker screen is for user who is look for job and the Customer screen
is for user who look for expertise to fulfill his need from anywhere. Our app will provide
the functionality to allow both the parties to communicate with each other.

1.2 Purpose of Project

Build Pro is a mobile application designed to revolutionize communication and project


management within the construction industry. It caters to various skilled professionals
including electrician, builder, plumber and technician.

This focuses on core features to launch the app quickly and validate the concept:

• User Profile

• Job Board

• To Communicate with each other(worker & customer)

• To keep track of both worker and customer

2
• To get notified of customers need

1.3 How it works

When user will run the app the first interface that will appear on the screen is the login
screen. The user will login in to app if having correct email and password and if it not has
an account then it will move to the signup screen and create an account. After creating
account, the user will see the user profile screen and the user will provide the basic
details. After the user profile screen, the user can upload about his expert job and his
need. User can see own job and those jobs which are uploaded by other users. Every user
can see those jobs and customer needs which are added by user himself.

1.4 Scope of Project

Our project is very useful for all types of people who want to find jobs. The scope of our
mobile application is

• This app will help to find jobs, and good workers according to need.

• Worker and Customer can be searched.

• User can upload details of his expert job.

1.5 Feasibility

The feasibility of this project is to check and verify by all resources and it can develop and
used by all people. Feasibility studies also help project managers and stakeholders:

• Understand all aspects of the project feasibility

• Find potential problems during the project's implementation

• Determine the viability of the project

• Define alternative solutions to obstacles

3
• Enhance project success by analyzing data from multiple sources

• Identify obstacles and challenges

1.5.1 Technical Feasibility

My project is completely feasible within the limits of current technology. Now a days,
technology is used in almost every android handset. Both software and hardware are
required for this application, and it integrates with a firebase database so there won’t be
any technical issues regarding to feasibility. Following are the technical elements of our
project:

• XML

• Java

• Firebase database

1.5.2 Operational Feasibility

The operational feasibility of our project depends on following elements:

• An android Operating System

• Any android Mobile Device with Internet facility.

1.5.3 Economic Feasibility

The project is feasible by the cost and we don’t need more money on this project to
develop it. This project is one-time paid cost project and we don’t need to waste more
money on its maintenance.

1.5.4 Information Feasibility

The project while based on the modern and advanced terminologies, it will provide
feasibility, reliability and will be consistent.

4
1.5.5 Motivational Feasibility

Our product will be self-explanatory nature and the end user would not require intensive
training session or learning material for using our mobile app. The end user will have no
confusion about whatever he/she wants to do. The graphical user interface (GUI) of
product will be so attractive and user friendly that it will motivate the end user about use
of our mobile app so that user will have a feeling of ease and contentedness while
interacting with our mobile application.

1.5.6 Legal and Ethical Feasibility

This project supports legally and ethically to the entire application user. We provide our
disclaimer and or policy to user. We have specific legal rights and user may also have
other legal rights that vary from state to state. In our project there is no ethical issue as it
has no copied material and any copyright violation content.

1.6 Risk Management

Risk management is done by making a risk management strategy all the deliverables are
delivered on time and done in limits constraints so that the project may not over runs time
and budget. Complexity is managed by providing easy and simple interface to the user.

• Budget may over run.

• Time may over run.

• Complexity management is done.

• Verification risks.

• Validation Risks.

So, we handle risks through proper strategy management and scenarios. Main strong this
is project work and deployment timelines. It is the best suited option for the better
management of the product. In house command and control system also help us to
understand and control the working tasks and implementation done by the team. Handel

5
the time and their values is more critical option all the time. We manage it through our
team work and management.

1.7 Project Planning

A project plan, also known as the project management plan, is the document that
describes how the project will be executed, monitored, controlled, and closed. Project
Planning involves following steps which are required for the development of the project.

• Identify all stakeholders

• Define roles and responsibilities

• Hold a kickoff meeting

• Define project scope, budget, and timeline

• Set and prioritize goals

• Define deliverables

• Create a project schedule

1.8 Project Modules

The entire project consists of only one module which is user panel. Some of the features of
the user panel are listed below

• Login

• Signup

• User Profile

• Upload jobs

• View for job

6
• Logout

7
CHAPTER NO 2: BACKGROUND AND PROBLEM
DEFINITION

2.1 Background Research

In literature, different scientist has done the work on proposed project as given in the
following diagram.

8
Figure 2.1 Literature Review

2.2 Existing Technology

In old time technology was not common therefore to find a job was very difficult due to
manual method. Technologies often has an important role to play and are the key to

9
success in competing with the world. Now a days with the advancement in technology
mobile phone ease our life. Thus, the working approach of the people has changed a lot.
Now a day’s time and money matter a lot. So, we need to fully automate our exiting
manual system, and thus comes the concept of computerization. Our mobile application is
one of them. By using our proposed our application people can save their time and effort
because there is no need to give advertisement in the newspapers and tv channels. People
can easily provide details of their lost items in our app using mobiles phones without
going anywhere.

2.3 Area of Study

Different areas of study of computer sciences are involved in the development of this
project.

• Software Engineering

• Programming

• Database

2.4 Reason of the Project

Build Pro is a mobile application designed to revolutionize communication and project


management within the construction industry. It caters to various skilled professionals
including electrician, builder, plumber and technician.

This focuses on core features to launch the app quickly and validate the concept:

• User Profile

• Job Board

• To Communicate with each other(worker & customer)

• To keep track of both worker and customer

• To get notified of customers need

10
2.5 Objectives of the Project

• To search for job

• To notify your expert job to other users

• To find out good job quickly

• To keep track of both worker and customer

• To get notified of others jobs

11
CHAPTER NO 3: SYSTEM REQUIREMNT ANALYSIS

12
3.1 System Functional Requirements

• If the user has valid email and password then the user will be logged into the app
and if the user does not have the valid email and password then the user will not be
logged into the app.

• Signup screen will help the user to create an account for logging in to the app.

• User will provide basic details about itself in User Profile screen.

• App will provide two different forms; one for to upload job details and one for to
upload about their expertise details.

• User will click on upload jobs button to upload the details of job and the details of
that person who need worker..

• User will click on view for job button to see all jobs which are uploaded by user
itself and other users.

• User will click on view my upload jobs button to see all jobs which are uploaded by
user itself.

• User will click on logout button to logout from the app.

13
3.2 System Non-Functional Requirements

3.2.1 Performance

The design of mobile app will response to each user who will access the app. Simple
interface will lead to error-free and fast access to the app. The mobile app will perform
well on all supported android phones.

3.2.2 Safety

Mobile app will not do anything without the user’s permission. The database may get
crashed at any certain time due to virus or operating system failure. Therefore, it is
required to take the database backup so that the database is not lost.

3.2.3 Security

The Security requirement assures that all data inside the system or its part will be protected
against malware attacks or unauthorized access.

3.2.4 Flexibility

App will be flexible enough to adapt the new changes with the passage of time.

3.2.5 Portability

App will be portable enough that it can easily be install on another devices. It can easily be
run on other devices.

3.2.6 Scalability

App will be scalable enough that it can adapt to increase in user request.

3.2.7 Reliability

App will be reliable enough that it can maintain its performance over time.

14
3.2.8 Usability

App will be user-friendly and easy to understand. Clients will be fully satisfied with it
performance and its functionality.

3.2.9 Maintainability

App will be maintained and efficient. It will maintain the new changes. It will maintain all
the records.

3.2.10 Reusability

Reusability reduces the time and complexity so that’s why App components/features will
be designed in such a way that they can be used in other applications too.

3.2.11 Efficiency

App will have efficiency in its performance/response time. It can work properly without
any failure.

3.3 Hardware and Software Requirements

3.3.1 Hardware Requirements

Processor: Octa-core Max 2.01 GHz

RAM: 2GB

Storage: 1GB

3.3.2 Software Requirements

Tool: Android Studio

Languages: XML for front end and Java for backend

Database: Firebase

15
16
CHAPTER NO 4: SYSTEM DESIGN

17
4.1 Use Cases

4.1.1 Registration

Table 4.1 Registration Use Case

Identifier UC-1

Purpose Registration

Priority High

The user is not already register and system must be connected


Pre-condition to the internet.

Post-condition Register Successfully.

Typical Course of Action

S# Actor Action System Response

User will click on Signup text. System will display the Signup
1
Screen.

User will enter email, password and System will process the information.
2
confirm password.

User will click on signup button.


System will save User’s data and
3 provide email and password for
logging in to the app.

Alternate Course of Action

S# Actor Action System Response

If user password and confirm password System will not register the user.
1
are not same.

If user left any field empty. System will not register the user.
2

18
Figure 4.1 Sequence Diagram of Registration

19
4.2 Login

Table 4.2 Login Use Case

Identifier UC-2

Purpose To gain access to the app.

Priority High

Pre-condition Email and password must be known and system must be


connected to the internet.

Post-condition Login Successfully.

Typical Course of Action

S# Actor Action System Response

1 User will enter email and password. System will process the information.

2 User will click on login button. The system will check email and
password and will login in to the app
if information is correct.

Alternate Course of Action

S# Actor Action System Response

1 If user enter invalid login email and System will not login in to the app
password to the system. due to wrong email or password.

2 If user left any field empty. System will not login in to the app.

20
Figure 4.2 Sequence Diagram of Login

21
4.2.2 User Profile

Table 4.3 User Profile Use Case

Identifier UC-3

Purpose To get personal details about user.

Priority High

Pre-condition User must be registered and system must be connected to


internet.

Post-condition User’s data save successfully.

Typical Course of Action

S# Actor Action System Response

1 User will select own picture from System will process the information.
gallery and enter name, email, phone
number and location.

2 User will click on registration button. System will save the user’s personal
details.

Alternate Course of Action

S# Actor Action System Response

1 If user left any field empty. System will not save the user’s
personal details.

22
Figure 4.3 Sequence Diagram of User Profile

23
4 Upload jobs

Table 4.4 Upload lost item Use Case

Identifier UC-4

Purpose To provide details about customer need and person who look
for good job.

Priority High

Pre-condition The user must be login and system must be connected to


internet.

Post-condition job upload successfully.

Typical Course of Action

S# Actor Action System Response

1 User will click on upload job button. System will display the upload job
screen.

2 User will upload about his System will process the information.
requirements according to his need.

3 User who want job will provide details System will process the information.
about itself.

4 User will click on submit button. System will upload the job.

Alternate Course of Action

S# Actor Action System Response

1 If user left any field empty. System will not upload the lost item.

24
5 View for job

Table 4.5 View lost items Use Case

Identifier UC-5

Purpose To see all jobs which are uploaded by user itself and other
users.

Priority High

Pre-condition The user must be login and system must be connected to


internet.

Post-condition User will see details of all jobs.

Typical Course of Action

S# Actor Action System Response

1 User will click on view jobs button. System will display the view job
screen.

2 User will click on any job category. System will display the all jobs which
are added by user itself and other
users.

3 User will click on any one job. System will display the details of that
particular job and the details of that
person who want worker.

Alternate Course of Action

S# Actor Action System Response

1 If user have not uploaded any lost System will not display any lost item
item. because user itself and other users
have not uploaded any lost item.

25
6 View and delete own jobs

Table 4.6 View and delete own lost items Use Case

Identifier UC-6

Purpose To see all jobs which are uploaded by user itself.

Priority Medium

Pre-condition The user must be login and system must be connected to


internet.

Post-condition User will see details of those jobs which are uploaded by user
itself.

Typical Course of Action

S# Actor Action System Response

1 User will click on view my jobs System will display the view my jobs
button. screen.

2 User will click on any job. System will display the details of that
particular job and the details of that
person who want that job.

3 User will click on delete icon. System will delete that particular job.

Alternate Course of Action

S# Actor Action System Response

1 If user have not uploaded any job. System will not display any job
because user itself have not uploaded
any job.

26
7 Upload your expert job

Table 4.7 Upload found item Use Case

Identifier UC-7

Purpose To provide details about expert job and person who want that
job.

Priority High

Pre-condition The user must be login and system must be connected to


internet.

Post-condition Your expert job upload successfully.

Typical Course of Action

S# Actor Action System Response

1 User will click on upload expert job System will display the expert job
button. screen.

2 User will select item picture from System will process the information.
gallery. User will select job category
and enter details about his expertise.

3 User who want that job will provide System will process the information.
details about itself.

4 User will click on submit button. System will upload the expert job.

Alternate Course of Action

S# Actor Action System Response

1 If user left any field empty. System will not upload the expert job.

27
8 View found items

Table 4.8 View found items Use Case

Identifier UC-8

To see all found items which are uploaded by user itself and
Purpose
other users.

Priority High

The user must be login and system must be connected to


Pre-condition internet.

Post-condition User will see details of found items.

Typical Course of Action

S# Actor Action System Response

User will click on view found items System will display the view found
1
button. items screen.

User will click on any found item System will display the all found
2 category. items which are added by user itself
and other users.

User will click on any found item. System will display the details of that
3 particular found item and the details
of that person who found that item.

Alternate Course of Action

S# Actor Action System Response

If user have not uploaded any found System will not display any found
item. item because user itself and other
1
users have not uploaded any found
item.

28
9 View and delete own found items

Table 4.9 View and delete own found items Use Case

Identifier UC-9

Purpose To see all found items which are uploaded by user itself.

Priority Medium

Pre-condition The user must be login and system must be connected to


internet.

Post-condition User will see details of those found items which are uploaded
by user itself.

Typical Course of Action

S# Actor Action System Response

1 User will click on view my found System will display the view my
items button. found items screen.

2 User will click on any found item. System will display the details of that
particular found item and the details
of that person who found that item.

3 User will click on delete icon. System will delete that particular
found item.

Alternate Course of Action

S# Actor Action System Response

1 If user have not uploaded any found System will not display any found
item. item because user itself have not
uploaded any found item.

29
10 Logout

Table 4.10 Logout Use Case

Identifier UC-10

Purpose To Logout from the app.

Priority High

Pre-conditions The user must be login and system must be connected to


internet.

Post-conditions Logout Successfully.

Typical Course of Action

S# Actor Action System Response

1 User will click on logout button. System will display the login page.

Alternate Course of Action

S# Actor Action System Response

1 User will click on logout button. System will not display the login
page.

30
Figure 4.11 Sequence Diagram of Logout

31
32
CHAPTER NO 5: IMPLEMENTATION AND TESTING

33
5.1 Testing Methods

5.1.1 Black Box Testing

The technique of testing without having any knowledge of the interior workings of the
application is called Black Box Testing. The tester is oblivious to the system architecture
and does not have access to the source code. Typically, while performing a black box test,
a tester will interact with the system's user interface by providing inputs and examining
outputs without knowing how and where the inputs are worked upon.

5.1.2 White Box Testing

White Box Testing is the detailed investigation of internal logic and structure of the code.
White Box Testing is also called glass testing or open box testing. In order to perform
White Box Testing on an application, a tester needs to know the internal workings of the
code. The tester needs to have a look inside the source code and find out which
unit/chunk of the code is behaving inappropriately.

5.1.3 Unit Testing

It focuses on the smallest unit of software design. In this, we test an individual unit or
group of interrelated units. It is often done by the programmer by using sample input and
observing its corresponding outputs. Unit testing will also make debugging easier because
finding issues earlier means they take less time to fix than if they were discovered later in
the testing process.

5.1.4 Integration Testing

Integration testing is the phase in software testing in which individual software modules
are combined and tested as a group. It occurs after unit testing and before system testing.
Integration testing takes as its input modules that have been unit tested, groups them in
larger aggregates, applies tests defined in an integration test plan to those aggregates and
delivers as its output the integrated system ready for system testing.

34
5.1.5 System Testing

System Testing is a black box testing method used to evaluate the completed and
integrated system, as a whole, to ensure it meets specified requirements. The functionality
of the software is tested from end-to-end and is typically conducted by a separate testing
team than the development team before the product is pushed into production.

5.1.6 Acceptance Testing

Acceptance Testing is done by the customers to check whether the delivered products
perform the desired tasks or not, as stated in requirements. It involves ensuring that the
product is in compliance with all of the original business criteria and that it meets the end
user’s needs. This requires the product be tested both internally and externally.

5.1.7 Performance Testing

It is designed to test the run-time performance of software within the context of an


integrated system. It is used to test the speed and effectiveness of the program. It is also
called load testing. In it we check, what is the performance of the system in the given
load.

5.1.8 Security Testing

Security Testing is used to determine if the information and data in a system is protected.
The goal is to purposefully find loopholes and security risks in the system that could
result in unauthorized access to or the loss of information by probing the application for
weaknesses.

5.1.9 Compatibility Testing

Compatibility Testing is used to gauge how an application or piece of software will work
in different environments. It is used to check that your product is compatible with
multiple operating systems, platforms, browsers, or resolution configurations. The goal is
to ensure that your software’s functionality is consistently supported across any
environment.

35
5.2 Test Cases

5.2.1 Registration

Table 5.1 Registration Test Case

Identifier TC-1

Priority High

Description To create user account.

Pre-conditions The user is not already register and system must be


connected to the internet.

Post-conditions Register Successfully.

Input Data Email, password and confirm password.

Detailed Steps 1. User will go to Signup screen to create an


account.

2. User will enter Email, password and confirm


password.

3. User will click on Signup button.

Expected Results 1. User will be register.

2. User will not be register because user's password


and confirm password are not same.

3. User will not be register because user left any


field empty.

Actual Result Register Successfully.

36
5.2.2 Login
Table 5.2 Login Test Case

Identifier TC-2

Priority High

Description To gain access to the app.

Pre-conditions Email and password must be known and system must be


connected to the internet.

Post-conditions Login Successfully.

Input Data Email and password.

Detailed Steps 1. User will go to Login screen.

2. User will enter Email and password.

3. User will click on Login button.


Expected Results 1. User will be login in to the app.

2. User will not be login because user's Email is not


valid.

3. User will not be login because user's password is


not valid.

4. User will not be login because user left any field


empty.

Actual Result Login Successfully.

37
5.2.3 User Profile

Table 5.3 User Profile Test Case

Identifier TC-3

Priority High

Description To get personal details about user.

Pre-conditions User must be registered and system must be connected to


internet.

Post-conditions User details save successfully.

Input Data Image, Name, Email, Phone number and Location.

Detailed Steps 1. User will go to User Profile screen.

2. User will select own image from gallery and enter


Name, Email, Phone number and Location.

3. User will click on Registration button.

Expected Results 1. User details will be saved successfully.

2. User details will not be saved because user will not


have selected own image.

3. User details will not be saved because user left any


field empty.

Actual Result User details save successfully.

38
5.2.4 Upload job

Table 5.4 Upload jobs Test Case

Identifier TC-4

Priority High

Description To provide details about job and person who want that job.

Pre-conditions The user must be login and system must be connected to


internet.

Post-conditions job upload successfully.

Input Data Job requirement,Job type, User name, User Email, User
phone number and User location.

Detailed Steps 1. User will go to Upload job screen.

2. User will select his specific job and put information


about his experties.

3. User will enter User name, User Email, User phone


number and User location.

4. User will click on submit button.

Expected Results 1. Job will be uploaded successfully.

2. Job will not be uploaded because user will not have


clue about his expert job.

3. Job will not be uploaded because user left any field


empty.

Actual Result Job upload successfully.

39
5.2.5 View for job screen

Table 5.5 View for job Test Case

Identifier TC-5

Priority High

Description To see all jobs which are uploaded by user itself and other
users.

Pre-conditions The user must be login and system must be connected to


internet.

Post-conditions User will see details of jobs.

Input Data No input required for this. User must have logged in
already.

Detailed Steps 1. User will go to job screen.

2. User will see all jobs which are uploaded by user


itself and other users.

3. User will click on any job to see the details of that


particular job and the details of that person who want that
customer.

Expected Results 1. User will view all jobs which are uploaded by user
itself and other user.

2. User will not view any job because user itself and
other users will not have uploaded any job according to his
expertise.

Actual Result User view all jobs successfully.

40
5.2.6 View and delete own job

Table 5.6 View and delete own job Test Case

Identifier TC-6

Priority Medium

Description To see all lost items which are uploaded by user itself.

Pre-conditions The user must be login and system must be connected to


internet.

Post-conditions User will see details of those jobs which are uploaded by
user itself.

Input Data No input required for this. User must have logged in
already.

Detailed Steps 1. User will go to My jobs screen.

2. User will see all jobs which are uploaded by user


itself.

3. User will click on any job to see the details of that


particular job and the details of that person who want that
job.

4. User will click on delete icon to delete any job.

Expected Results 1. User will view all jobs which are uploaded by user
itself.

2. User will not view any job because user itself will
not have uploaded any job.

Actual Result User view all jobs delete successfully.

41
CHAPTER NO 6: USER MANUAL

42
6.1 Splash Screen

Every time the user will run the app the first screen that will always appear will be the
Splash Screen.

43
6.2 Login Screen

When user will run the app the first interface that will appear on the screen after the
Splash Screen is the Login Screen. The user will login in to app if having correct email
and password.

44
6.3 Signup Screen

Account will be required for login in to the app. If the user not have an account, then the
Signup Screen will help the user to create an account. After creating an account, the user
can login in to the app.

45
6.4 User Profile Screen

After creating account using Signup screen user will see the User Profile Screen. User will
provide the basic details about itself.

46
6.5 Main Screen

After providing details about itself in User Profile Screen user will move to the Main
Screen. With the help of Main Screen user will move to Upload job screen, View for job
screen, Logout from app.

6.6 Upload Job Screen

On the click on upload job button in the Main Screen user will move to the job

Screen. With the help of job Screen user will move to jobs Categories Screen, Upload job
Screen, My job Screen.

47
.

6.17: Logout Screen:

48
User will press the logout button on the logout screen. In this way user can logout from the
app.

49
CHAPTER NO 7: USER ROLES & PERMISSIONS

50
7.1 Types of Users

Build Pro app includes multiple user roles to ensure smooth operations and accessibility.
Each user type has specific permissions based on their function within the platform. The
key user roles include:

7.1.1 Admin

The admin has the highest level of control over the application. Their primary
responsibilities include:

 Managing and verifying user accounts (clients and professionals).


 Monitoring and resolving disputes between users.
 Overseeing financial transactions within the platform.
 Handling content moderation and enforcing platform policies.
 Generating reports and analyzing platform performance metrics.

7.1.2 Professional (Electricians, Builders, Plumbers, Technicians, etc.)

Professionals are service providers who use the Build Pro app to find work and manage
their tasks. Their key functionalities include:

 Creating and managing a professional profile.


 Browsing and applying for job postings.
 Communicating with clients through messaging and video calls.
 Receiving task assignments and updating progress.
 Submitting invoices and receiving payments.
 Managing their availability and service areas.
 Receiving and responding to client reviews and ratings.

51
7.1.3 Clients

Clients are individuals or companies looking to hire professionals for construction and
maintenance tasks. Their key functionalities include:

 Registering and creating a client profile.


 Posting job listings with descriptions, budgets, and deadlines.
 Reviewing and selecting professionals based on their profiles and ratings.
 Assigning tasks and tracking project progress.
 Communicating with professionals via chat and video calls.
 Making payments securely through the platform.
 Providing ratings and reviews for professionals.

7.2 Permissions Based on User Roles

Each user role is granted a set of permissions to ensure smooth operation and security.
Below is a detailed breakdown of permissions:

Feature Admin Professional Client

Create Profile ✔ ✔ ✔

Post Jobs ✖ ✖ ✔

Apply for Jobs ✖ ✔ ✖

Message Users ✔ ✔ ✔

Manage Users ✔ ✖ ✖

Assign Tasks ✖ ✔ ✔

Update Task Progress ✖ ✔ ✖

Process Payments ✔ ✔ ✔

Leave Reviews ✖ ✔ ✔

Access Reports ✔ ✖ ✖

52
7.3 Role-Specific User Journeys

7.3.1 Admin Workflow

1. Logs into the admin dashboard.


2. Monitors new sign-ups and verifies accounts.
3. Reviews job listings and reports policy violations.
4. Handles user disputes and financial transactions.
5. Generates reports on platform activity and financial statistics.

7.3.2 Professional Workflow

1. Registers and creates a professional profile.


2. Browses job listings and applies for relevant tasks.
3. Communicates with clients to finalize job details.
4. Completes assigned tasks and updates progress.
5. Submits invoices and receives payments.
6. Manages client interactions and responds to reviews.

7.3.3 Client Workflow

1. Registers and creates a client profile.


2. Posts job listings with task details and budgets.
3. Reviews professional applications and selects candidates.
4. Assigns tasks and tracks progress.
5. Communicates with professionals for project updates.
6. Processes payments and provides feedback.

7.4 Security Measures for User Roles

To ensure platform security and privacy, each user role has specific security measures:

 Two-factor authentication (2FA) for admin accounts.


 Encrypted messaging to protect communication.
 Secure payment processing using industry-standard encryption.
 User verification and KYC (Know Your Customer) for professionals.
53
 Role-based access control to restrict unauthorized actions.

7.5 Future Enhancements for User Roles

 AI-driven role recommendations: Suggesting professionals based on past work


experience and ratings.
 Blockchain-based contract management: Ensuring transparent agreements
between clients and professionals.
 Automated fraud detection: Identifying suspicious activity and preventing
unauthorized access.

54
CHAPTER NO 8: PROJECT MANAGEMENT FEATURES

55
8.1 Overview

Project management is a crucial aspect of the Build Pro app, allowing clients and
professionals to collaborate efficiently. The platform is designed to simplify task
allocation, ensure real-time updates, and improve communication. The project
management features provide users with the tools they need to oversee their work, track
progress, and complete tasks efficiently.

8.2 Task Assignment and Scheduling

Clients can create projects and assign specific tasks to professionals based on their skills
and availability. Task assignment includes:

 Setting task descriptions and deadlines.


 Assigning professionals based on expertise and location.
 Providing necessary resources, including blueprints and guidelines.
 Allowing professionals to accept or reject tasks.

The system incorporates a scheduling tool that ensures proper time management. Users can
view tasks in a calendar format, filter them by priority, and receive reminders about
upcoming deadlines.

8.3 Project Progress Tracking

Tracking project progress in real-time helps maintain workflow efficiency. Key features
include:

 Task status updates (Pending, In Progress, Completed).


 Percentage completion indicators.
 Document and image uploads for verification.
 Real-time notifications about updates.

8.4 Real-Time Collaboration and Communication

To enhance teamwork, Build Pro integrates real-time messaging and collaboration tools:

56
 Chat and file-sharing options for teams working on the same project.
 Video conferencing for project discussions.
 A centralized message board for project-related announcements.

8.5 Resource and Document Management

Efficient project execution requires proper resource allocation and document management:

 Cloud-based storage for easy document access.


 Version control to track document updates.
 Secure sharing options to protect sensitive data.

8.6 Time Tracking and Work Logs

Professionals can log their working hours to ensure accurate project timelines:

 Start and end time tracking for tasks.


 Automated time calculations to help with billing.
 Productivity insights and reports.

8.7 Issue Reporting and Resolution

To ensure smooth project execution, users can report issues directly within the app:

 In-app issue reporting tool for professionals and clients.


 Categorization of issues (e.g., material shortage, communication gap).
 Tracking the status of reported issues and their resolution timelines.

8.8 Payment and Budget Management

Budgeting and payments are integral to project management:

 Cost estimation tools for clients.


 Payment milestones to ensure fair compensation.
 Secure transaction handling via multiple payment methods.

57
8.9 Review and Feedback System

Once a project is completed, clients and professionals can rate their experience:

 Star rating and review system.


 Feedback options for improvement suggestions.
 Public visibility of reviews to build credibility.

8.10 Analytics and Reports

Comprehensive reporting tools provide insights into project performance:

 Monthly and weekly work summaries.


 Task completion statistics.
 Financial reports for income tracking.

58
CHAPTER NO 9: DEPLOYMENT & HOSTING

59
9.1 Overview

Deployment of the Build Pro app involves setting up backend services, frontend hosting,
database management, and ensuring scalability and security.

9.2 Backend Deployment

 Hosted on AWS EC2, Heroku, or DigitalOcean.


 Uses Node.js with Express.js.
 PM2 process manager ensures uptime.
 NGINX as a reverse proxy.
 MongoDB Atlas for database hosting.

9.3 Mobile App Deployment

 Google Play Store for Android (APK & AAB formats).


 Apple App Store for iOS (Xcode builds and App Store Connect).

9.4 Database Hosting

 MongoDB Atlas for cloud-based database solutions.


 Auto-scaling and backup configurations.

9.5 Continuous Integration & Deployment (CI/CD)

 GitHub Actions / GitLab CI/CD for automated builds.


 Fastlane for mobile app deployment automation.
 Docker for containerized deployment.

9.6 Security Measures

 SSL/TLS encryption for secure data transmission.


 JWT-based authentication for user access.
 Firewall & DDoS protection via Cloudflare.

60
9.7 Load Balancing & Scalability

 AWS Load Balancer to distribute traffic.


 Kubernetes / Docker Swarm for container orchestration.
 Auto-scaling groups to handle peak loads.

9.8 Monitoring & Logging

 Datadog, Prometheus, and Grafana for monitoring.


 Sentry for error tracking.
 CloudWatch / Loggly for log management.

9.9 Backup & Disaster Recovery

 Automated database backups via MongoDB Atlas.


 Redundant server architecture for failover support.
 Disaster recovery plan with rollback strategies.

9.10 Performance Optimization

 Content Delivery Network (CDN) for faster load times.


 Minified assets and lazy loading for mobile app performance.
 Database indexing & caching for faster queries.

61
CHAPTER NO 10: FUTURE ENHANCEMENTS

62
10.1 Overview

The future of Build Pro is centered around evolving technology, improving user
experience, and expanding functionality. The following enhancements are planned to
ensure the platform remains competitive and innovative.

10.2 AI-Based Job Recommendations

AI algorithms will analyze user profiles, past projects, and skills to provide personalized
job recommendations. This feature will improve the efficiency of job searching and hiring
by matching professionals with relevant projects.

10.3 Augmented Reality (AR) for Project Visualization

AR will enable clients and professionals to visualize projects before execution. Users can
create 3D models of their workspaces, overlaying designs on real environments to assess
feasibility and make informed decisions.

10.4 Blockchain for Secure Contracts and Transactions

Integrating blockchain technology will ensure transparent and secure contracts. Smart
contracts will automate agreements between clients and professionals, reducing disputes
and ensuring timely payments.

10.5 Machine Learning for Predictive Analysis

Machine learning models will analyze historical project data to predict potential delays,
cost overruns, and material requirements. This will help clients and professionals plan
more efficiently.

10.6 Voice and Video Calls Integration

To improve real-time communication, voice and video call features will be added, allowing
professionals and clients to discuss project details more effectively.

63
10.7 Advanced Analytics and Reporting

A dashboard with in-depth analytics will be introduced, providing users with insights into
project timelines, earnings, and performance metrics. This will enable better decision-
making.

10.8 Multi-Language Support

Expanding the platform to include multiple languages will cater to a broader audience,
making it more accessible for non-English speakers.

10.9 Offline Mode for Remote Areas

Professionals working in remote locations will be able to use Build Pro offline, with data
syncing once an internet connection is available.

10.10 Expansion to Global Markets

To scale the platform, international support for currencies, regulations, and localized job
opportunities will be integrated, making Build Pro a global solution for construction
professionals.

64

You might also like