0% found this document useful (0 votes)
15 views41 pages

Major Proposal

FarmEase is a web-based platform designed to connect farmers and customers in the agriculture industry by providing tools for crop and fertilizer recommendations, inventory management, and real-time information access. The platform aims to streamline the supply chain, enhance productivity, and reduce costs through features like a two-way verification system for security and integration with external APIs for weather and news updates. The project is a part of a Bachelor's degree requirement and emphasizes the importance of digital solutions in modern agriculture.

Uploaded by

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

Major Proposal

FarmEase is a web-based platform designed to connect farmers and customers in the agriculture industry by providing tools for crop and fertilizer recommendations, inventory management, and real-time information access. The platform aims to streamline the supply chain, enhance productivity, and reduce costs through features like a two-way verification system for security and integration with external APIs for weather and news updates. The project is a part of a Bachelor's degree requirement and emphasizes the importance of digital solutions in modern agriculture.

Uploaded by

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

A Major Project Mid-Term Report on

FarmEase: An Integrated Farm Management Platform for Crop


and Fertilizer Recommendation, Prediction and Inventory
Management

Submitted in Partial Fulfillment of the Requirements for


The Degree of Bachelor in Computer Engineering
Under Pokhara University

Submitted by:
Ashish Sapkota 181406
Sanisha Maharjan 181436

Under the supervision of


Birendra Bista

Date: 8th June, 2023

Department of IT Engineering

NEPAL COLLEGE OF
INFORMATION TECHNOLOGY
Balkumari, Lalitpur , Nepal
ABSTRACT
FarmEase is a web-based platform that serves both farmers and customers. We propose to
develop a comprehensive solution that addresses the needs of both farmers and customers in the
agriculture industry. Customers may examine the inventory of products and place orders.
Farmers, on the other hand, may utilize this site to update their inventory and have access to a
variety of functions such as crop prediction, crop recommendation, fertilizer recommendation,
rainfall forecast, agriculture-related news via the News API and weather forecasting via
Openweathermap API. The two-way verification technique protects the site's security and
provides farmers and clients with an extra degree of safety.
The FarmEase is a vital tool that has the potential to revolutionize the agriculture industry by
increasing productivity, lowering costs, and increasing profitability. It is a one-stop solution for
farmers and customers, offering a variety of features and functions to meet their demands. The
site allows farmers to update their inventory and gain useful information regarding crop
prediction, fertilizers, news and weather. Customers may utilize the site to monitor product
inventory and place orders.
With this proposal, we hope to create a scalable, user-friendly, and efficient web app that caters
to both farmers and customers. We hope to enable the agriculture industry to reach its full
potential by providing farmers and customers with a comprehensive solution that meets their
needs.

Keyword: Python, PHP, Machine Learning, Agriculture, Prediction, Recommendation


Table of content
1. Introduction................................................................................................................................5
1.1 Problem Statement............................................................................................................... 6
1.2 Objective of the study.......................................................................................................... 7
1.3 Scope and Limitations..........................................................................................................8
2. Feasibility Study.........................................................................................................................9
3. Literature Review.................................................................................................................... 10
3.1 Agrivi.com:........................................................................................................................ 10
3.2 Farmlogs.com:................................................................................................................... 10
3.3 Agrio.app:.......................................................................................................................... 10
4. Methodology............................................................................................................................. 11
4.1 Process Model..................................................................................................................................11
4.1.1 Analysis phase.....................................................................................................11
4.2 Design phase.......................................................................................................... 11
4.3 Coding phase..........................................................................................................11
4.4 Testing phase..........................................................................................................12
4.2 Crop/Fertilizer Recommendation Using Random Forest Algorithm.............................................. 12
4.2.1 Crop Recommendation.......................................................................................................... 12
4.2.2 Fertilizer Recommendation....................................................................................................13
4.3 Rainfall Prediction using Data Analysis on average rainfall calculation........................................ 14
5. UML Diagrams.........................................................................................................................16
5.1 Use Case Diagram........................................................................................................................... 16
5.2 System Sequence Diagram.............................................................................................................. 17
5.3 ER Diagram..................................................................................................................................... 31
5.4 Class Diagram..................................................................................................................................32
5.5 Activity Diagram............................................................................................................................. 33
5.6 Overall SSD Diagram...................................................................................................................... 35
7. Project Task and Time Schedule............................................................................................ 37
8. Work Breakdown..................................................................................................................... 38
9. Resources.................................................................................................................................. 39
10. Expected Output.................................................................................................................... 40
11. Bibliography........................................................................................................................... 41

