You are on page 1of 62

E-COMMERCE APPLICATION FOR

CONSTRUCTIONAL PRODUCTS AND CONNECTION


A MINI PROJECT REPORT

Submitted by

JEROME PRAKASH A - 921320205050


ABEES K - 921320205002
DEEPAK P - 921320205027

in partial fulfillment for the award of the degree


of
BACHELOR OF TECHNOLOGY
in

INFORMATION TECHNOLOGY

PSNA COLLEGE OF ENGINEERING AND TECHNOLOGY,


(An Autonomous Institution Affiliated to Anna University, Chennai)
DINDIGUL – 624622

APRIL – 2023

i
PSNA COLLEGE OF ENGINEERING AND TECHNOLOGY
(An Autonomous Institution Affiliated to Anna University, Chennai)
DINDIGUL – 624622

BONAFIDE CERTIFICATE

Certified that this project report “ E-COMMERCE APPLICATION FOR


CONSTRUCTIONAL PRODUCTS AND CONNECTION” is the bonafide
work of “JEROME PRAKASH A (921320205050), ABEES K
(921320205002), DEEPAK P (921320205027) ” who carried out this project
work (IT8611) under my supervision.

SIGNATURE SIGNATURE

Dr. A. Vincent Antony Kumar, M.E., Ph.D., Dr. R. Venkatesh. M.E., Ph.D.,

HEAD OF THE DEPARTMENT SUPERVISOR


Professor Professor

Department of Information Technology, Department Information Technology,


PSNA College of Engineering and PSNA College of Engineering and
Technology, Technology,
Dindigul – 624622 Dindigul – 624622

Submitted for the project viva-voce examination held on _______2023.

INTERNAL EXAMINER EXTERNAL EXAMINER

ii
ACKNOWLEDGEMENT

We express our deep gratitude to Lord Almighty, our supreme guide for
bestowing his blessings upon entire endeavour.

We take this opportunity to express my sincere thanks to the respected


Chairperson Tmt. K. Dhanalakshmi ammal, who is the guiding light for all the
activities in my college. I would like to express my gratitude to our Pro-Chairman
Rtn.Thiru R.S.K Raguraam for their continuous support towards the student’s
development.

We would like to thank our Principal Dr. D.Vasudevan M.E., Ph.D., for
being a light in guiding every one of us and infusing us the strength and
enthusiasm to work over successfully.

We are extremely thankful to Dr. A. Vincent Antony Kumar M.E.,


Ph.D., Professor and Head, Department of Information Technology for his
valuable suggestions and encouragement in the completion of our project work.

We extend our profound gratitude to our project coordinators


Dr. M. Anandraj M.E., Ph.D., and Mrs. Karthika M.E., (Ph.D.,) Assistant
Professor and guide Dr.R. Venkatesh, M.E., Ph.D., Professor Department of
Information Technology their guidance this project has attained every step of
success. We extend our heartfelt salutations to our beloved parents and faculty
to establish this project in successful manner.

iii
ABSTRACT

The main idea is to develop an E-commerce mobile application for


construction department. Using this application, the people can able to buy their
materials for various construction through online orders.

The main interface of this application is the item screen. It showcases every
material that were needed for building a building like sand, bricks, steels, cement,
electricals, paintings etc. The people can easily get their materials in huge
numbers within short period of time. All the products were available, which is
essential for construction of a building from starting day to finishing day. The
users can even book their engineers for their house plan, workers for building.
So, the users can build their structures by themselves without any masons or
builders. All departments of workers and products were available for users to
construct their own building. All brands of products with all range of prices will
be available here.

The main feature of this application is one-day delivery. This is achieved


through buying products directly from respective shops and delivery to them. So,
construction works won't be affected by late delivery. And transport fees also be
low.

React-Native is used to develop this application and database as firebase.


This application can able to run without a server.

iv
TABLE OF CONTENTS

CHAPTER TITLE PAGE


NO NO

ABSTRACT iv
LIST OF FIGURES vii
LIST OF ABBREVATIONS viii
1 INTRODUCTION 1
1.1 Purpose 2
1.2 Objective 2
1.3 Domain of Automatic Timetable Generator 3
2 LITERATURE REVIEW 4

3 SYSTEM ANALYSIS 5
3.1 Existing System 5
3.2 Proposed System 5

4 SYSTEM METHODOLOGY 7
4.1 Requirement Phase 7
4.2 Design Phase 7
4.3 Development Phase 8
4.4 Testing Phase 9
4.5 Deployment Phase 10
4.6 Review Phase 10

