CHAPTER-1
INTRODUCTION
1. INTRODUCTION
has lagged in comparison to other sectors of the economy; there has been a
slow adoption rate to utilizing the internet and integrating IT into business
they do have the confidence to leave the old ways behind and grab the
technology bull by the horns as such. The broadening variety and availability of
such as the internet has allowed for the more efficient management of
focused as New Zealand, the application of IT into business processes not only
i) What is E-farming?
(Swain, 2002). The best way to manage information is through the use of IT,
use of IT and some farms still stand by this today, despite the potential for
the most traditional industry, it is easy to see how the use of IT in conducting
marketing for these products, farmers are becoming more aware of the benefits
Provides facility of scheduling classes for farmers who enrolled for basic
courses. Sites are also available in their local languages as per states. Online
sales and purchase details of both formers and wholesales are should maintain
different kind of reports which are helpful to knowing information of sales and
purchases.
CHAPTER-2
System Analysis
2. SYSTEM ANALYSIS
This system provides an online site which will help farmers from
The current system does not provide classes to formers to get knowledge
The current system does not providing courses to learn basics of how to
The current system does not provide websites to formers in their local
languages.
try to automate the entire process and aware the formers to globalize their
products.
computer.
Provides facility of scheduling classes for farmers who enrolled for basic
courses.
Online sales and purchase details of both formers and wholesales are
CHAPTER-3
Feasibility Study
3. FEASIBILITY STUDY
3.1 Technical Feasibility:-
Evaluating the technical feasibility is the trickiest part of a feasibility study.
This is because, at this point in time, not too many detailed design of the
system, making it difficult to access issues like performance, costs on (on
account of the kind of technology to be deployed) etc. A number of issues have
to be considered while doing a technical
analysis.
ii) Find out whether the organization currently possesses the required
technologies:
that will meet the organizations operating requirements. Simply stated, this
test of feasibility asks if the system will work when it is developed and
installed. Are there major barriers to Implementation? Here are questions that
Is there sufficient support for the project from management from users? If the
current system is well liked and used to the extent that persons will not be able
Are the current business methods acceptable to the user? If they are not, Users
may welcome a change that will bring about a more operational and useful
systems.
Have the user been involved in the planning and development of the project?
Since the proposed system was to help reduce the hardships encountered. In
the existing manual system, the new system was considered to be operational
feasible.
having the new system in place. This feasibility study gives the top
A simple economic analysis which gives the actual comparison of costs and
benefits are much more meaningful in this case. In addition, this proves to be a
CHAPTER-4
System Requirement Specification
Document
4.1Overview:-
The main objective of this project is to build a website which will help
2. User Interface.
3. Security Authentication.
4. Reports.
5. General end-users.
The administrative user interface will maintain the different user’s details;
the interface helps the administration with all the transactional states like
which users are sending the mails, and which users receiving whishing mails,
users details information history. And the statistics of the system in difference
strategies.
No of Modules:-
The system after careful analysis has been identified to be presented with the
following modules:
1. Administrator
2. Farmers
3. Wholesaler
4. Computer professionals
6. Internationization
Administrator:-
Admin should be able to see all record from any users. The records shown for
selling should be available in a format of Quantity name, Quantity available,
price. Admin can add the Crops.
Farmers:-
Farmers can register into site as a farmer and There is a option to select
whether he wants to take lesson or if he is already familiar with online buying
and selling then he can directly go to sell his products. He can sell his products
also.
Wholesaler:-
He can register in to site as a Wholesaler and there is a option he needs to fill all
details as per requirement – place, shop address, which product he wants to buy,
quantity etc .He will buy the products directly from farmers.
Computer professionals:-
Computer professionals will provide a user manual for the site. If anybody not familiar
with the site by using that manual they can learn how to operate the application to sell
or buy their products.
a. User registration
c. Forgot password.
Architecture Diagram:-
This layer encapsulates the Business rules or the business logic of the
encapsulations. To have a separate layer for business logic is of a great
advantage. This is because any changes in Business Rules can be easily
handled in this layer. As long as the interface between the layers remains
the same, any changes to the functionality/processing logic in this layer
can be made without impacting the others. A lot of client-server apps
failed to implement successfully as changing the business logic was a
painful process
layer. The different application layers send the data requests to this layer
and receive the response from this layer.
At the customer option, the entire project can be aborted if the risk is
deemed too great. Risk factors might involved development cost
overruns, operating-cost miscalculation, or any other factor that
could, in the customer’s judgment, result in a less-than-satisfactory
final product.
The preceding steps are iterated until the customer is satisfied that
the refined prototype represents the final product desired.
Advantages:-
Software engineers can get their hands in and start woring on the
core of a project earlier.
Processor : Pentium IV
Hard Disk : 40GB
RAM : 512MB or more
CHAPTER-5
System Design
A UML system is represented using five different views that describe the system
which is as follows.
end-users perspective.
i. In this model the data and functionality are arrived from inside the
system.
In this the structural and behavioral aspects of the environment in which the
Class Diagram:-
Actors are external entities that interact with the system. Examples of actors
include users like administrator, bank customer …etc., or another system like
central database.
System
Administrtor
E-Farming
Farmer
Wholesaler
ComputerProfessional
System
AddCrops
Crops DeleteCrops
<<include>>
viewCrops
AddFaculty
ComputerFaculty
DeleteFaculty
<<include>>
viewFaculty
Administrator
AddCourses
<<include>>
viewSchedule
DeleteFarmerRecord
FarmerRecords
<<include>>
UserRecords
WholeSalersRecords
<<include>> DeleteWholesalerRecord
System
CourseRequest
courses
ViewSchedule
AddCrop
crops DeleteCrop
<<include>>
ViewCrop
farmer
<<include>>
UpdateCrop
SalesDetails
System
Login
BuyCrops
OrderCrops
WholeSaler
PayAmount
PurchaseDetails
Logout
System
Login
ViewCourse
Courses
ViewCourseRequest
ComputerProfessional
Update
ViewSchedule
<<include>>
Schedules
<<include>>
Delete
DesignSchedule
Logout
Sequence Diagram:-
Administrator Sequence Diagram:-
1 : Login()
2 : validation()
4 : valid()
3 : invaidLogin
5 : addCrops()
6 : viewCrops()
7 : sucess
8 : deleteCrops()
9 : addComputerProfessional()
10 : viewComputerProfessional()
11 : sucess
12 : deleteComputerProfessional()
13 : addCourse()
14 : viewCourse()
15 : sucess
16 : deleteCourse()
17 : viewSchedule()
18 : farmeRecords()
19 : wholeSalerRecord()
20 : Logout()
21 : LoginAgain()
Farmer Authentication
FarmerHome
Courses Crop
SalesDetails Logout
1 : Login()
2 : validation()
4 : Success()
3 : LoginFailed
5 : courseRequest()
6 : viewSchedule()
7 : sucess
8 : addCrop()
9 : viewCrop()
10 : sucess
11 : updateCrop()
12 : deleteCrop()
13 : salesDetails()
14 : Logout()
15 : LoginAgain()
PurchaseDetails Logout
WholeSaler Authentication Home BuyCrops
1 : Login()
2 : authenication()
4 : ifVailid()
3 : ifInbalid
5 : viewCrops()
6 : sucess
7 : makeOrder()
8 : payAmount()
9 : viewPurchaseDetails()
10 : reply
11 : Logout()
12 : LoginAgain()
Schedule Logout
ComputerProfessional Authentication Home Courses
1 : Login()
2 : authenication()
4 : ifVailid()
3 : ifInbalid
5 : viewCourse()
6 : sucess
7 : viewCourseRequest()
8 : sucess
9 : viewSchedules()
10 : reply
11 : UpdateSchedule()
12 : DeleteSchedule()
13 : prepareSchedule()
14 : Logout()
15 : LoginAgain()
Collaboration Diagrams:-
Operation-Level Sequence Diagram:-
1: login
2: login
3: validate
4: validlogin
5: validlogin
3: validate
login
2: login 4: validlogin
5: validlogin 1: login
User
Administ
rator
UserRecords
ComputerProfessionals Courses
Logout
18 : farmeRecords()
Crops
19 : wholeSalerRecord()
17 : viewSchedule()
16 : deleteCourse()
7 : sucess
11 : sucess 14 : viewCourse()
6 : viewCrops()
13 : addCourse()
9 : addComputerProfessional() 20 : Logout()
5 : addCrops() 10 : viewComputerProfessional()
15 : sucess
21 : LoginAgain() 8 : deleteCrops()
12 : deleteComputerProfessional()
Administrtor
3 :1invaidLogin
: Login()
2 : validation()
Authentication
4 : valid()
AdminHome
Crop
SalesDetails Courses
Logout
12 : deleteCrop()
13 : salesDetails()
11 : updateCrop()
14 : Logout() 9 : viewCrop()
56::courseRequest()
viewSchedule()
7 : sucess
8 : addCrop()
10 : sucess
2 : validation()
Authentication
4 : Success()
1 : Login()
3 : LoginFailed FarmerHome
15 : LoginAgain()
Farmer
BuyCrops
Logout PurchaseDetails
9 : viewPurchaseDetails() 6 : sucess
11 : Logout()
5 : viewCrops()
10 : reply
8 : payAmount()
7 : makeOrder()
Home
12 : LoginAgain() 4 : ifVailid()
Schedule 12 : DeleteSchedule()
Courses
11
10 :: UpdateSchedule()
reply
9 : viewSchedules() 6 : sucess 8 : sucess
5 : viewCourse()
13 : prepareSchedule()
14 : Logout()
7 : viewCourseRequest()
Logout Home
4 : ifVailid()
15 : LoginAgain()
2 : authenication()
ComputerProfessional 1 : Login()
Authentication
3 : ifInbalid
Activity Diagram:-
Administrator
Authentication
ifFail
Professional
crops
Courses UserRecords
Logout
Farmer
Authentication
ifFail
Course
crops
ViewSalesDetails
DeleteCrops UpdateCrop
Logout
ComputerProfessional
Authentication
ifInValid
ifValid
Logout
Courses
Schedule
ViewCourse CourseSchedule
ViewSchedule DesignSchedule
UpdateSchedule DeketeSchedule
WholeSaler
Authentication
ifInValid
ifValid
Logout
BuyCrops
PurchaseDetails
viewCrops
Order
Payment
Component Diagram:-
Deployment Diagram:-
Address:-
Crop:-
Crop_Farmer:-
Course:-
Course_Enroll:-
Payment:-
Schedule:-
Wholesalers_order:-
Login master:-
CHAPTER-6
TECHNOLOGY DESCRIPTION
HTML:-
HTML is also often used to refer to content of the MIME type text/html or even
more broadly as a generic term for HTML whether in its XML-descended form
(such as XHTML 1.0 and later) or its form descended directly from SGML.
Attributes:-
Most elements take any of several common attributes: id, class, style and title.
Most also take language-related attributes: lang and dir.
For example, an HTML document (or a set of documents) may use the
designation class="notation" to indicate that all elements with this class value
are all subordinate to the main text of the document (or documents). Such
notation classes of elements might be gathered together and presented as
footnotes on a page, rather than appearing in the place where they appear in
the source HTML.
JavaScript:-
Even though JavaScript supports both client and server Web programming, we
prefer JavaScript at Client side programming since most of the browsers
supports it. JavaScript is almost as easy to learn as HTML, and JavaScript
<SCRIPTS>.. </SCRIPT>.
JavaScript statements
</SCRIPT>
Java Technology:-
Initially the language was called as “oak” but it was renamed as “Java” in
1995. The primary motivation of this language was the need for a platform-
independent (i.e., architecture neutral) language that could be used to create
software to be embedded in various consumer electronic devices.
The key that allows the Java to solve the security and portability problems is
that the output of Java compiler is Byte code.
Beyond the language, there is the Java virtual machine. The Java virtual
machine is an important element of the Java technology. The virtual machine
can be embedded within a web browser or an operating system. Once a piece of
Java code is loaded onto a machine, it is verified
Java .Class
What Is JDBC?
JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC
is a trademarked name and is not an acronym; nevertheless, JDBC is often
thought of as standing for Java Database Connectivity. It consists of a set of
classes and interfaces written in the Java programming language. JDBC
provides a standard API for tool/database developers and makes it
The JDBC drivers that we are aware of at this time fit into one of four
categories:
SQL:-
Data definition: Defining tables and structures in the database (DDL used to
create, alter and drop schema objects such as tables and indexes).
Data manipulation: Used to manipulate the data within those schema objects
(DML Inserting, Updating, Deleting the data, and Querying the Database).
List of SQL statements that can be issued against an Oracle database schema
are:
SERVLETS:-
Servlets are to the server-side what applets are to the client-side - object byte
codes that can be dynamically loaded off the net. They differ from applets in
that they are faceless objects (without graphics or a GUI component). They
serve as platform independent, dynamically loadable, pluggable helper byte
code objects on the server side that can be used to dynamically extend server-
side functionality.
Features of Servlets:
Servlets are persistent. Servlet are loaded only by the web server and
can maintain services between requests.
Servlets are fast. Since Servlets only need to be loaded once, they offer
much better performance over their CGI counterparts.
Servlets are platform independent.
Servlets are extensible. Java is a robust, object-oriented programming
language, which easily can be extended to suit your needs
Java server Pages is a simple, yet powerful technology for creating and
maintaining dynamic-content web pages. Based on the Java programming
language, Java Server Pages offers proven portability, open standards, and a
mature re-usable component model .The Java Server Pages architecture
enables the separation of content generation from content presentation.
This separation not eases maintenance headaches; it also allows web team
members to focus on their areas of expertise. Now, web page designer can
concentrate on layout, and web application designers on programming, with
minimal concern about impacting each other’s work.
1. The client sends a request to the web server for a JSP file by giving the
name of the JSP file within the form tag of a HTML page.
2. This request is transferred to the Java Webserver. At the server side Java
Webserver receives the request and if it is a request for a jsp file server
gives this request to the JSP engine.
3. JSP engine is program which can under stands the tags of the jsp and
then it converts those tags into a Servlet program and it is stored at the
server side. This Servlet is loaded in the memory and then it is executed
and the result is given back to the Java Webserver and then it is
transferred back to the result is given back to the Java Webserver and
Eclipse IDE
Architecture
The basis for Eclipse is the Rich Client Platform (RCP). The following
components constitute the rich client platform:
Eclipse's widgets are implemented by a widget toolkit for Java called SWT, unlike most
Java applications, which use the Java standard Abstract Window Toolkit (AWT) or
Swing. Eclipse's user interface also leverages an intermediate GUI layer called JFace,
which simplifies the construction of applications based on SWT.
Eclipse employs plug-ins in order to provide all of its functionality on top of (and
including) the rich client platform, in contrast to some other applications where
functionality is typically hard coded. This plug-in mechanism is a lightweight software
componentry framework. In addition to allowing Eclipse to be extended using other
programming languages such as C and Python, the plug-in framework allows Eclipse
to work with typesetting languages like LaTeX, networking applications such as telnet,
and database management systems. The plug-in architecture supports writing any
desired extension to the environment, such as for configuration management. Java
and CVS support is provided in the Eclipse SDK.
The key to the seamless integration of tools with Eclipse is the plugin. With the
exception of a small run-time kernel, everything in Eclipse is a plug-in. This means
that a plug-in you develop integrates with Eclipse in exactly the same way as other
plug-ins; in this respect, all features are created equal.
The Eclipse SDK includes the Eclipse Java Development Tools, offering an IDE with a
built-in incremental Java compiler and a full model of the Java source files. This
allows for advanced refactoring techniques and code analysis. The IDE also makes use
of a workspace, in this case a set of metadata over a flat file space allowing external
file modifications as long as the corresponding workspace "resource" is refreshed
afterwards. The Visual Editor project allows interfaces to be created interactively,
hence allowing Eclipse to be used as a RAD tool.
CHAPTER-7
Coding
//Login.jsp
<%@page import="java.util.*"%>
<%
String path = request.getContextPath ();
String basePath = request.getScheme() +"://"+request.getServerName()
+":"+request.getServerPort()+path+"/";
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<Html>
<Head>
<base href="<%=basePath %>">
<TR>
<TD VALIGN=top>
<IMG SRC="./images/spacer.gif" border=0><BR>
</TD></TR>
</table>
<center>
<font color="red"><b>
<c:if test="${requestScope.status!='null'}">
<c:out value="${requestScope.status}"></c:out>
</c:if>
</b>
</font>
</center>
</table>
<br>
<center><a href="./jsps/recoverpassword.jsp">Recovery
Password</a></center><br>
</form>
frmvalidator.addValidation("loginid","req","Loginname is required");
frmvalidator.addValidation("password","req","Password is required");
</script>
</body>
</html>
// LoginAction.JAVA
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.efarming.delegate.RegisterMgrDelegate;
Import com.efarming.exception.ConnectionException;
import com.efarming.exception.LoginException;
import com.efarming.util.UtilConstants;
import com.efarming.bean.RegisterBean;
do Post(request, response);
}
HttpSession session=request.getSession();
RegisterBean lb=new RegisterBean ();
String username=request.getParameter ("loginid");
lb.setUserid (username);
String password=request.getParameter ("password");
lb.setPassword(password);
String target=UtilConstants._LOGIN_FAIL_PAGE;
String role="";
Try {
role=(String)new RegisterMgrDelegate().roleCheck(lb);
System.out.println ("in LoginAction Role is.........."+role);
if (role.equalsIgnoreCase(UtilConstants._ADMIN))
{
target = UtilConstants._ADMIN_HOME;
session.setAttribute(UtilConstants._LOGINUSER,
username );
session.setAttribute(UtilConstants._ROLE, role);
session.setAttribute(UtilConstants._PASSWORD,password);
else if (role.equalsIgnoreCase(UtilConstants._WHOLESALER))
{
target = UtilConstants._WHOLESALER_HOME;
session.setAttribute(UtilConstants._LOGINUSER,
username );
session.setAttribute(UtilConstants._ROLE, role);
session.setAttribute(UtilConstants._PASSWORD,
password);
}
else if (role.equalsIgnoreCase(UtilConstants._COMP_PROF))
{
target = UtilConstants._COMP_PROF_HOME;
session.setAttribute(UtilConstants._LOGINUSER,
username );
session.setAttribute(UtilConstants._ROLE, role);
session.setAttribute(UtilConstants._PASSWORD,password);
else if(role.equalsIgnoreCase("null")||role.equalsIgnoreCase(""))
{
request.setAttribute("status",
UtilConstants._INVALID_USER);
target = UtilConstants._LOGIN_FAIL_PAGE;
}
}catch (ConnectionException e) {
request.setAttribute("status", UtilConstants._INVALID_USER);
target=UtilConstants._LOGIN_FAIL_PAGE;
}
catch (LoginException e) {
request.setAttribute("status", UtilConstants._INVALID_USER);
target=UtilConstants._LOGIN_FAIL_PAGE;
}
catch (Exception e) {
}
finally{
//request.setAttribute("status", UtilConstants._INVALID_USER);
RequestDispatcher rd = request.getRequestDispatcher(target);
rd.forward(request, response);
}
}
//connectionfactory.java
package com.efarming.db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
import com.efarming.util.LoggerManager;
/**
* @return the props
*/
public static Properties getProperties()
{
return mProps;
}
/**
* @param props
* application properties object
*/
public void setProperties(Properties aProps)
{
mProps = aProps;
}
{
LoggerManager.writeLogWarning(cnfe);
}
catch (SQLException se)
{
LoggerManager.writeLogWarning(se);
}
return mCon;
}
CHAPTER-8
Testing & Debugging Techniques
Software Testing:-
Methodologies:-
Unit testing: in which each unit (basic component) of the software is tested to
verify that the detailed design for the unit has been correctly implemented
System testing: in which the software is integrated to the overall product and
tests to ensure that changes made in the software have not introduced new
bugs/side effects.
CHAPTER-9
Output Screens
SCREENS
Home Page:-
Admin Home:-
Computer professional:-
CHAPTER-10
Future Enhancements
Future Enhancements:-
It is not possible to develop a system that makes all the requirements of the
user. User requirements keep changing as the system is being used. Some of
be easily adaptable.
emerging technologies.
PROJECT SUMMARY :-
This application software has been computed successfully and was also
tested successfully by taking “test cases”. It is user friendly, and has required
options, which can be utilized by the user to perform the desired operations.
The software is developed using Java as front end and Oracle as back
end in Windows environment. The goals that are achieved by the software are:
User friendly.
CHAPTER-11
CONCLUSION
Work Done:-
The E-Farming was successfully designed and is tested for accuracy and
quality.
During this project we have accomplished all the objectives and this project
meets the needs of the organization. The developed will be used in searching,
retrieving and generating information for the concerned requests.
CHAPTER-12
Bibliography
BIBILOGRAPHY:-
Core Java™ 2 Volume I – Fundamentals 7th Edition - Cay S. Hortsman
-
Google, URL: http://www.google.co.in
JDBC:
JDBC stands for “Java Database Connectivity. It is an Application
Programming Interface(API) which consists of set of java classes, interfaces and
exceptions and a specification to which both JDBC driver vendors and JDBC
developers adhere when developing Application.
SQL:
SQL-“Structured Query Language” is a standard computer language for
accessing and manipulating databases. SQL is an ANSI(American National
Standards Institute) standard computer Language.
JVM:
JVM-“Java Virtual Machine”, when we compile the code java compiler creates
a machine code for a hypothetical machine called JVM. The code is written and
compile for one machine and interpreted all other machines.
UML:
UML-“Unified Modeling Language is a industry standard “language” for
describing, visualizing, documenting Object Oriented (OO) systems. UML is a
collection of variety of diagrams for different purposes. UML standard specifies
exactly how the diagrams are to be drawn and what each component in the
diagram means. UML is not dependent on any particular programming
language, instead of focus on the fundamental concepts and ideas that model a
system.