List of Figures:
4.1.1. Incremental model .............................................................................................................................11
5.1. Use Case Diagram ................................................................................................................................16
5.2 System Sequence Diagram.....................................................................................................................17
5.2.1 System Sequence Diagram for Signup............................................................................ 17
5.2.2 System Sequence Diagram for Login.............................................................................18
5.2.3 System Sequence Diagram for Add Inventory................................................................ 19
5.2.4 System Sequence Diagram for Read News..................................................................... 20
5.2.5 System Sequence Diagram for Get Crop Recommendation........................................... 21
5.2.6 System Sequence Diagram for Get Fertilizer Recommendation.....................................22
5.2.7 System Sequence Diagram for Access Rainfall Prediction.............................................23
5.2.8 System Sequence Diagram for Forecast Weather............................................................24
5.2.9 System Sequence Diagram for Edit profile..................................................................... 25
5.2.10 System Sequence Diagram for View Inventory............................................................ 26
5.2.11 System Sequence Diagram for Add to Cart..................................................................27
5.2.12 System Sequence Diagram for Manage Customers...................................................... 28
5.2.13 System Sequence Diagram for Manage Farmers.......................................................... 29
5.2.14 System Sequence Diagram for View Queries................................................................30
5.3 ER Diagram..................................................................................................................................... 31
5.4 Class Diagram..................................................................................................................................32
5.5 Activity Diagram............................................................................................................................. 33
5.5.1 Activity Diagram for Inventory & Supply Chain Management...................................... 33
5.5.2 Activity Diagram for ML................................................................................................ 34
5.6 Overall SSD Diagram...................................................................................................................... 35

List of Tables:

7.1. Project Task and Time schedule............................................................................................................ 37


8. Work Breakdown .....................................................................................................................................38
9. Resources ................................................................................................................................................ 39
1. Introduction
FarmEase is a platform that connects farmers and customers in the agricultural industry. This
web app will function as a virtual marketplace for agricultural products, offering farmers a
variety of tools for managing inventories, accessing crop suggestions, and predicting optimal
planting and harvesting seasons. Customers, on the other hand, would be able to order a wide
variety of agricultural products directly through the web.

The agriculture business is a major part of the economy, and it is critical to equip farmers with
the necessary tools and resources to improve their productivity. There has been an increasing
trend toward digitalization and the use of technology in agriculture in recent years. The proposed
web app attempts to capitalize on this trend by providing farmers and customers with an
easy-to-use internet platform to simplify commercial transactions.

The web app will utilize Random forest, a supervised machine learning algorithm used in crop
recommendation systems, as well as in crop prediction and fertilizer recommendation systems.

Inventory management, crop prediction, crop suggestion, and access to news and weather
condition is among the elements of the web app that will give farmers with useful information to
help them make smart crop selections and boost productivity. The platform will also make
agricultural products more accessible to customers, helping to streamline the supply chain.

Overall, the planned web app will help both producers and buyers in the agriculture industry. We
hope to achieve a more efficient and sustainable farm environment while encouraging economic
growth and development by harnessing technology.
1.1 Problem Statement

1. Traditional supply chain models in the agriculture industry are often inefficient, resulting
in delays, waste, and lower quality products for customers. [4]
2. Farmers lack access to real-time information and tools to enhance their farming practices.
3. Customers face challenges in accessing quality agricultural products and information on
crop availability and pricing.
4. The absence of a centralized platform that caters to the needs of both farmers and
customers is a significant challenge.
5. Lack of information and data on crop yield, rainfall, and weather conditions limit the
effectiveness of farming practices, resulting in decreased productivity and profitability for
farmers.
6. The COVID-19 pandemic has highlighted the need for digital solutions in the agriculture
industry, as physical distancing measures have disrupted traditional supply chains and
markets.
1.2 Objective of the study

The main objective is stated below:


1. To provide farmers with a user-friendly platform to manage their inventory and access
valuable tools such as crop prediction, crop recommendation, and fertilizer recommendation.
2. To provide customers with a convenient way to access a wide range of agricultural products
and place orders directly through the web app.
3. To streamline the supply chain in the agriculture industry and reduce inefficiencies by
providing a platform that connects farmers directly with customers.
4. To provide access to news enabling farmers to make informed decisions about their crops
and improve productivity.
5. To ensure security and privacy by implementing a two-way verification system to log in
using a password and an OTP sent to the user's email.
6. To reduce the time and effort required for manual record-keeping and data management by
providing an automated system for managing inventory and orders.
1.3 Scope and Limitations

The following are the scope of the system,


1. FarmEase will be an online platform that offers a range of features and functionalities to
farmers and customers in the agriculture industry.
2. Farmers can view the inventory, update inventory, process crop prediction, crop
recommendation, fertilizer recommendation, rainfall prediction, access
agriculture-related news using News API and forecast weather using Openweathermap
API.
3. Customers can view the inventory, order products, and access information on crop
availability and pricing.
4. Both farmers and customers can log in to the system with a 2-way verification using a
password and OTP sent to their email.
5. The platform will integrate with external APIs like NEWS API for news forecasting and
Openweather API for weather forecasting.
6. FarmEase will offer a marketplace for farmers to sell their products directly to customers,
thereby cutting out middlemen and reducing transaction costs.

The limitations of the system would be,


1. The FarmEase will only be accessible to farmers and customers with internet connectivity
and access to digital devices.
2. The accuracy of the crop prediction and rainfall prediction features will depend on the
availability and accuracy of data sources.
3. The platform's success will depend on the adoption rate by farmers and customers in the
agriculture industry.
4. The platform's scalability may be limited by technological constraints and the availability
of resources.
5. The platform will not be responsible for any issues related to the quality of the products
sold by farmers to customers or any issues related to the transaction between the two
parties.
6. The platform may face challenges in building trust and overcoming traditional barriers to
adoption in the agriculture industry, such as resistance to change and lack of digital
literacy.
7. Data should be added to the entry and measured with the NPK kit. The NPK kit is not
easily available and its usage can be difficult.
2. Feasibility Study
Before implementing FarmEase, it is essential to conduct a feasibility study to determine the
viability and potential success of the project. Here are some factors to consider:

1. Technical Feasibility: To create and manage the web app, FarmEase will require
technological skills. To guarantee that the platform functions properly, the essential
technological infrastructure, such as servers, databases, and software, must be available
and accessible.
2. Operational Feasibility: The platform must be user-friendly and easy to navigate for
both farmers and customers. The platform must be accessible from any device with an
internet connection, and users must have a reliable internet connection to use the platform
effectively.
3. Market Feasibility: FarmEase must have a solid market and meet a need in agriculture.
There must be a need for the platform's services, and the platform must be able to
compete with existing platforms.
4. Social Feasibility: FarmEase must be socially acceptable and align with the target
audience's values and beliefs. The platform must be inclusive and accessible to all users,
regardless of their background or location.
3. Literature Review
3.1 Agrivi.com:
Agrivi is an online farm management software that helps farmers improve their productivity and
profitability. It offers various features such as crop management, inventory management,
financial management, weather forecasting, and market analysis. [1]

3.2 Farmlogs.com:
FarmLogs is a farm management software that provides farmers with tools to manage their farm
operations, including field monitoring, crop planning, rainfall tracking, and yield analysis. While
it does not provide direct crop recommendations, its features can help farmers make data-driven
decisions about their crops. [2]

3.3 Agrio.app:
Agrio.app is a digital platform that provides farmers with soil health, plant nutrition, pest and
disease control, and weather forecasting information. Based on real-time data and analytics, it
also provides individualized crop management strategies and recommendations. Furthermore, the
platform functions as a marketplace for farmers to buy and sell their produce. Agrio.app seeks to
assist farmers in increasing agricultural yields and profitability while supporting environmentally
responsible farming techniques. [3]
4. Methodology
4.1 Process Model
For this project, we have used the Incremental Model of Software Process Model. The process is
repeated following the delivery of each increment, until the complete product is produced.