5 SYSTEM REQUIREMENTS 11
5.1 Software Requirements 11
5.2 Hardware Requirements 11

v
6 FEASIBILITY ANALYSIS 14
6.1 Economic Feasibility 14
6.2 Technical Feasibility 14
6.3 Behavioural Feasibility 15

7 SYSTEM FEATURES 16
7.1 Admin Features 16
7.2 User Features 17
7.3 Advantages 18

8 SYSTEM DESIGN 19
8.1 Sequence Diagram 19
8.2 Use Case Diagram 20

9 SYSTEM TESTING 21
9.1 Unit Testing 21
9.2Integration Testing 21
9.3 Functional Testing 21

10 SYSTEM IMPLEMENTATION 23
10.1 Sample Output 25

11 CONCLUSION AND FUTURE ENHANCEMENT 38


11.1 Conclusion 38
11.2 Future Enhancement 38
11.3 Source Code 40

REFERENCE 54

vi
LIST OF FIGURES

FIGURE NO TITLE PAGE NO

8.1 Sequence Diagram 19


8.2 Use Case Diagram 19
10.1 Output Diagrams 25

vii
LIST OF ABBREVATIONS

JS - Java Script.
RN - React - native.
FB - Firebase.
Expo - Expo tool kit
IOS - iPhone Operating System

viii
CHAPTER 1
1 INTRODUCTION

In this mini project, we aim to develop an E-commerce mobile application


specifically designed for the construction department. The objective of this
application is to provide a platform for people to buy construction materials
through online orders, making the process much more efficient and convenient.
The main focus of the application is the item screen which showcases all the
necessary materials needed for building a structure, including sand, bricks, steel,
cement, electricals, and paintings. The application also provides the option for
users to book engineers and workers for their house plan and building needs,
allowing them to construct their own buildings without the need for masons or
builders. All brands of products with a range of prices will be available on the
application, making it easier for users to choose the best option for their needs.
With this application, users can quickly and easily purchase all the required
materials for construction, making the process seamless and hassle-free.

1.1 PURPOSE

The purpose of this mini project is to develop an E-commerce mobile


application tailored specifically for the construction department. The application
aims to simplify the purchasing process for construction materials by providing a
comprehensive platform for online orders. The main interface of the application
is the item screen, which showcases all the necessary materials needed for
building a structure, from sand to electricals. Additionally, the application offers
the option for users to book engineers and workers for their house plan and
building needs, making DIY construction more accessible. With the inclusion of

1
all brands and a range of prices, users can easily make informed decisions about
their purchases.
By streamlining the purchasing process and offering a wide range of
products and services, the application improves efficiency and convenience for
builders and homeowners alike. Overall, the purpose of this mini project is to
provide a comprehensive e-commerce solution for construction needs that is
accessible, efficient, and easy to use.

1.2 OBJECTIVE

Some of the key objectives of an Automatic Timetable Generator are:

To develop a user-friendly and intuitive e-commerce mobile application that


caters to the needs of the construction industry.
To offer a comprehensive range of construction materials and services,
including engineers and workers for house plans and building needs.
To provide a platform that enables users to purchase construction materials
in large quantities and with competitive pricing, ensuring customer satisfaction.
To implement a reliable and efficient one-day delivery system that minimizes
the impact of late delivery on construction projects and reduces transport fees for
customers.
To ensure the application is developed using React-Native, providing a
highly responsive and user-friendly experience.
To implement Firebase as the database for the application, ensuring data
security and reliability.
To make the application capable of running without a server, ensuring greater
accessibility and efficiency for users.

2
To continuously improve and update the application to keep up with the
changing demands of the construction industry and the evolving needs of
customers

1.3 DOMAIN OF E-COMMERCE APPLICATION FOR


CONSTRUCTIONAL PRODUCTS AND GOODS,

The project would likely fall within the broader category of "e-commerce"
and "mobile application development" as well, given its focus on creating an
online platform for buying and selling construction materials and services.
Additionally, it could potentially involve aspects of logistics and supply chain
management, as the application aims to facilitate the efficient delivery of
materials to construction sites.
The project aims to facilitate the efficient delivery of construction materials
to construction sites, which requires effective logistics and supply chain
management. This could involve coordinating the transportation of materials
from suppliers to buyers, tracking inventory levels, and managing the delivery
schedule to ensure timely delivery of materials to construction sites.

Overall, the project involves several interconnected areas, including e-


commerce, mobile application development, logistics, and supply chain
management. Successfully implementing the project requires a deep
understanding of these areas and their interplay, as well as the ability to design
and develop a robust platform that can deliver the desired functionality to users.

3
CHAPTER 2

LITERATURE REVIEW

The construction industry is one of the largest and most important sectors
of the global economy. As such, it is no surprise that it has been a focus of
technological innovation in recent years, with the development of numerous
digital tools and platforms aimed at improving efficiency, reducing costs, and
enhancing collaboration among stakeholders. One key area of innovation within
the industry has been the adoption of e-commerce solutions, which enable
contractors and suppliers to buy and sell goods and services online.

In recent years, the proliferation of mobile devices has opened up new


opportunities for e-commerce in the construction industry. Mobile applications
have become increasingly popular among both consumers and businesses,
offering a convenient and efficient way to shop for goods and services on the
go. As a result, a growing number of companies are developing mobile
applications specifically tailored to the needs of the construction industry.

One such application is the "BuildX" mobile application, which aims to


provide a comprehensive platform for buying and selling construction materials
and services online. The app offers a user-friendly interface that enables users to
browse a wide range of products, compare prices, and make purchases with just
a few clicks. In addition, the app offers a range of value-added services, such as
one-day delivery and online booking of engineers and workers.

The use of mobile applications in the construction industry has been


shown to have a number of benefits.

4
CHAPTER 3

SYSTEM ANALYSIS

3.1 EXISTING SYSTEM


In the current scenario, people who need construction materials have to
physically visit multiple stores to purchase the required items. This process is
time-consuming and often leads to confusion and delays due to the unavailability
of specific products. Moreover, the existing system doesn't provide the option to
book engineers and workers for construction plans.
The traditional system also lacks the feature of online ordering and one-day
delivery.

3.2 PROPOSED SYSTEM

One of the main features of the proposed system is one-day delivery, which is
achieved by directly buying products from respective shops and delivering them.
This feature ensures that construction work is not delayed due to late deliveries.
Moreover, the application provides an extensive range of brands and products,
catering to all budgets. The proposed system will be developed using React-
Native and Firebase as the database, enabling it to run without a server.

Benefits of Proposed System:


1 Convenience:
The application provides a one-stop-shop for all construction-related needs,
allowing users to purchase materials, book engineers and workers, and even
manage their construction plans from the comfort of their homes.

5
2 Time-saving:
The traditional process of purchasing construction materials involves visiting
multiple stores physically, which can be time-consuming. With the proposed
system, users can easily purchase their required materials within a few clicks,
saving valuable time.

3 Access to a wide range of products:


The proposed system offers an extensive range of brands and products,
catering to all budgets and needs, providing users with a variety of options to
choose from.

4 One-day delivery:
The application's one-day delivery feature ensures that construction work is
not delayed due to late deliveries, which is often the case with the traditional
system.

5 Cost-effective:
The proposed system offers products at competitive prices, and users can
easily compare prices to make informed decisions, leading to cost savings.

6 Simplified construction management:


The proposed system offers the option to book engineers and workers for
construction plans, enabling users to manage their construction projects
effectively.

Overall, the proposed system offers a hassle-free and time-efficient solution


for purchasing construction materials, managing construction plans.

6
CHAPTER 4

SYSTEM METHODOLOGY

4.1 REQUIREMENT PHASE


The proposed E-commerce mobile application for the construction
department is primarily designed to cater to the needs of construction companies
and individual homeowners. The application aims to provide a user-friendly
platform where users can buy various construction materials such as sand, bricks,
steels, cement, electricals, paintings, and other building supplies. Users can easily
search, select, and purchase these materials with just a few taps on their mobile
devices. The application also provides the option for users to book engineers and
workers for building plans, enabling them to construct their structures
independently without relying on masons or builders.

4.2 DESIGN PHASE

The application will have a simple and clean design to make it easy for
users to navigate and find what they are looking for. The item screen will be the
main interface of the application, showcasing all the necessary materials for
construction.

To ensure smooth and efficient transactions, the application will have a


secure payment gateway integrated with various payment methods such as
credit/debit cards, online banking, and digital wallets. Additionally, the
application will have a feature for tracking orders and deliveries to keep users
informed about the status of their purchases.

7
The database for the application will be implemented using Firebase,
providing reliable and scalable cloud storage. This will allow for seamless data
management and ensure that the application runs smoothly without the need for
a server. Furthermore, the application will be developed using React-Native,
which provides cross-platform compatibility, enabling the application to run
smoothly on both Android and iOS devices.

Overall, the design phase of the proposed system aims to provide users
with a seamless and hassle-free experience, making it easy for them to purchase
construction materials and services online.

4.3 DEVELOPMENT PHASE

The development phase involves implementing the design and building