Fig4.1.1: Incremental Model

Incremental model includes following phases:

4.1.1 Analysis phase


In this phase, requirements to develop the system will be identified and the system functional
requirements will be understood in order to develop the desired system.

4.2 Design phase


In this phase, the outcome of the analysis phase i.e SRS (Software Requirement Specifications)
would be translated into the system's design. E-R diagram, use case diagram will be developed.

4.3 Coding phase


In this phase, coding will be done according to the system design and the working system will
be developed by the end of the process.

4.4 Testing phase


In this phase, the system will be tested. With each testing, certain changes will be made
according to the suggestion. The change will be applied to the system in successive increment
manner until the satisfactory system is achieved.
4.2 Crop/Fertilizer Recommendation Using Random Forest Algorithm

Random Forest is a well-known supervised learning algorithm widely used in machine learning.
It is suitable for both Classification and Regression tasks. The algorithm utilizes the concept of
ensemble learning, where multiple classifiers are combined to tackle complex problems and
enhance model performance. As its name implies, Random Forest operates as a classifier that
comprises several decision trees, each built on different subsets of the given dataset. It then
calculates the average of predictions from these trees to improve the accuracy of overall model.
Rather than relying on a single decision tree, the random forest takes into account the predictions
from each tree and makes the final output prediction based on the majority of votes.[5]

4.2.1 Crop Recommendation


In the context of crop recommendation, the Random Forest algorithm is employed to predict the most
suitable crops based on various input parameters related to the agricultural environment.

4.2.1.1 Importing the Required Libraries:


We import the necessary libraries, including pandas for data manipulation, numpy for numerical
computations, json for parsing JSON strings, and sys for accessing command line arguments.
Additionally, the RandomForestClassifier class from sklearn.ensemble module is imported for
implementing the Random Forest Classifier algorithm.

4.2.1.2 Receiving Input Parameters:


We retrieve input parameters as command line arguments, which are expected to be in JSON format.
These parameters represent features such as nitrogen, phosphorous, potassium, temperature, humidity, pH,
and rainfall. The JSON strings are parsed into Python objects using the json.loads() function.

4.2.1.3 Loading and Preparing the Dataset:


We read the dataset from a CSV file using the pandas library. The dataset is divided into features (X) and
labels (y). X contains all the columns except the last one, which represents the target variable (crop).

4.2.1.4 Splitting the Dataset:


The dataset is split into training and test sets using the train_test_split() function from the
sklearn.model_selection module. The training set comprises 70% of the data, while the test set holds the
remaining 30%.
4.2.1.5 Training the Model:
An instance of the RandomForestClassifier class, classifier, is created with a random state of 0. The
Random Forest Classifier model is trained using the fit() method by passing the training data(X_train,
y_train) as arguments.

4.2.1.6 Generating Crop Recommendations:


The user inputs for agricultural parameters are stored in a numpy array called user_input. These inputs
represent a specific agricultural context, including nitrogen, phosphorous, potassium, temperature,
humidity, pH, and rainfall. The trained Random Forest model is utilized to make predictions on the
user_input. The predicted crop is stored in the predictions variable.

4.2.1.6 Displaying the Result:


Finally, the predicted crop is printed as the output using the print() function.

4.2.2 Fertilizer Recommendation


In the context of fertilizer recommendation, the Random Forest algorithm is employed to predict the most
suitable fertilizer based on various input parameters related to the agricultural environment. Let's explore
how the code utilizes the Random Forest algorithm for fertilizer recommendation:

4.2.1.1 Importing the Required Libraries:


We import the necessary libraries, including pandas for data manipulation and sys for accessing command
line arguments. The LabelEncoder class from the sklearn.preprocessing module is imported to perform
label encoding on categorical features. The RandomForestClassifier class from the sklearn.tree module is
imported for implementing the Random Forest algorithm.

4.2.1.2 Loading and Preparing the Dataset:


We read the dataset from a CSV file using the pandas library. The dataset is divided into features (X) and
labels (y). X contains all the columns except the last one, which represents the target variable (crop).

4.2.1.3 Splitting the Dataset:


The dataset is split into training and test sets using the train_test_split() function from the
sklearn.model_selection module. The test set size is set to 30% of the data, and the random state is set to 0
for reproducibility.
4.2.1.4 Training the Model:
The Random Forest Classifier model is created using the RandomForestClassifier class, initialized with a
random state of 0. The model is trained on the input variables (X) and the output variable (y) using the
fit() function.

4.2.1.5 Receiving Input Parameters:


We retrieve the input parameters as command line arguments. These arguments are expected to be
provided in the following order: nitrogen (jsonn), phosphorous (jsonp), potassium (jsonk), temperature
(jsont), humidity (jsonh), soil moisture (jsonsm), soil type (jsonsoil), and crop type (jsoncrop).

4.2.1.7 Encoding Categorical Features:


The soil type and crop type from the input parameters are encoded using the label encoders (le_soil and
le_crop) that were fit on the dataset. The transform() method is used to transform the corresponding JSON
strings to their encoded numerical representations.

4.2.1.6 Creating User Input and Making Prediction


The user input, including the encoded soil type and crop type, is stored in a nested list called user_input.
The predict() method is called on the trained Random Forest model using the user_input to predict the
appropriate fertilizer.

4.2.1.6 Displaying the Result:


Finally, the predicted fertilizer is printed as the output using the print() function.

4.3 Rainfall Prediction using Data Analysis on average rainfall


calculation
We’ve used simple data analysis and prediction of rainfall based on the average rainfall calculation of the
statistical data. The following are the steps

4.3.1 Importing Required Libraries:


We import the pandas library for data manipulation and sys for accessing command line arguments

4.3.2 Loading the Dataset:


We load the dataset containing climate data from the CSV file into a pandas DataFrame.
4.3.3 Defining the Rainfall Prediction Function:
We define a function named predict_rainfall, which takes two parameters: state(district) and month.
Within the function, it filters the DataFrame to include only rows with the given district(state) using
boolean indexing. It then calculates the average rainfall for the given month across all the years by taking
the mean of the corresponding column in the filtered data. Finally, it returns the predicted rainfall value
for the given month.

4.3.4 Getting Input Parameters:


We retrieve the input parameters for rainfall prediction, namely Jregion(district) and Jmonth(month) as
command line arguments.

4.3.5 Calling the Prediction Function:


We then call the predict_rainfall function with the input parameters Jregion and Jmonth to obtain the
predicted rainfall value. The value will be stored in the predicted_rainfall variable.

4.3.6 Displaying the Result:


Finally, we print the predicted rainfall value using the print() function.
5. UML Diagrams
5.1 Use Case Diagram

Fig 5.1: Use Case Diagram


5.2 System Sequence Diagram

5.2.1 Signup

Fig 5.2.2: System Sequence Diagram of Signup


Name: Signup
Actor: Farmer, Customer
Description: The User (Farmer/Customer) can sign up to the system before they use any of the
functionalities.
Precondition: Customer/Farmer is identified and authenticated by the system
Postcondition: Customer/Farmer signup to the system. Customer views crops stock & add
selected crops to cart. Farmers add crops & perform crop recommendation, fertilizer
recommendation, crop prediction, rainfall prediction. Farmers view news as well as weather.
5.2.2 Login

Fig 5.2.2: System Sequence Diagram of login


Name: Login
Actor: Farmer, Customer, Admin
Description: The User (Farmer/Customer) and admin can login to the system before they use
any of the functionalities.
Precondition: Customer/Farmer/Admin is identified and authenticated by the system
Postcondition: Customer/Farmer/Admin logins to the system. Customer views crops stock.
Customer add the selected crops to cart. Farmer add crops to stock. Farmer performs crop
recommendation, fertilizer recommendation, crop prediction, rainfall prediction. Farmer views
news. Farmer views weather. Admin has functionalities like managing customers and farmers &
viewing queries.
5.2.3 Add Inventory

Fig 5.2.3: System Sequence Diagram of Add Inventory

Name: Add Inventory


Actor: Farmer
Description: Farmer will add new crops and quantity to the system.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer adds crops to the stock. Farmers mentions quantity and price details.
5.2.4 Read News

Fig 5.2.4: System Sequence Diagram of Read News

Name: Read News