the actual application. The development team will start by setting up the
development environment and creating the necessary code repositories. The
team will then work on developing the front-end and back-end of the
application.

The front-end development will involve creating the user interface of the
mobile application. The team will use React-Native to build the application's
user interface. The user interface will be designed to be easy to use and visually
appealing to the users. The team will also ensure that the user interface is
responsive and can adapt to different screen sizes.

8
The back-end development will involve building the server-side of the
application. The team will use Firebase to store and retrieve data from the cloud
database. The database will be designed to be scalable and capable of handling
large amounts of data. The team will also ensure that the database is secure and
can protect user data from unauthorized access.

During the development phase, the team will work in sprints, where they
will develop specific features of the application in short time frames. This
approach will allow the team to be agile and respond to any changes or issues
that may arise during the development process. Once the application is fully
developed, it will be tested thoroughly to ensure that it meets all the
requirements and is free of any bugs or issues.

4.4 TESTING PHASE


The testing phase is a crucial stage in the development of any software
application, including our E-commerce mobile application for the construction
department. In this phase, the primary goal is to ensure that the application meets
the requirements specified in the design phase and is free of bugs and errors.

The testing process begins with the preparation of a test plan, which
includes the different types of testing to be performed, the resources required, and
the expected outcomes. Some of the essential types of testing that can be
performed on our application include unit testing, integration testing, system
testing, and acceptance testing.

9
4.5 DEPLOYMENT PHASE
The deployment phase is the process of making the system available for
use by the end-users. This phase is when the system has been successfully done
and fulfills all the objectives. The system can be deployed and finally the system
will be published to the user for their needs. This deployed in googles play store
in accordance with the android platform development.

4.6 REVIEW PHASE

The review phase is a critical stage in the software development lifecycle,


where the entire project is evaluated and tested for its functionality and
performance. During this phase, the application is thoroughly tested using various
testing techniques, such as unit testing, integration testing, system testing, and
acceptance testing. The review phase ensures that the developed application
meets all the requirements specified in the requirements phase and that it is free
from errors, bugs, and other issues. Once the application passes all the tests, it is
ready to be deployed and released to the users. The review phase is an important
step to ensure the success of the project, as it helps to identify any potential issues
or shortcomings and address them before the final release.

10
CHAPTER 5

SYSTEM REQUIREMENTS

5.1 SOFTWARE REQUIREMENTS


Operating system : Windows
Programming languages : Java Script
IDE : React Native
Compiler : Babel
Web Server : Apache
Database : Firebase/ Fire store

5.2 HARDWARE REQUIREMENTS

Processor : Intel Pentium


Speed : 2 GHz
RAM : 2 GB
Hard Disk : 100 GB
Key Board : Standard Windows Keyboard
Mouse : Two or Three Button Mouse
Monitor : SVGA Monitor

JAVA SCRIPT PROGRAMMING LANGUAGE


JavaScript is a scripting or programming language that allows you to
implement complex features on web pages every time a web page does more than
just sit there and display static information for you to look at displaying timely

11
content updates, interactive maps, animated 2D/3D graphics, scrolling video
jukeboxes, etc. you can bet that JavaScript is probably involved. It is the third
layer of the layer cake of standard web technologies, two of which (HTML and
CSS) we have covered in much more detail in other parts of the Learning Area.
The Java programming language is a high-level language that can be
characterized by all the following:

JavaScript is a scripting language that enables you to create dynamically


updating content, control multimedia, animate images, and pretty much
everything else. (Okay, not everything, but it is amazing what you can achieve
with a few lines of JavaScript code.)

REACT NATIVE
React Native is an open-source mobile application framework developed
by Facebook. It allows developers to build high-performance mobile
applications for both Android and iOS platforms using JavaScript and React.
With React Native, developers can create a single codebase that can be shared
across multiple platforms, which can significantly reduce development time and
costs.

One of the key benefits of React Native is its ability to deliver a native-
like user experience, which means that the applications built with React Native
can take advantage of the hardware capabilities of the device, such as the
camera, accelerometer, and GPS. Additionally, React Native provides a rich set
of UI components and APIs that allow developers to build complex and
interactive user interfaces.

12
FIREBASE
Firebase Firestore is a cloud-hosted NoSQL document database that is
widely used for mobile and web application development. It is a flexible, scalable,
and cost-effective solution that allows developers to store and sync data in real-
time across multiple devices and platforms. Firestore supports offline data access,
real-time data synchronization, and powerful query capabilities, making it an
ideal choice for modern mobile and web applications.

In our project, we have used Firebase Firestore as the database for our E-
commerce mobile application for the construction industry. We have stored all
the products and their details, user information, orders, and other necessary
information in Firestore. The real-time synchronization feature of Firestore
allows us to update the application in real-time with the latest information,
ensuring a seamless user experience.

Additionally, Firebase Firestore is easy to integrate with other Firebase


services, such as Firebase Authentication, Firebase Cloud Messaging, and
Firebase Analytics, which we have also utilized in our project. Overall, Firebase
Firestore has provided us with a reliable, secure, and efficient database solution
for our E-commerce mobile application.

13
CHAPTER 6

FEASIBILITY ANALYSIS

6.1 ECONOMIC FEASIBILITY


In terms of initial investment, the development of the mobile application
may require a significant amount of resources, including software development
tools, hardware, and human resources. However, the use of open-source
technologies like React-Native and Firebase can help reduce the development
costs.

Regarding operational costs, the application's maintenance and marketing


expenses may include server costs, software updates, and advertising expenses.
The one-day delivery feature may also require additional transportation costs,
which should be carefully monitored to avoid affecting the profit margins.

6.2 TECHNICAL FEASIBILITY


From a technical perspective, using React Native and Firebase for this
project is highly feasible. React Native is a popular framework that allows for the
development of mobile applications for both iOS and Android platforms with a
single codebase. This means that the development time and cost can be reduced
significantly as compared to developing separate applications for each platform.
Additionally, React Native offers a rich set of UI components that enable
developers to create highly responsive and interactive user interfaces.

Firebase, on the other hand, is a cloud-based platform that provides a


comprehensive suite of services for building mobile and web applications.
Firebase provides a real-time database, authentication, cloud storage, and other
features that are essential for developing modern mobile applications.

14
Firebase offers a scalable and flexible infrastructure that can easily handle
the requirements of the project, such as real-time updates and high availability.

6.3 BEHAVIOURAL FEASIBILITY

Behavioral feasibility refers to whether the proposed system can be


accepted and used by the users. In the case of an e-commerce application for the
construction industry, it is important to ensure that the end-users, such as
engineers, architects, contractors, and building owners, are comfortable with
using the application for their needs. To ensure this, the project team conducted
user surveys and feedback sessions to understand the expectations and
requirements of the users. The team also provided training and support to help
users get familiar with the application. The user-friendly interface of the
application and its various features, such as one-day delivery, booking of
engineers and workers, and availability of all materials in one place, have been
designed to address the specific needs and preferences of the users. Overall, the
behavioral feasibility of the project has been taken into account, and the
application has been designed to meet the requirements and expectations of the
end-users.

15
CHAPTER 7

SYSTEM FEATURES

7.1 ADMIN FEATURES


1 Dashboard:
The admin dashboard is the main interface where the admin can view all
the important data and perform various tasks. It gives the admin an overview
of the entire system, including sales data, user data, and inventory
management.

2 User management:
The admin should be able to manage user accounts and permissions. They
should be able to view and edit user profiles, add or remove users, and assign
roles and permissions.

3 Product management:
The admin should be able to manage the products available on the platform.
This includes adding new products, updating product information, managing
inventory, and deleting products that are no longer available.

4 Order management:
The admin should be able to manage the orders placed by users. This
includes viewing order details, updating the order status, and managing the
shipping and delivery of products.

5 Payment management:

16
The admin should be able to manage payment transactions made through
the platform. This includes managing payment gateways, refunds, and
tracking transactions.

6 Reporting and analytics:


The admin should be able to view and generate reports and analytics
related to sales, user data, and product data. This helps them to make
informed decisions regarding the platform and its operations.

7.2 USER FEATURES


The E-commerce mobile application for the construction department aims
to provide users with an easy and efficient way to purchase materials for their
construction projects. With a user-friendly interface, the item screen displays all
the essential construction materials, including sand, bricks, steels, cement,
electricals, paintings, and more. The application ensures that all the necessary
products required from the beginning to the end of the construction process are
available to users.

The application also allows users to book engineers and workers for their
construction projects, enabling them to build their structures independently
without the need for masons or builders. The application covers all departments
of workers and products required for the construction process. Users can access
all brands of products with various price ranges, ensuring that they can find the
product that best fits their budget.

17
7.3 ADVANTAGES

• Convenience:
The application provides users with the convenience of purchasing
construction materials and booking workers from their mobile devices. Users
can avoid the hassle of visiting physical stores and save time and effort.

• Wide range of products:


The application offers a wide range of construction materials, including
sand, bricks, cement, steels, electricals, paintings, and more, ensuring that
users can find everything they need for their construction projects.