Actor: Farmer
Description: Farmer will read daily updated news in the system.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer reads daily updated news from the system. Farmer visits the news site.
5.2.5 Get Crop Recommendation

Fig 5.2.5: System Sequence Diagram of Get Crop Recommendation

Name: Get Crop Recommendation


Actor: Farmer
Description: Farmer can use the system to receive crop recommendations based on various
factors, helping them make informed decisions about which crops to cultivate.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer receives crop recommendations based on input criteria.
5.2.6 Get Fertilizer Recommendation

Fig 5.2.6: System Sequence Diagram of Get Fertilizer Recommendation

Name: Get Fertilizer Recommendation


Actor: Farmer
Description: The Farmer can utilize the system to obtain recommendations for suitable
fertilizers based on specific crop and soil requirements, aiding in efficient nutrient management.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer receives fertilizer recommendations based on crop and soil information.
5.2.7 Access Rainfall Prediction

Fig 5.2.7: System Sequence Diagram of Access Rainfall Prediction

Name: Access Rainfall Prediction


Actor: Farmer
Description: The Farmer can access the system to obtain rainfall predictions for their area,
assisting in planning irrigation schedules and making informed decisions related to crop
management.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer receives rainfall predictions for their area.
5.2.8 Forecast Weather

Fig 5.2.8: System Sequence Diagram of Forecast Weather

Name: Forecast Weather


Actor: Farmer
Description: The Farmer can access the system to obtain weather forecasts for their area,
enabling them to plan agricultural activities and make informed decisions regarding crop
management.
Precondition: Farmer is identified and authenticated by the system.
Postcondition: Farmer receives weather forecast for their area.
5.2.9 Edit profile

Fig 5.2.9: System Sequence Diagram of Edit Profile

Name: Edit Profile


Actor: Farmer, Customer
Description: The Farmer/Customer can utilize the system to edit their profile information,
allowing them to update and manage their personal details within the system.
Precondition: Farmer/Customer is identified and authenticated by the system.
Postcondition: Farmer or Customer successfully edits their profile information.
5.2.10 View Inventory

Fig 5.2.10: System Sequence Diagram of View Inventory

Name: View Inventory


Actor: Farmer, Customer
Description: Farmer/Customer can access the system to view the inventory, allowing them to see
the available stock of crops or products
Precondition: Farmer/Customer is identified and authenticated by the system.
Postcondition: Farmer/Customer successfully views the inventory.
5.2.11 Add to Cart

Fig 5.2.11: System Sequence Diagram of Add to Cart

Name: Add to Cart


Actor: Customer
Description: Customer can use the system to add selected crops to their cart, enabling them to
gather items for purchase or further consideration before proceeding to checkout.
Precondition: Customer is identified and authenticated by the system.
Postcondition: Customer successfully adds selected crops to their cart.
5.2.12 Manage Customers

Fig 5.2.12: System Sequence Diagram of Manage Customers

Name: Manage Customers


Actor: Admin
Description: Admin has the authority to manage customers within the system, including the
ability to delete customer accounts as necessary.
Precondition: Admin is identified and authenticated by the system.
Postcondition: Admin successfully deletes customer accounts.
5.2.13 Manage Farmers

Fig 5.2.13: System Sequence Diagram of Manage Farmers

Name: Manage Farmers


Actor: Admin
Description: Admin has the authority to manage farmers within the system, including the ability
to delete farmer accounts as necessary.
Precondition: Admin is identified and authenticated by the system.
Postcondition: Admin successfully deletes customer accounts.
5.2.14 View Queries

Fig 5.2.14: System Sequence Diagram of View Queries

Name: View Queries


Actor: Admin
Description: Admin can access the system to view queries submitted by customers or farmers,
enabling them to review and respond to inquiries or concerns.
Precondition: Admin is identified and authenticated by the system.
Postcondition: Admin successfully views queries submitted by customers or farmers.
5.3 ER Diagram

Fig 5.3: ER Diagram