• One-day delivery:
The application's one-day delivery feature ensures that users receive their
products promptly, enabling them to continue with their construction work
without any delays.

• Easy booking:
The application's booking feature makes it easy for users to book engineers
and workers for their construction projects, ensuring that they have the
necessary workforce to complete their construction work.

• Budget-friendly:
The application offers products from various brands with different price
ranges, enabling users to choose products that fit their budget.

18
CHAPTER 8

SYSTEM DESIGN
The system design of the E-commerce mobile application for the
construction department involves various components that work together to
provide a seamless user experience. The application is developed using the React
Native framework, which enables it to run on both iOS and Android devices. The
database is on Firebase, which ensures that data is secure and reliable.

The main interface of the application is the item screen, which showcases
all the construction materials available for purchase. The users can easily browse
through the products and select the ones they need.

8.1 SEQUENCE DIAGRAM:

19
8.2 USE-CASE DIAGRAM

20
CHAPTER 9

SYSTEM TESTING
System testing is an essential part of any software development project,
including the E-commerce mobile application for the construction department.
The purpose of system testing is to ensure that the application is free from
defects and performs as intended. The following is an overview of the system
testing process for this project:

9.1 Unit testing:


This involves testing individual components of the application, such as the
booking system, the item screen, and the delivery system. Unit testing is done to
ensure that each component works as intended.

9.2 Integration testing:


This involves testing the interaction between different components of the
application, such as the booking system and the item screen. Integration testing
is done to ensure that the components work together seamlessly.

9.3 Functional testing:


This involves testing the functionality of the application, such as the ability
to browse and select products, book engineers and workers, and track orders.

1. Performance testing:
This involves testing the application's performance under various
conditions, such as heavy traffic and high usage. Performance testing is
done to ensure that the application can handle a large volume of traffic and
usage.

21
2. Security testing:
This involves testing the application's on performs as intended.

3. security measures, such as encryption and data protection. Security testing


is done to ensure that user data is secure and protected from potential
threats.

4. User acceptance testing:

This involves testing the application with actual users to ensure that
it meets their needs and expectations. User acceptance testing is done to
ensure that the application is user-friendly and easy to use.

22
CHAPTER 10

SYSTEM IMPLEMENTATION

The system implementation for the E-commerce mobile application for the
construction department involves several key steps to ensure that the application
is developed and deployed successfully. The following is an overview of the
system implementation process for this project:

Requirements gathering:

This involves identifying the requirements and specifications for the


application, such as the features, functionality, and user interface.

System design:

his involves creating a detailed system design that outlines the architecture,
components, and data structures for the application. The system design will serve
as a blueprint for the development process.

Development:

This involves writing the code for the application using the React Native
framework and integrating it with the Firebase database. The development
process will include implementing the features and functionality specified in the
requirements and system design.

23
Testing:

This involves testing the application using various testing techniques, such
as unit testing, integration testing, functional testing, performance testing,
security testing, and user acceptance testing. The testing process will ensure that
the application is free from defects and performs as intended.

Deployment:

This involves deploying the application to the app stores for iOS and
Android devices. The deployment process will include submitting the application
to the app stores and ensuring that it meets their guidelines and requirements.

Maintenance:

This involves maintaining the application after it has been deployed to


ensure that it continues to function properly and meets the needs of its users.
Maintenance activities may include bug fixes, updates, and improvements to the
application.

In summary, the system implementation process for the E-commerce


mobile application for the construction department involves requirements
gathering, system design, development, testing, deployment, and maintenance.
This comprehensive approach ensures that the application is developed and
deployed successfully and continues to meet the needs of its users over time.

24
10.1 SAMPLE OUTPUT

This is login and registration screen for the users.

25
After login/registration the user will taken to the home screen.

This is the home Screen contains all the categories of constructional products

26
This is the home Screen contains all the categories of constructional products

27
Theis the search screen for the products where users can able to search all kinds
ofproducts here.

28
This is the products View Screen for particular constructional products.

29
The product View Screen where all details of the item is listed and showed.

30
All reviews and options of delivery the product.

31
The product suggestion items for the related products and quantity, address selection
screen for that selected product.

32
Product prize and quantity confirmation screen.

33
Payment Gateway for users to pay the amount

34
The screen for those engineers to be booked for the construction.
list of skilled engineers and details.

35
All details of the Each Engineers and their Skills

36
Cart Screen for products for the application to book mark that
product.

37
CHAPTER 11

CONCLUSION AND FUTURE ENHANCEMENT

11.1 CONCLUSION

In conclusion, the development of an E-commerce mobile application


for the construction department offers numerous benefits for users who are
looking to purchase construction materials and services conveniently and
efficiently. With features such as one-day delivery, a wide range of products and
services, and the ability to book engineers and workers, the application provides
a seamless and hassle-free experience for users. The use of React Native and
Firebase database ensures that the application is both user-friendly and reliable,
while the system testing and implementation processes ensure that the application
is free from defects and performs as intended. Overall, the E-commerce mobile
application for the construction department has the potential to revolutionize the
way construction materials and services are purchased and provide significant
value to its users.

11.2 FUTURE ENHANCEMENT

There are several potential future enhancements that could be made to the
E-commerce mobile application for the construction department to further
improve its functionality and user experience. Some of these enhancements
include:

Integration with virtual reality:


Integrating virtual reality technology into the application would allow
users to visualize and interact with 3D models of building plans, materials,
and designs before making a purchase.

38
Personalized recommendations:
The application could use machine learning algorithms to analyze user data
and provide personalized product recommendations based on their preferences
and past purchases.

Augmented reality features:


Augmented reality features could be added to the application to allow users
to preview products in their real-world environment before making a purchase,
such as visualizing how a specific paint color would look on their walls.

Chatbot integration:
Integrating a chatbot into the application would allow users to quickly and
easily get answers to their questions about products, services, and orders.

Social media integration:


Integrating the application with social media platforms could allow users
to share their building plans, projects, and progress with others and receive
feedback and advice.

These potential enhancements would not only improve the functionality and
user experience of the application but also position it for long-term success and
growth in the competitive E-commerce market.

39
11.3 SOURCE CODE

Products Categories-Screeen :

import { FlatList, Image, ScrollView, StyleSheet, Text, TouchableOpacity,


useWindowDimensions, View } from 'react-native'

import React, { useState } from 'react';

import {AntDesign, Octicons,Feather, FontAwesome5,


Ionicons,MaterialCommunityIcons} from '@expo/vector-icons';

import CategoriesItems from '../components/CategoriesItems';

import TopBar from '../components/TopBar';

import { StatusBar } from 'expo-status-bar';