The ER diagram consists of various entities: Admin, CustomerLogin, FarmerLogin, ContactUs, Province,
District, Cart, Production_Approx, and Farmer_Crops_Trade. Admin is responsible for managing
customers, farmers, and viewing queries. CustomerLogin and FarmerLogin store login details for
customers and farmers respectively. ContactUs handles user inquiries. Province and District entities
represent geographical locations. Cart stores selected items for customer purchases. Production_Approx
contains crop data including crop name and quantity. Farmer_Crops_Trade manages trade-related
information for farmers.
5.4 Class Diagram

Fig 5.4: Class Diagram

The class diagram includes several classes: Admin, Custlogin, Farmerlogin, Contact_us, Province,
District, Cart, Production_Approx and Farmer_crops_trade. Admin handles system administration tasks
like viewing users list and deleting them if necessary. Custlogin and Farmerlogin manage login
information for customers and farmers respectively. Farmers can perform several functionalities like
predicting crops and rainfall, getting crops and fertilizers recommendation, viewing news and forecasting
weather. Contact_us deals with user inquiries. Province and District represents geographical locations.
Cart stores selected items to purchase, Production_Approx tracks crop production data namely crop_name
and quantity. Farmer_crops_trade manages trade-related information for farmers.
5.5 Activity Diagram
5.5.1 Activity Diagram for Inventory & Supply Chain Management

Fig 5.5.1: Activity Diagram for Supply Chain Management


5.5.2 Activity Diagram for ML

Fig 5.5.2: Activity Diagram for ML


5.6 Overall SSD Diagram
Fig 5.6.2: Overall SSD Diagram
7. Project Task and Time Schedule

Fig 7.1: Project Task and Time Schedule 1

Fig 7.2: Project Task and Time Schedule 2

Fig 7.3: Project Task and Time Schedule 3

Fig 7.4: Project Task and Time Schedule 4


8. Work Breakdown

S. N Activity Person

1. Project analysis Sanisha, Ashish

2. Project Proposal Sanisha, Ashish

3. Dataset Research Sanisha, Ashish

4. System Design Sanisha, Ashish

5. Coding and Implementation Sanisha, Ashish

6. Model Design Sanisha, Ashish

7. Database Design Sanisha, Ashish

8. Testing and Debugging Sanisha, Ashish

9. Documentation Sanisha, Ashish


9. Resources
HTML, CSS For developing UI

Python Machine Learning Task

PHP Backend

MySQL Database

GitHub Manage Source Code

Microsoft Word Documentation

Dataset NARC, OpenDataNepal


10. Expected Output

FarmEase, the proposed agriculture web app, is poised to have a significant impact on the
agriculture industry, delivering several key outcomes. Firstly, it aims to enhance the efficiency
and transparency of the agriculture supply chain, resulting in lower transaction costs and better
prices for both farmers and customers. The platform's ultimate goal is to establish connections
between a wide range of customers and farmers, facilitating mutually beneficial transactions.
The platform would leverage APIs like News API to provide farmers with information on crop
prediction, and agricultural news as well as Openweathermap API to provide farmers the facility
of forecasting weather. This would enable them to make informed decisions about their farming
practices and purchases, resulting in better outcomes for both. By providing farmers with tools
like crop prediction and rainfall prediction, the platform would enable them to anticipate and
prepare for weather-related risks, reducing the impact of climate-related disasters on their crops
and livelihoods.
Overall, FarmEase has the potential to transform the agriculture industry by delivering
significant benefits to farmers, customers, and other stakeholders. From improved efficiency and
transparency to increased resilience and online trade, the platform has the potential to unlock
new opportunities for growth and development in the agriculture sector.
11. Bibliography
[1]“Agrivi.” AGRIVI: Farm Management Software for Digital Agriculture,

https://www.agrivi.com/. Accessed 11 May 2023.

[2]“FarmLogs.” Bushel Farm: Best Farm Management Software, https://bushelfarm.com/.

Accessed 11 May 2023.

[3]“Agrio.app.” Agrio | Protect your crops, https://agrio.app/. Accessed 11 May 2023.

[4]“Kullabs.”https://www.kullabs.org/class-miscellaneous/social-studies-1/class-99/problems-of-

nepalese-agriculture-and-their-solutions. Accessed 11 May 2023.

[5]“Machine Learning Random Forest Algorithm.” Javatpoint,

https://www.javatpoint.com/machine-learning-random-forest-algorithm. Accessed 8 June

2023.

You might also like