export default function CategoriesScreen({navigation}) {

const { styles } = useStyle();

const ScreenName = 'CATEGORIES';

var EnteredItem = '';

const updateData = (data) =>{

console.log(data);

EnteredItem = data;

GotoItemViewScreeen(EnteredItem);

40
const GotoItemViewScreeen = (EnteredItem) =>{

console.log(EnteredItem, 'data');

return (

<View style={styles.wholeScreen}>

<StatusBar style="auto" />

{/*Top Bar */}

<TopBar ScreenName={ScreenName} />

<ScrollView

showVertivalScrollIndicator={false}

>

<View style={{flexDirection:'column', flex: 1}}>

<View style={styles.itemRow}>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'bricks';+

navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

41
<Image
source={require('../assets/images/Categories/bricks.png')} style={styles.image}
/>

</TouchableOpacity>

<Text style={styles.text}>Bricks</Text>

</View>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'cement';

navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

<Image
source={require('../assets/images/Categories/cement.png')}
style={styles.image} />

</TouchableOpacity>

<Text style={styles.text}>Cement</Text>

</View>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'sand';

42
navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

<Image source={require('../assets/images/Categories/sand.png')}
style={styles.image} />

</TouchableOpacity>

<Text style={styles.text}>Sand</Text>

</View>

</View>

<View style={styles.itemRow}>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'gravel';

navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

<Image
source={require('../assets/images/Categories/gravel.png')} style={styles.image}
/>

</TouchableOpacity>

43
<Text style={styles.text}>Steels</Text>

</View>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'paint-box';

navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

<Image source={require('../assets/images/Categories/paint-
box.png')} style={styles.image} />

</TouchableOpacity>

<Text style={styles.text}>Paints</Text>

</View>

<View style={styles.container}>

<TouchableOpacity style={styles.round} onPress={()=>{

const EnteredItem = 'tiles';

navigation.navigate("SearchStack",{screen
:'SearchedItemsScreen',params:{EnteredItem}});

}}>

<Image source={require('../assets/images/Categories/tiles.png')}
style={styles.image} />

44
</TouchableOpacity>

<Text style={styles.text}>Tiles</Text>

</View>

</View>

</View>

</ScrollView>

</View>

const useStyle = () => {

const dimensions = useWindowDimensions();

const styles = StyleSheet.create({

wholeScreen:{

flex:1,

},

container:{

alignItems:'center'

},

45
round:{

},

image:{

height:dimensions.height/10,

width:dimensions.width/4.5,

marginRight:20,

marginLeft:5,

},

text:{

fontSize:14,

color: 'black',

},

itemRow:{

flexDirection:'row',

width:'100%',

marginTop: 20,

justifyContent:'space-evenly'

46
})

return { styles }

Products EngineeerScreen:

import {addDoc, collection, doc, Firestore, getDocs, onSnapshot,


QuerySnapshot, setDoc} from 'firebase/firestore';

import {auth, db} from '../src/config';

import { FlatList, ActivityIndicator, ScrollView, StyleSheet, Text,


TouchableOpacity, View } from 'react-native';

import React, { useCallback, useEffect, useLayoutEffect, useState } from 'react';

import { useFocusEffect, useRoute } from '@react-navigation/native';

import {AntDesign, MaterialIcons,Feather,SimpleLineIcons, FontAwesome5,


Entypo,Ionicons,MaterialCommunityIcons} from '@expo/vector-icons';

import EngineersItemCard from '../components/EngineersItemCard';

import { StatusBar } from 'expo-status-bar';

export default function EngineersScreen({navigation}) {

const [engineersData,setEngineersData] = useState([]);

let [isLoading,setIsLoading] = useState(true);

47
useEffect(() =>{

getDocs(collection(db, 'engineers'))

.then(docSnap => {

var data = [];

docSnap.forEach((doc) => {

data.push({ ...doc.data(), id: doc.id})

setIsLoading(false);

setEngineersData(data);

});

});

},[])

console.log(engineersData);

return (

<View style={styles.wholeScreen}>

<StatusBar style="auto" />

<View style={styles.adminsearchcontainer}>

48
<View style={{paddingLeft:22,paddingTop:7}}>

<Text style={{fontSize:16, fontWeight:'bold'}}>Engineers For


You</Text>

</View>

<View style={{flexDirection:'row'}}>

<Ionicons name='search' size={24} style={styles.searchIcon} />

</View>

</View>

<ScrollView contentContainerStyle={{

paddingHorizontal:15,

paddingTop: 10,

height: 49,

backgroundColor:'transparent'

}}

horizontal

showsHorizontalScrollIndicator={false}

>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text style={{fontSize:13}}>Sort By</Text>

</TouchableOpacity>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text> Filter </Text>

49
</TouchableOpacity>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text>Compose</Text>

</TouchableOpacity>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text>Prize</Text>

</TouchableOpacity>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text>Experience</Text>

</TouchableOpacity>

<TouchableOpacity style={styles.topscrollcontenets}>

<Text>Age</Text>

</TouchableOpacity>

</ScrollView>

<View style={styles.itemsView}>

{(() => {

if(isLoading==false){

return(

<FlatList

showsVerticalScrollIndicator={false}

50
data={engineersData}

renderItem={({item, index}) => {

return(

<EngineersItemCard item={item} navigation={navigation} />

);

}}

/>

);

}else{

return(

<ActivityIndicator color={'#ffdb00'} size='large' />

})()}

</View>

</View>

const styles = StyleSheet.create({

51
wholeScreen:{

flex:1

},

adminsearchcontainer:{

backgroundColor:'#ffdb00',

paddingTop:40,

flexDirection:'row',

justifyContent:'space-between',

paddingBottom:10,

alignItems:'center',

borderBottomColor:'black',

borderBottomWidth:.4

},

searchIcon:{

marginRight: 9,

},

Righticons:{

marginRight:10

},

topscrollcontenets:{

backgroundColor:'transparent',

52
borderColor:'black',

borderWidth:1,

borderRadius:20,

padding:9,

marginRight:10,

borderColor:'#C0BA,B7'

},

53
REFERENCE

I. React Native documentation: https://reactnative.dev/docs/getting-started

II. Firebase documentation: https://firebase.google.com/docs

III. "Building a Mobile E-commerce App with React Native" by Yash Soni on
Hacker Noon: https://hackernoon.com/building-a-mobile-e-commerce-
app-with-react-native-part-1-ml7t37ib

IV. "7 Best Practices for Mobile App Testing" by Sumit Agrawal on DZone:
https://dzone.com/articles/7-best-practices-for-mobile-app-testing

V. "E-commerce App Development: Features, Cost, and Tips" by Anna


Kuzenko on Cleveroad: https://www.cleveroad.com/blog/e-commerce-
app-development-features-cost-and-tips

VI. "7 Emerging Trends in E-commerce Mobile App Development" by Neeti


Kotia on MobileAppDaily: https://www.mobileappdaily.com/ecommerce-
mobile-app-development-tren…

54

You might also like