visvesvaraya technological university belagavi ·  · 2016-08-25of the visvesvaraya technological...

60
- 1 - VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI Project Report on KRISHI REALM (Sponsored by KSCST) Submitted by Akshata S Kotiyavar 2AV12CS001 Vidya S Mishrikoti 2AV12CS020 Ashwini S Hanamakkanavar 2AV12CS400 In partial fulfillment of the requirement for the award of the Bachelor Degree In Computer Science and Engineering Under the Guidance of Prof. Raghavendra Havin BE., M.Tech. Asst. Professor DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING A G M Rural College of Engineering and Technology Navagrah Teerth, Varur 581 207. 2015-2016

Upload: hoangnhi

Post on 07-Apr-2018

238 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

- 1

-

VISVESVARAYA TECHNOLOGICAL UNIVERSITY

BELAGAVI

Project Report on

KRISHI REALM

(Sponsored by KSCST)

Submitted by

Akshata S Kotiyavar 2AV12CS001

Vidya S Mishrikoti 2AV12CS020

Ashwini S Hanamakkanavar 2AV12CS400

In partial fulfillment of the requirement for the award of the

Bachelor Degree

In

Computer Science and Engineering

Under the Guidance of

Prof. Raghavendra Havin BE., M.Tech.

Asst. Professor

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

A G M Rural College of Engineering and Technology

Navagrah Teerth, Varur – 581 207.

2015-2016

Page 2: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

- 1

-

CERTIFICATE

This is to certify that the Synopsis Reporton “KRISHI REALM Let the way grow

more” is a bonafied work carried out by Akshata S Kotiyavar(2AV12CS001), Vidya S

Mishrikoti(2AV12CS020),Ashwini S Hanamakkanavar(2AV12CS400)in partial

fulfillment of VIII Semester, to award the Degree in Computer Scienceand Engineering

of the Visvesvaraya Technological University, Belagavi during the year 2015-2016. It is

certified that all corrections/suggestions indicated for Synopsis have been incorporated in

the Report.

The Report has been approved as it satisfies all the academic requirements in respect

of Synopsis as prescribed for the Degree in Engineering

Name & Signature of:-

Guide Professor & HOD Principal

(Mr.Raghavendra Havin) (Mr.Rama Chandra RaoM) (Dr. Sunil Kumar D)

External Viva

Name of the examiners with Signature and Date:-

1. _____________________

2._____________________

S.D.M. Jainmatt Trust®

A G M RURAL COLLEGE OF ENGINEERING AND TECHNOLOGY

NavagrahTeerth, Varur- 581 207

DEPARTMENT OFCOMPUTER SCIENCE AND ENGINEERING

Page 3: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

iii

ACKNOWLEDGEMENT

We would like to avail this opportunity to thank all of the people who have stood

by us in, encouraged us, inspired us and have contributed greatly in providing us with the

joy of achievement and thrill of creative effort experienced by us all the way through the

accomplishment of ours project .

It’s our greatest privilege to express gratitude to our project guide Mr.

Raghavendra Havin , Asst. Professor, Computer Science and Engineering Department

for his excellent guidance, constant encouragement and help throughout the project.

Under his constant presence and valuable advice has led to the completion of this project.

We would like to take this opportunity to express our gratitude for the support and

guidance of Project Coordinator Mr. Raghavendra Havin, Asst. Professor, Computer

Science and Engineering Department.

We wish to express our sincere thanks to Mr. Rama Chandra Roa M.,

Associate Professor and HOD, Computer Science and Engineering Department for his

valuable suggestions, help and support.

We sincerely thank Dr. Sunil Kumar D, Principal of AGMRCET, Varur for the

support he has provided in permitting us to undertake this project.

Akshata S Kotiyavar (2AV12CS001)

Vidya S Mishrikoti (2AV12CS020)

Ashwini S Hanamakkanavar (2AV12CS400)

Page 4: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

iv

ABSTRACT

The aim of the system is to develop a system (Application), to help in the field of

agriculture. The main objective of this app is to avoid the brokerage system by providing

direct marketing facility either to sell or to buy seeds, crops, fertilizers, insecticides and

also machinery items needed to agriculture. To provide information about different

variety of crops suitable with respect to type of soil, new methods and technologies can

be adopted to get better or good result. Here the main focus is on plant diseases and its

solutions (like precautions and solution by using correct quantity of feticides and

insecticides.)

To show some motivational thoughts/videos to motivate the farmer in order to

decrease the ratio of attempting suicide and even how to improve their growth in the field

of agriculture, by some successful persons who have achieved success in agricultural field

and their ideas. Providing some experts contact for any query of farmers or any common

person related to agriculture

Page 5: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

v

CONTENTS

ACKNOWLEDGEMENT iii

ABSTRACT iv

CONTENTS v

LIST OF FIGURES vii

LIST OF TABLES viii

1 INTRODUCTION 1

1.1 Basic of system 2

1.2 Problem Definition 2

1.3 Existing System 3

1.4 Proposed System 3

1.5 Scope & Objective 3

2 LITERATURE SURVEY 4

3 REQUIREMENT ANALYSIS 8

3.1 Requirement Engineering 8

3.2 Types of Requirements 8

3.2.1 Functional Requirement 9

3.2.2 Non-Functional Requirement 10

3.3 Hardware & Software Requirements 10

3.4 Feasibility Study 11

3.4.1 Technical Feasibility 12

3.4.2 Operational Feasibility 12

3.4.3 Economical Feasibility 12

4 SYSTEM ANALYSIS & DESIGN 13

4.1 Design of the System 13

4.2 Design Constraints 14

4.3 E-R Diagram 15

4.4 UML Diagram 16

4.4.1 Class Diagram 16

4.4.2 Use Case Diagram 17

4.4.3 Data Flow Diagram 18

4.4.4 Sequence Diagram 19

Page 6: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

vi

4.4.5 Collaboration Diagram 20

5 IMPLEMENTATION 22

5.1 Java 23

5.2 Server-Side Scripting 24

5.3 Database 24

5.3.1 MySQL 24

5.3.2 MySQL Turbo Manager 25

5.3.3 phpMyAdmin 25

5.4 Android 25

5.4.1 SDK plug-in for Android Studio 28

5.4.2 AVD Manager 28

5.4.3 Platforms 29

6 TESTING 30

6.1 Introduction 30

6.2 Types of testing 31

6.2.1 Black Box Testing 32

6.2.2 White Box Testing 32

6.3 Testing Strategies 33

6.3.1 Unit Testing 33

6.3.2 Integration Testing 34

6.3.3 System Testing 34

6.3.4 User Acceptance Testing 35

6.3.5 Validation Testing 36

6.4 Test Cases 36

7 RESULT AND DISCUSSIONS 40

7.1 Snapshots 40

CONCLUSION 48

SCOPE FOR FUTURE WORK 49

REFERENCES 50

Page 7: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

vii

LIST OF FIGURES

Figure No. Name of the Figures Page No.

Figure 4.1 System design of Krishi realm 13

Figure 4.2 System design of Krishi realm 14

Figure 4.3 ER Diagram for seller and buyer 15

Figure 4.4 Class Diagram for of proposed system 16

Figure 4.5 Use Case Diagram of Krishi realm 17

Figure 4.6 Data Flow Diagram for marketing 18

Figure 4.7 Sequence Diagram for Admin 19

Figure 4.8 Sequence Diagram for User 20

Figure 4.9 Sequence Diagram for Seller 20

Figure 4.10 Sequence Diagram for Buyer 21

Figure 4.11 Collaboration Diagram 22

Figure 5.1 Steps for Application Development 28

Figure 5.2 SDK plug-in/Tool Installations 29

Figure 5.3 AVD Manager 30

Figure 7.1 Homepage of the system 42

Figure 7.2 Menu page of the Krishi Realm 43

Figure 7.3 Navigation bar of the system 44

Figure 7.4 Submenu page 45

Figure 7.5 List of crop information 45

Figure 7.6 List of crop information 46

Figure 7.7 Agri thoughts 46

Figure 7.8 Experts contacts 47

Figure 7.9 Sign up page 47

Figure 7.10 Sign in page 48

Figure 7.11 Seller Details 49

Figure 7.12 Admin Login 49

Page 8: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

viii

LIST OF TABLES Table No. Name of the Table Page No.

Table 2.1 Experts details 04

Table 6.1 Different methods of software testing 32

Table 6.2 Test case Report on login 38

Table 6.3 Test case Report on Registration 39

Table 6.4 Test case Report on Admin module 40

Table 6.5 Test case Report on User module 41

Page 9: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 1

CHAPTER 1

INTRODUCTION

India is an agriculture based developing country. 65-70% of Indian population is

being depends on agriculture for their living. Information dissemination to the knowledge

intensive agriculture sector is upgraded by mobile-enabled information services and rapid

growth of mobile telephony. It bridge the gap between the availability of agricultural

input and delivery of agricultural outputs and agricultural infrastructure Mobile

computing, cloud computing, machine learning and soft computing are the immerging

techniques which are being used in almost all fields of research. Apart from this, they are

useful in our day-to-day activities such as education, medical and agriculture. This project

explores how Android Apps agricultural services have impacted the farmers in their

farming activities.

Mobile apps in the area of agriculture can be the best option to increase countries

agriculture production. The inventions in technology in agriculture domain are not getting

to the farmers; because of either most of them are illiterates or due to unawareness of the

location from where they can have information. Hence, all most of the farmers is being

failed in acquisition of the possible production rate.

Today farmers are receiving diverse facts or information about farming like seeds,

crop selection, crop process weather, fertilizer, pesticides etc. from various resources

which are distributed on many different locations according to its origin, its producers or

vendors. The data having different format and may have different specific contents can be

heterogeneous in their structure and format. Therefore it is required to develop a system

from where the required information is available to the farmer directly.

New opportunities are shaped by smart phone technology for farmers. Farmers are

capable with a low cost smart phone and the particular software to gain facilities which

couldn„t available on their hands before. In the days of financial crisis, farming is

becoming more and more vigorous and much more important to be completed efficiently

during the time period. Several mobile applications have been developed for acquisition

of data in the field, AgroMobile, Krushiville etc. This paper deals with the analysis of

available android based applications which are useful for farm.

Page 10: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 2

Horticulture is the branch of agriculture that deals with the art, science, technology,

and business of growing plants. It includes the cultivation of medicinal plants, fruits,

vegetables, nuts, seeds, herbs, sprouts, mushrooms, algae, flowers, seaweeds and non-

food crops such as grass and ornamental trees and plants.

1.1 Basics of system

Java

Java programming language used to implement source code of our project. Java is

an entire programming language resembling C or C++. It takes a sophisticated

programmer to create Java code. And it requires a sophisticated programmer to

maintain it. With Java, you can create complete applications. Or you can attach a

small group of instructions, a Java "applet" that improves your basic HTML.

My Sql

My Sql database is a collection of data treated as a unit. The purpose of a database

is to store and retrieve related information.

PHP

PHP is a server side scripting language designed for web development but also

used as general purpose programming language. PHP code may be embedded into

HTML code, or it can be used in combination with varies web template systems, web

content management system and web frameworks.

1.2 Problem definition

The aim of the system is helpful for user as follows

By providing maximum information about agriculture and reducing brokerage

system by providing marketing guidelines.

By reducing suicide attempts of farmers by presenting some motivational things

(videos/thoughts/stories).

By giving experts advise in order to get more profit and to get solution for their

respective problems.

Page 11: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 3

1.3 Existing systems

Application is based on some existing system like Krishi dhan, Agri market,

Agriculture corner etc. which are already present in the market.

KRUSHI DHAN: Describes the information about list of crop arrival, list of crop

price and given platform for marketing.

AGRI MARKET: It gives the market area wise daily report for different crops.

AGRICULTURE CORNER: This will give the day today updating and new

inventions of agriculture technology.

1.4 Proposed system

Proposed system is slight differing from the existing system by applying our ideas

and slight modification to the existing system.This app will give all the information

together related to agriculture in a single system.This will have motivational

videos/thoughts which helps the farmer and all people to migrate towards agriculture.

It is mainly concentrated on various diseases of crops (plant pathology), insecticides

or pesticides that should be used, and how and which fertilizer should be used to get more

benefit. It also gives the information about sericulture, dairy farming.

1.5 Scope and Objectives

The aim of the system is to develop an App (Application) to help in the field of

agriculture.

The main objective of this app is

To avoid the brokerage system by providing direct marketing facility either to sell

or to buy seeds, crops, fertilizers, insecticides and also machinery items needed to

agriculture.

To provide information about different variety of crops suitable with respect to

type of soil, new methods and technologies can be adopted to get better or good

result. Here the main focus is on plant diseases and its solutions.

To show some motivational thoughts/videos to motivate the farmer in order to

decrease the ratio of attempting suicide.

Page 12: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 4

CHAPTER 2

LITERATURE SURVEY

Several mobile applications have been developed for acquisition of data in the field

such as, Krishi ville, Krushi Dhan, Agri Market, Agriculture corner, smart krushi etc.

Krushi Dhan: It describes the information about list of crop arrival, list of crop

price and given plat form for marketing.

Agri Market: It gives the market wise daily report for different crops.

Agriculture Corner: This will give the day today updation and new inventions of

agriculture technology.

Agrian Mobile: View product labels and material safety data sheets for more than

8,000 crop protection products. Browse usage rates, preharvest and re-entry

intervals, worker safety information and more.

Farm Manager: The Farm Manager app allows farmers to record cropping,

livestock, and machinery procedures, and access this information with ease. Users

can record full history of crops from when they are sown through to harvested;

record chemical and fertilizer use, including type, rate, and date applied; and keep

track of machinery maintenance.

Krishi Ville: which would take care of the updates of the different agricultural

commodities, weather forecast updates, agricultural news updates. The application

has been designed taking Indian farming in consideration.

Kheti badi: It gives the information about Organic farming and Horticulture.

Krushi Mitra Grameen Abhivruddhi Sansthe - Karnataka is a nonprofit development

organization established on 2009 under Karnataka Societies Register Act ... ·

Table 2.1 Experts details

SL.NO. Experts Name Designation Place

1 Dr.V.B.Naragund Plant Pathology Dharwad

3 Shivaleela Ganger Dairying Gokak

4 Rajeshwary Hirematt Sericulture Bayalahongal

5 Shivanand Matapati Krushi pandit Madakavi

Page 13: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 5

The Author Garima Pandey [1] suggested that Android is now the most used

mobile operating system in the world. Android now has more users, more phones and

more tablets worldwide than any other mobile operating system. The Google Play app

store has been growing at breakneck speed and with almost as many apps as the Apple

app store. This, for entrepreneurs and developers, is the chance of a lifetime to make even

more money and reach an even broader audience base. This paper gives a complete

knowledge of how to start working on eclipse and develop an application and get it run

on emulator.

Android is a Linux-based, open source mobile operating system developed by Open

Handset Alliance led by Google to develop apps for Android devices. To start with we

use a set of tools that are included in the Android SDK. Once we have downloaded and

installed the SDK, we can access these tools right from our Eclipse IDE, through the

ADT plug-in, or from the command line. Developing with Eclipse is the preferred

method because it can directly invoke the tools that we need while developing

applications. The basic steps for developing applications are shown. The development

steps encompass four development phases, which include: Setup: During this phase we

install and set up our development environment. We also create Android Virtual Devices

(AVDs) and connect hardware devices, on which we can install our applications.

Development: During this phase we set up and develop our Android project, which

contains all of the source code and resource files for our application. Debugging and

Testing: During this phase we build our project into a debug gable. apk package that we

can install and run on the emulator. Publishing: During this phase we configure and

build our application for release and distribute our application to users.

The Author Li Ma [2] suggested that today, as the developing of hardware of

mobile is getting better the performance index is much higher than the actual

requirements of the software configuration. Phone's features more depend on software.

As the Android operating system is getting more popular, the application based on

Android SDK attracts much more attention. But now, some of the Android application

interface is too cumbersome, pop-up ads is overmuch and the function is too single,

these cause some inconvenience to the users. This article presents the application by

eliminating the redundancy.

In recent years, the emergence of smart phones has changed the definition of

mobile phones. Phone is no longer just a communication tool, but also an essential part

of the people's communication and daily life. Various applications added unlimited fun

Page 14: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 6

for people's lives. It is certain that the future of the network will be the mobile

terminal. Now the Android system in the electronics market is becoming more and

more popular, especially in the smart phone market. Because of the open source, some

of the development tools are free, so there are plenty of applications generated. This

greatly inspired the people to use the Android system. In addition, it provides a very

convenient hardware platform for developers so that they can spend less effort to

realize their ideas. This makes Android can get further development. As the smart

phones and Android system getting popular, the operations like listening to music,

watching videos, tweeting and some others can be moved from the computer to a

phone now.

The applications on the market today are mostly commercial applications, and

contain a large number of built-in advertising. If the user prefers to remove the built-in

advertising, a certain price must be paid to reach that and this is not convenient.

Meanwhile, because of the unfair competition of IT, many applications built illegal

program to steal user information and cause some damage to user‟s personal privacy.

Sometimes, users will pay more attention to the user experience of software.

Therefore, the development of the application can not only be limited to the function,

more attention should be paid to the user's experience. After studying some previous

Android applications and access to large amounts of materials, we utilize the Java

language, the Eclipse platform, Android ADT and the Android SDK to develop these

three mobile applications. These systems have a nice interface and smooth operation.

These Apps won‟t steal any personal information, but can exclude useless information

and bring a wonderful user experience.

The author Suhas Holla [3] suggested that in the advancing world of technology,

Mobile applications are a rapidly growing segment of the global mobile market. Mobile

applications are evolving at a meteor pace to give users a rich and fast user experience. In

this paper, Android mobile platform for the mobile application development, layered

approach and the details of security information for Android is discussed.

Android is a new, next-gen mobile operating system that runs on the Linux Kernel.

Android Mobile Application Development is based on Java language codes, as it allows

developers to write codes in the Java language. These codes can control mobile devices

via Google-enabled Java libraries. It is an important platform to develop mobile

applications using the software stack provided in the Google Android SDK. Android

Page 15: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 7

mobile OS provides a flexible environment for Android Mobile Application

Development as the developers can not only make use of Android Java Libraries but it is

also possible to use normal Java IDEs. The software developers at Mobile Development

India have expertise in developing applications based on Android Java Libraries and

other important tools. ). This means that so long as there is a replacement application for

the dialer application, anyone could potentially write their own. Given this model we

might expect that, as Android becomes more robust, the user will be able to specify what

applications should handle which events.

Android Mobile Application Development is based on Java language codes, as it

allows developers to write codes in the Java language. These codes can control mobile

devices via Google-enabled Java libraries. It is an important platform to develop mobile

applications using the software stack provided in the Google Android SDK. Android

mobile OS provides a flexible environment for Android Mobile Application

Development as the developers can not only make use of Android Java Libraries but it is

also possible to use normal Java IDEs. The software developers at Mobile Development

India have expertise in developing applications based on Android Java Libraries and

other important tools.). This means that so long as there is a replacement application for

the dialer application, anyone could potentially write their own. Given this model we

might expect that, as Android becomes more robust, the user will be able to specify what

applications should handle which events.

Page 16: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 8

CHAPTER 3

REQUIREMENT ANALYSIS

A software requirement specification (SRS), a requirements specification for a

software system, is a description of behaviour of system to be developed and may include

a set of use cases that describe interactions the users will have with the software. In

addition it also contains non-functional requirements.

Software requirements specification establishes the basis for agreement between

customers and contractors or suppliers (in market-driven projects, these roles may be

played by the marketing and development divisions)on what the software product is to do

as well as what it is not expected to do. Software requirements specification permits a

rigorous assessment of requirements before design can begin and reduces later redesign, it

should also provide a realistic basis for estimating product costs, risks, and schedules.

The software requirements specification document enlists enough and necessary

requirements that are required for project development. To derive the requirements we

need to have clear and thorough understanding of the products to be developed or being

developed.

The requirement of project involves the needs that should be present to give the best

result for given input. It can have following subsections-Requirement Engineering, Types

of requirements, Hardware and Software Requirement and Feasibility.

3.1 Requirement Engineering

Requirement engineering (RE) refers to the process of defining, documenting and

maintain requirements and to the subfields of systems engineering and software

engineering concerned with this process. The first use of the term „requirement

engineering‟ was probably in1979. In the waterfall model, requirement engineering is

presented at the first phase of development process.

3.2 Types of Requirements

The requirements are classified into functional requirements and non-functional

requirements. In systems engineering and requirements engineering a non-functional

requirement is requirement that specifies criteria that can be used to judge the operation

of a system, rather than specific behaviours.

Page 17: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 9

This should be contrasted with functional requirements that define specific behaviour

or functions. The plan for implementing functional requirements is detailed in the system

design. The plan for implementing non-functional requirements is detailed in the system

architecture.

3.2.1 Functional Requirements

Functional requirements describe the inertia between the system and its environment

independent of its implementation. The environment includes user,admin and other

external system with which the system interacts.

The following are the functional requirements for our application as listed below:

User authentication

It includes authenticating users. Inputs include username and password.

Username and passwords are checked against the database to ensure valid user.

Valid users are allowed to access the homepage.

Admin authentication

It includes authenticating admin. Inputs include username and password.

Username and passwords are checked against the database to ensure valid admin.

Valid admin is allowed to access the admin page where hecan create accounts for

users.

Search

It allows the user to search agri information. Inputs include growing methods

and crop information. Details of the crop are fetched from the web. These crop or

agricultural details are then displayed.

Translator

Agri information is translated to both languages such as Kannada and

English

Video player

It allows the user to see motivational videos. This videos will help the

farmer to motivate and migrates towards agriculture. These videos contains new

technology applied to the agriculture, some successive stories of the farmers.

Page 18: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 10

3.2.1 Non Functional Requirements

The non-functional requirement elaborates a performance characteristic of the system.

Non-functional requirements impose constraints on the design or implementation (such as

performance engineering requirements, quality standards, or design constraints).The

following are the functional requirements for our application as listed below:

Performance- The response time is short for the requested service, the application

provides user friendly interface.

Reliability- The application is highly realistic and generates all update information

in correct order.

Security- The application is secured and authentication is provided by proper

login.

Availability- The application is available all the time.

Portability- The application is portable on any android device.

3.3 Hardware & Software Requirements

Hardware Requirements

Hardware requirements is most common set of requirements defined by any operating

system or software application is the physical computer resources, also known as

hardware, A hardware requirements list is often accompanied by a hardware

compatibility list (HCL), especially in case of operating systems. An HCL lists tested,

compatible, and sometimes incompatible hardware devices for a particular operating

system or application. The following sub-sections discuss the various aspects of hardware

requirements. Hardware that is required for this project can be listed as follows:

Laptop/PC for Android Application Development.

Server (Windows 7/8/10 (32-bit or 64-bit)).

Android Mobile with minimum android version 4.0

Software Requirements

Software requirements deal with defining software resource requirements and

prerequisites that need to be installed on a computer to provide optimal functioning of an

application. These requirements or prerequisites are generally not included in the

software installation package and need to be installed separately before the software is

Page 19: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 11

installed. Software that are required for this project can be listed as follows:

2 GB RAM minimum and 8 GB RAM recommended.

2 GB of available disk space minimum.

4 GB recommended (500 MB for IDE + 1.5 GB for Android SDK and emulator

system image)

1200x800 minimum screen resolution.

Java Development Kit (JDK) 8

For accelerated emulator: 64-bit operating system and Intel® processor with

support for Intel® VT-x, Intel® EM64T (Intel® 64), and Execute Disable (XD)

Bit functionality

Android Studio 2.0

Wamp Server Version 2.5

Mysql Database version 5.6

3.4 Feasibility Study

Feasibility study is an important phase in software development process it enables

the developers to have an assessment of the product being developed. It refers to

feasibility study of the product in terms of outcomes of the product of operational use and

technical support required for implementing it. An analysis and evaluation of a proposed

project to determine if it is technically feasible, is feasible within the estimated cost, and

will be profitable. Feasibility studies are almost always conducted where large sums are

at stake.

Technical Feasibility

Operational Feasibility

Economical Feasibility

Page 20: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 12

3.4.1 Technical Feasibility

The technologies required for our application is easily available in the market. Also

the software can be implemented with existing technical resources. Technical feasibility

is one of the first studies that must be conducted after the project has been identified.

The Technical Feasibility Study calculates materials required and assesses the details

of how you will deliver a product or service. The data which we want to access will be

available very easily.

This app is built for smart phones on android platform using java and xml codes. So

it is a best way to reach all people because smart phones are so easy to handle. It requires

database or server to store information, so that it can be accessed whenever user request

it.

3.4.2 Operational Feasibility

Operational feasibility is a measure of how well a proposed system solves the

problems, and takes advantage of the opportunities identified during scope definition. The

proposed application is user friendly with good GUI. As control and operation is through

android so anybody owning an android mobile can use our application. User interface is

designed in such a way that any literate person can easily use the system, further we will

upgrade the system for the use of all kind of people.

Krishi realm is an user friendly app.

It provides marketing guideline and information about selling buying items.

It provides complete information about crop information etc.

3.4.3 Economical Feasibility

It is used to determine the benefits and savings that are expected from a proposed

system. Expenditure incurred for developing the new system will be cost effective or not.

It is used to determine the benefits and savings that are expected from proposed

system

As this system is open source it will not cost much.

It requires only android platform, i.e. smart phones which are widely used now a

days.

Page 21: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 13

CHAPTER 4

SYSTEM ANALYSIS & DESIGN

4.1 Design of the System

System design provides an overall understanding and provides a detailed procedural

flow of information. System design goes through three phases of development.

Logical Design

Physical Design

Input Design

Figure 4.1 System Design of Krishi realm

The System requires the buyer/seller to sign up with his email id and password. Upon

successful verification, the registration details are written through a PHP script and HTTP

Client Server APIs into a Mysql database at a remote central server. Every time the user

attempts to login, the database table is queried for the username-password pair and

accordingly grants further access or not. The process is summarized in figure.4.1

Page 22: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 14

Figure 4.2 System Design of Krishi realm

4.2 Design Constraints

This section describes any constraints in the system design (reference any trade-off

analysis conducted such as, a resource use versus protectivity, or conflicts with other

system) and includes any assumption and general constraints made by project team in

developing system design. Design constraints represent design decisions that have been

mandated and must be adhered to. Examples include software languages, software

process requirements, prescribed use of development tools, architectural and design

constraints, purchased components, class libraries, etc.

In system design, a design constraint refers to some limitation on the conditions

under which a system is developed, or on the requirements of the system. The design

constraint could be on the systems form, fit or function or could be in the technology to

be used, materials to be incorporated, time taken to develop the system, overall budget,

and so on. A design constraint is normally imposed externally, either by the organization

or by some external regulation. During system design, it is as important to identify each

design constraint as it is to elicit requirements since the design constraints place an

overall boundary around the system design process.

Page 23: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 15

4.3 E-R Diagram

An entity-relationship diagram is a data modelling technique that graphically

illustrates an information system‟s entities and the relationships between those entities.

An ERD is a conceptual and representational model of data used to represent the entity

framework infrastructure.

In software Engineering, an Entity-relationship model(ER model) is a data model

for describing the data or information aspects of a business domain or its process

requirements, in an abstract way that lends itself to ultimately being implemented in a

database such as relational database.

The main components of ER model are entities (things) and the relationships that

can exist among them. For describing the data or information aspects of a business

domain or its process requirements.

Figure 4.3 ER-Diagram for seller and buyer

Page 24: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 16

The above figure 4.3 consists of

Entity

Attributes

Entities are the phrases which are enclosed in ovals like Name, Cost etc. Attributes

are the phrases which are enclosed in rectangles like Seller, Buyer etc.The phrases which

are enclosed in rhombus are actions.

4.4 UML Diagram

The unified modelling language is standard language for specifying, visualizing,

constricting and documenting the software system and its component. It is a graphical

language, which provides vocabulary and set of semantics rules. The UML focuses on

conceptual and physical representation of system. It captures the decisions and

understanding about system that must be constructed. It is used to understand, design,

configure, maintain, and control information about the system.

4.4.1 Class Diagram

A class diagram is graph classifier element connected by their various static

reletionships.Note that a class diagram consist of interfaces, packages, relationships, and

even instances such as objects and links.

Figure 4.4 Class Diagram of Proposed System

Page 25: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 17

The above class diagram (figure 4.4) shows three classes i.e. USER,

APPLICATION, and SERVER. User class has attributes like name, email id, contact etc.

Server class has attributes like server id, server name etc. Application class has attributes

like app name. All these class have some functions they are User class has request,

search, get info. Server class has services. Application class has get request, send request,

display.

4.4.2 Use Case Diagram

The diagram shows a set of use cases and actors and their relationships. This diagram

illustrates the static use case view of a system and is important in organizing and

modelling the behaviour of a system. The use case system is used to identify the primary

elements and processes that form the system.

Figure 4.5 Use case Diagram of Krishi Realm

The figure 4.5 shows use case diagram where admin and users are the actors and

phrases in ovals are cases. Admin is responsible of maintaining all the use cases. User

work is to register, login, and search crop information/ Agri thoughts etc.

Page 26: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 18

4.4.3 Data Flow Diagram

When it comes to conveying how information data flows through systems (and how

that data is transformed in the process), data flow diagrams (DFDs) are the method of

choice over technical descriptions for three principal reasons.

DFDs are easier to understand by technical and nontechnical audiences

DFDs can provide a high level system overview, complete with boundaries and

connections to other systems

DFDs can provide a detailed representation of system components

DFDs help system designers and others during initial analysis stages visualize a

current system or one that may be necessary to meet new requirements. Systems analysts

prefer working with DFDs, particularly when they require a clear understanding of the

boundary between existing systems and postulated systems. DFDs represent the

following:

External devices sending and receiving data

Processes that change that data

Data flows themselves

Data storage locations

Figure 4.6 Data Flow Diagram for Marketing

Page 27: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 19

The Figure 4.6 shows the data flow diagram for the system. Where user has to login

or register by giving details, if the details are authenticated then only he will be logged in

successfully. User can access the marketing information from database.

4.4.4 Sequence Diagram

A sequence diagram shows, as parallel vertical lines (lifelines), different processes or

objects that live simultaneously, and as horizontal arrows, the messages exchanged

between them, in the order in which they occur. This allows the specification of simple

runtime scenario in graphical manner. Sequence diagram is interaction which shows the

interaction between participants.

Figure 4.7 Sequence Diagram for Admin

In the above figure 4.7 Admin, System and Database are the objects, initially admin

will login to the system to Upload or Change any data, then once the changes are applied

system will give response like success, and the Admin will logout.

Page 28: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 20

Figure 4.8 Sequence Diagram for User

In the above figure 4.8 User, System, Database are the objects. Initially user enters

into the system, then user will get welcome message from the system. User request for

information which is stored in the database and it is retrieved whenever user request.

Figure 4.9 Sequence Diagram for Seller

Page 29: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 21

In the above figure 4.9 Seller, System, Database are the objects. Initially seller enters

into the system, then seller will get welcome message from the system. Once seller login

to the system, he will get acknowledgement then seller adds all selling product

information to the system that will stored in database.

Figure 4.10 Sequence Diagram for Buyer

In the above figure 4.10 Buyer, System, Database are the objects. Initially buyer

enters into the system, then buyer will get welcome message from the system. Buyer

request for information which is stored in the database and it is retrieved whenever buyer

request.

Page 30: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 22

4.4.5 Collaboration Diagram

It shows the object organization as shown below. Here in collaboration diagram the

method call sequence is indicated by some numbering technique as shown below. The

number indicates how the methods are called one after another.

The method calls are similar to that of a sequence diagram. But the difference is that

the sequence diagram does not describe the object organization whereas the collaboration

diagram shows the object organization.

Now to choose between these two diagrams the main emphasis is given on the type

of requirement. If the time sequence is important then sequence diagram is used and if

organization is required then collaboration diagram is used.

Figure 4.11 Collaboration Diagram of User

Page 31: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 23

CHAPTER 5

IMPLEMENTATION

Implementation is the process of converting a new system into an operational one.

The designed system is converted to an operational one using suitable programming

language. Implementation includes all those activities that take place to convert an old

system to new. Proper implementation is essential to provide a reliable system to meet

organizational requirement. The main implementation of this project is to provide tourism

functionalities through Smartphone.

Android studio is made used as the development platform of this project because it

comes loaded with features like:

Open source platform

Support multi functions

Rich tools to make interactive applications

Free software for developing applications

For the implementation purpose java is used for back-end logic because of its features

like:

Portability

Platform Independence

Robust

Great market reach

System implementation includes all those activities that take place to convert from the

old system to the new one. The new system may be totally new, replacing an existing

manual or automated system or it may be a major modification to an existing system.

Proper implementation is essential to provide a reliable system to meet organization

requirements. Successful requirements may not guarantee improvements in the

organization using the new system, but improper installation will prevent it. The process

of putting the developed system in actual use is called system implementation. The

system can be implemented only after thorough testing is done and if it is found to be

working according to the specification. The system personnel check the feasibility of the

system.

Page 32: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 24

The implementation stage involves following tasks.

Careful planning.

Investigation of system and constraints.

Design of methods to achieve the changeover.

Training of the staff in the changeover phase.

Evaluation of the changeover method.

The most crucial stage is achieving a new successful system and giving confidence on

the system for the user that it will work efficiently and effectively. It involves careful

planning, investigation of system of the current system and its constraints on

implementation, design of method to achieve the changeover.

The more complex system being implemented, the more involves will be the system

analysis and the design effort required just for implementation. The system

implementation has three main aspects. They are education and training, system testing

and changeover.

5.1 Java

Java is one of the best Object Oriented Programming languages in today‟s world. Its

usefulness can be easily seen by the growing number of devices using java to achieve

their functionality. From mobiles to PDA‟s to computers and now a day‟s even in space

vehicles. Java is everywhere. So let‟s take a preview of java and see the reasons for its

popularity with programmers.

Although the fundamental forces that necessitated the invention of Java are

portability and security, other factors also played an important role in molding the final

form of the language. The key considerations were summed up the Java team in the

following list of buzzwords

Simple

Secure

Portable

Object-oriented

Robust

Multithreaded

Architectural-neutral

Interpreted

Page 33: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 25

High performance

Distributed

Dynamic

5.1 Server-Side Scripting

PHP is a recursive acronym for "PHP: Hypertext Preprocessor". It is a server side

scripting language that is embedded in HTML. It is used to manage dynamic content,

databases, session tracking, even build entire e-commerce sites. It is integrated with a

number of popular databases, including MySQL, PostgreSQL, Oracle, Sybase, Informix,

and Microsoft SQL Server.

PHP is pleasingly zippy in its execution, especially when compiled as an Apache

module on the Unix side. The MySQL server, once started, executes even very complex

queries with huge result sets in record-setting time. It supports a large number of major

protocols such as POP3, IMAP, and LDAP. PHP4 added support for Java and distributed

object architectures (COM and CORBA), making n-tier development a possibility for the

first time.

PHP is forgiving: PHP language tries to be as forgiving as possible.

PHP Syntax is C-Like.

Advantages of PHP

Open source.PHP is completely free

PHP can be easily embedded directly into HTML

Platform independent can run on Windows Linux or Mac servers

Run faster on the internet and easily integrate AJAX, Callback etc

Interfaces very easily with Apache/MySQL

Lots of good books and on-line help

It‟s available with documentation in many languages

5.3 Database

A database is an organized collection of data. The data are typically organized to

model relevant aspects of reality in a way that supports processes requiring this

information.

Page 34: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 26

5.3.1 MySQL

MySQL is a relational database management system (RDBMS), and ships with

no GUI tools to administer MySQL database or manage data contained within the

databases.

5.3.2 Mysql Turbo Manager

Mysql Turbo Manager is a powerful software solution for Mysql Database

administration and development. With a very intuitive interface you will save time and

money. Mysql Turbo Manager works with all Mysql versions from 3.23 to 5.0.18 and

supports all MySQL features including tables, views, procedures, functions, triggers,

InnoDB Tables, foreign keys , UDFS, BLOB Types and so on. Also, it includes the most

advanced options for data manipulation, reports generation, create and execute queries,

execute scripts, database monitor, export and import data.MySQL Turbo Manager is a

professional database tool for expert and newbie mysql users. a powerful software

solution for MySQL Database administration and development. With a very intuitive

interface you will save time and money. MySQL Turbo Manager works.

5.3.3 PHPMyAdmin

PHPMyAdmin is a free and open source tool written in PHP intended to handle the

administration of MySQL or MariaDB with the use of a web browser. It can perform

various tasks such as creating, modifying or deleting databases, tables, fields or rows;

executing SQL statements; or managing users and permissions. Features provided by the

program include:

Web interface

MySQL and MariaDB database management

Import data from CSV and SQL

Administering multiple servers

Creating complex queries using Query-by-Example(QBE)

Searching globally in a database or a subset of it

Transforming stored data into any format using a set of predefined functions, like

displaying BLOB-data as image or download-link

Working with different operating systems

Creating PDF graphics of the database layout

Page 35: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 27

Export data to various formats: CSV, SQL, XML, PDF (via the TCPDF library),

ISO/IEC 26300-OpenDocument Text and Spreadsheet, Word, Excel, LaTeX and

others.

5.4 Android

Android is a Linux-based, open source mobile operating system developed by Open

Handset Alliance led by Google to develop apps for Android devices. To start with user

causes a set of tools that are included in the Android SDK. Once it has been downloaded

and installed the SDK, one can access these tools right from Eclipse IDE, through the

ADT plug-in, or from the command line. Developing with Eclipse is the preferred

method because it can directly invoke the tools that are needed while developing

applications.

The basic steps for developing applications are shown in Figure 5.1. The development

steps encompass four development phases, which include:

Setup: During this phase one can install and set up development environment.

Also creates Android Virtual Devices (AVDs) and connect hardware devices, on

which one can install this applications.

Development: During this phase one has to set up and develop android project,

which contains all of the source code, resource files for this application.

Debugging and Testing: During this phase one can build android project into a

debug gable. Apk package that user can install and run on the emulator.

Publishing: During this phase configure and build android application for release

and distribute this application to users.

Page 36: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 28

Figure 5.1 Steps for Application Development

Android Studio is the official Integrated Development Environment (IDE) for

android platform development. It contains a base workspace and an extensible plug-in

system for customizing the environment. Written mostly in java, Android Studio can be

used to develop application in Java. The Android Studio Software Development Kit

(SDK), which include the Java development. Users can extend its abilities by installing

plug-ins written for Android Studio platforms such as development toolkits for other

programming languages and can write and can contribute their own plug-in modules.

Page 37: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 29

5.4.1 SDK plug-in for Android Studio

Software Development Kit (SDK) is a plug-in for the Android Studio IDE that is

designed to give us a powerful, integrated environment in which to build Android

applications.

SDK extends the capabilities of Android Studio to let us quickly set up new Android

projects, create an application UI, add packages based on the Android Framework.

Developing in Android Studio with SDK is highly recommended and is the fastest way to

get started. With the guided project setup it provides, as well as tools integration, custom

XML editors, and debug output pane, SDK gives us an incredible boost in developing

Android application.

Following steps are used to download and install the ADT plug-in:

Start Eclipse, and then select Help à Install New Software.

Click Add (in the top-right corner)

Figure 5.2 SDK-Plug-in/Tool Installations

5.4.2 AVD Manager

The AVD Manager provides a graphical user interface in which user can create

and manage Android Virtual Devices (AVDs), which are required by the Android

Emulator.

For emulation, user need to define a device

Select Window à Android AVD Manager from the menu Figure 5.3

Page 38: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 30

Figure 5.3 AVD Manager

5.4.3 Platforms

The platforms used for this project are:

Front End: Android and HTML

Back End: PHP and XML.

Page 39: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 31

CHAPTER 6

TESTING

6.1 Introduction

Testing goes side by side with the implementation that is aimed at ensuring that the

system works accurately and efficiently before the live operation is performed. The

common view of testing held by the user is to ensure that there are no errors in a program.

Testing usually means the process of executing a program with explicit intention of

handling errors.

Testing is the process of evaluating a system or its component(s) with the intent to

find whether it satisfies the specified requirements or not. In simple words, testing is

executing a system in order to identify any gaps, errors, or missing requirements in

contrary to the actual requirements. According to ANSI/IEEE 1059 standard, Testing can

be defined as - A process of analyzing a software item to detect the differences between

existing and required conditions (that is defects/errors/bugs) and to evaluate the features

of the software item.

It depends on the process and the associated stakeholders of the project(s). In the IT

industry, large companies have a team with responsibilities to evaluate the developed

software in context of the given requirements. Moreover, developers also conduct testing

which is called Unit Testing. In most cases, the following professionals are involved in

testing a system within their respective capacities:

Software Tester

Software Developer

Project Lead/Manager

End User

An early start to testing reduces the cost and time to rework and produce error-free

software that is delivered to the client. However in Software Development Life Cycle

(SDLC), testing can be started from the Requirements Gathering phase and continued till

the deployment of the software. It also depends on the development model that is being

used. Testing is done in different forms at every phase of SDLC:

Page 40: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 32

During the requirement gathering phase, the analysis and verification of

requirements are also considered as testing.

Reviewing the design in the design phase with the intent to improve the design is

also considered as testing.

Testing performed by a developer on completion of the code is also categorized as

testing.

It is difficult to determine when to stop testing, as testing is a never-ending process

and no one can claim that a software is 100% tested. The following aspects are to be

considered for stopping the testing process:

Testing Deadlines

Completion of test case execution

Completion of functional and code coverage to a certain point

Bug rate falls below a certain level and no high-priority bugs are identified

Management decision

6.2 Types of testing

Table 6.1 Different methods of software testing.

TEST TYPE DESCRIPTION WHITE/BLACK

BOX

Unit Tests a small unit of software application. White box

Integration Tests the interaction of small modules of a

Software application.

White or Black

box

Acceptance Testing conducted by a user to verify that the

System meets the acceptance criteria.

Black box

Registration Tests new functionality in a program

Registration testing is done by running all of the

previous unit tests written for a program, if they

all pass, then the new functionality is added to

the code base.

White box

Page 41: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 33

Functional

and System

Verifies the entire software system satisfies the

requirements.

Black box

6.2.1 Black box testing

Black box testing allows the tests that are conducted at the software interface. A

black box test examines some fundamentals aspect of a system with little regard for the

internal logical structure of the system. The system is a black box whose behaviour can

only be determined by studying its inputs and related output.

The technique of testing without having any knowledge of the interior workings of

the application is called black-box testing. The tester is oblivious to the system

architecture and does not have access to the source code. Typically, while performing a

black-box test, a tester will interact with the system's user interface by providing inputs

and examining outputs without knowing how and where the inputs are worked upon.

Advantages

Well suited and efficient for large code segments.

Code access is not required.

Clearly separates user's perspective from the developer's perspective through

visibly defined roles.

Large numbers of moderately skilled testers can test the application with no

knowledge of implementation, programming language, or operating systems.

Disadvantages

Limited coverage, since only a selected number of test scenarios is actually

performed.

Inefficient testing, due to the fact that the tester only has limited knowledge about

an application.

Blind coverage, since the tester cannot target specific code segments or error-

prone areas.

The test cases are difficult to design.

Page 42: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 34

6.2.2 White box testing

White box testing strategy deals with the internal logic and structure of the code.

White box testing is also called as glass structural, open box or clear box testing .The

tests written based on the white box testing strategy incorporate coverage of the code

written, branches, paths, statements and internal logic of the code etc. In order to perform

white-box testing on an application, a tester needs to know the internal workings of the code. The

tester needs to have a look inside the source code and find out which unit/chunk of the code is

behaving inappropriately.

Advantages

As the tester has knowledge of the source code, it becomes very easy to find out

which type of data can help in testing the application effectively.

It helps in optimizing the code.

Extra lines of code can be removed which can bring in hidden defects.

Due to the tester's knowledge about the code, maximum coverage is attained

during test scenario writing.

Disadvantage

Due to the fact that a skilled tester is needed to perform white-box testing, the

costs are increased.

Sometimes it is impossible to look into every nook and corner to find out hidden

errors that may create problems, as many paths will go untested.

It is difficult to maintain white-box testing, as it requires specialized tools like

code analyzers and debugging tools.

6.3 Testing Strategies

6.3.1 Unit Testing

The software units in a system are the modules and routines that are assembled and

integrated to perform a specific function. Unit test focuses first on the modules,

independent of one another to locate errors. This enables the programmer to detect errors

in coding and logic that exists within that module along. While testing the module the

concept of trace and breakpoints are applied at different stages of testing. The unit testing

Page 43: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 35

of android application on college management server was done in a way where each and

every module was tested with a certain set of test data to ensure that the system works

accurately. The unit testing was carried out successful.

This type of testing is performed by developers before the setup is handed over to the

testing team to formally execute the test cases. Unit testing is performed by the respective

developers on the individual units of source code assigned areas. The developers use test

data that is different from the test data of the quality assurance team.

The goal of unit testing is to isolate each part of the program and show that

individual parts are correct in terms of requirements and functionality.

Limitations of Unit Testing

Testing cannot catch each and every bug in an application. It is impossible to

evaluate every execution path in every software application. The same is the case

with unit testing.

There is a limit to the number of scenarios and test data that a developer can use to

verify a source code. After having exhausted all the options, there is no choice but

to stop unit testing and merge the code segment with other units.

6.3.2 Integration Testing

In integration testing the related modules are combined and the modules were

executed to with a certain set of test data to ensure that the system works accurately. The

integration test was carried out successfully. Integration tests are designed to test

integrated software components to determine if they actually run as one program.

Testing is event driven and is more concerned with the basic outcome of screens or fields.

Integration tests demonstrate that although the components were individually satisfaction,

as shown by successfully unit testing, the combination of components is correct and

consistent. Integration testing is specifically aimed at exposing the problems that arise

from the combination of components.

Software integration testing is the incremental integration testing of two or more

integrated software components on a single platform to produce failures caused by

interface defects. The task of the integration test is to check that components or software

applications, e.g. components in a software system or – one step up – software

applications at the company level – interact without error

Page 44: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 36

6.3.3 System Testing

In this system providing security by using Android, it provides a very good security

to system. The system performance is very good. There is less chances of getting error. If

the user gives the right input to the system then the system will generate the required

output. If the user doesn‟t give the right input then the system does not respond. The

performance is very fast.

At the culmination of integration testing, software is completely assembled as a

package; interfacing errors have been covered and corrected, and final series of software

tests-validating testing may begin. Validation can be defined in many ways, but a simple

definition is that validation succeeds when software functions in a manner that can be

reasonably expected by customers. Reasonable expectation is defined in the software

requirement specification- a document that describes all user visible attributes of the

software. The specification contains a section title “validation criteria”. Information

contained in that section forms the basis for validation testing approach.

System testing is important because of the following reasons:

System testing is the first step in the Software Development Life Cycle, where the

application is tested as a whole.

The application is tested thoroughly to verify that it meets the functional and

technical specifications.

The application is tested in an environment that is very close to the production

environment where the application will be deployed.

System testing enables us to test, verify, and validate both the business

requirements as well as the application architecture.

At the culmination of integration testing, software is completely assembled as a

package; interfacing errors have been covered and corrected, and final series of software

tests-validating testing may begin. Validation can be defined in many ways, but a simple

definition is that validation succeeds when software functions in a manner that can be

reasonably expected by customers. Reasonable expectation is defined in the software

requirement specification- a document that describes all user visible attributes of the

software. The specification contains a section title “validation criteria”. Information

contained in that section forms the basis for validation testing approach.

Page 45: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 37

6.3.4 User Acceptance Testing

User acceptance testing is the validation of all system requirements. This testing is

performed to demonstrate to the client, on the real-life data of the client, the operation of

the system.

6.3.5 Validation Testing

This approach focuses on the need for consistent and thorough quality assurance

processes, standards, and guidelines. Implemented through test planning and

management, an independently executed software testing process becomes a key element

in ensuring quality in mission-critical projects and the long-term success of any

organization. We have done unit testing, integration testing and system testing and even

tried out our hands at user-accepting tests and the results were really pleasing.

Unit testing was done with the different modules. Modules which were built early like

the business logic were tested by giving the input through keyboard rather than the

modem. It was tested intensively for a large sample of inputs. Since in java I/O acts in the

same way whether it comes from a serial port or a keyboard made it possible to test a

near real world scenario even without a modem.

6.4 Test Case

A test case is a set of conditions under which tester will determine whether an

application, software system or one of its features are working as it was originally

established for it to do software system or one of its features are working as it was

originally established for it to do testing.

Page 46: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 38

Table 6.2 Test Case Report on Login

Test

case

ID

T-description Expected result Actual result Result

1 Enter invalid username and

password

Should not login Invalid

username

Pass

2 Username:empty

password:fill with empty

character

Should validate

username field

Username must

be field out

Pass

3 Select type as user and

login with profession and

password

Should not login Invalid

username or

password

Pass

4 Enter user name with

empty field

Should validate

password field

Password must

be filled out

Pass

5 Enter correct username and

password and click on

login

Should validate if

correct should

login

Entered into

index page

Pass

6 Click on register page Should enter in to

the reg pages

Entered into reg

page

Pass

Page 47: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 39

Table 6.3 Test Case Report on Registration

Test

Case

ID

T-description Expected

result

Actual result Result

1 Entered fullname with

special chart and

numbers and click on

register

Should

validate

An alert message

name should be of

only characters

Pass

2 Enter username that

already exists

Should not

register and

validate with

password

Username already

exitsts

Pass

3 Entered email with only

numbers value and click

on register

Should not

register

Invalid email Pass

4 Entered email ending

with an special

character or numbers

Should not

register

Invalid email Pass

5 Enter correct email and

click on register

Should

validate if

correct should

register

Successfully

registered

Pass

Page 48: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 40

Table 6.4 Test Case Report on Admin module

Test

case

ID

T-description Expected result Actual result Result

1 Click on view buyer

link in admin page

Should list out all

buyer names

Buyer list is

displayed

Pass

2 Click on view seller link

in admin page

Should list all

seller names

Seller list is

displayed

Pass

3 Click on delete button

on specified category of

product

Details of

specified

category should

be removed

Category details

removed

Pass

4 Click on edit button on

specified item(product)

Details of

specified product

should be

removed

Product removed Pass

Page 49: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 41

Table 6.5 Test Case Report on user module

Test

case

ID

T-description Expected result Actual result Result

1 Click on item to place

the order

Should navigate

to ides‟s page

Navigated Pass

2 Submit without filling

the quantity column

Should be

validated

Idea field

should be

filled out

Pass

3 Submit with filling the

quantity column

Should be posted Posted

successfully

Pass

4 Click on log out page Should navigate

to home page

Navigate to

home page

Pass

Page 50: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 42

CHAPTER 7

RESULTS AND DISCUSSION

In this chapter it represents overall flow of this Real Time Operating System, results

and outer view with its brief discussions.

7.1 Snapshots

Figure 7.1 shows initial home page of Krishi Realm Android system Users can have

the options to choose Languages at the Welcome page, where Users are given an option

to choose among English or Kannada. On click of any of the languages, subsequent pages

in android app will be reflected with selected language.

Figure 7.1 Home page of the system

Page 51: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 43

Figure 7.2 Menu page of Krishi Realm

Figure 7.2 Menu page of Krishi Realm presents with number of options, on click of

navigation bar present in the top left corner. If Kannada language is selected, Menu items

will be listed in Kannada and if English language is selected Menu options will be

displayed in English.

Page 52: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 44

Figure 7.3 Navigation bar of the system

On Click of Agriculture information, Submenu items were presented which contains

following options,

Crop Information

Sericulture

Dairy Farming

Page 53: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 45

Figure 7.4 Submenu page of the system

On click of Sericulture and Dairy Farming, detailed information about those would be

presented for users.

Figure7.5 List of Crop Information

On click of Crop Information, Kinds of crops are listed under which subsequent crops

belonging to respective crop category will be given detailed information.

Page 54: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 46

Figure 7.6 List of Crop Information

To educate farmers, Krushi Realm also presents the farmers with set of educational

videos updated time to time. App also contains Thoughts page to inspire farmers.

Figure 7.7 Agri Thoughts Information

Page 55: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 47

In case of any queries or difficulties farmers can query their question to experts. Experts

information can be availed under Experts option of navigation menu.

Figure 7.8 Experts Contact Details

The System requires the buyer/seller to sign up with his email id and password. Upon

successful verification, the registration details are written through a PHP script and HTTP

Client Server APIs into a MySQL database at a remote central server. Every time the user

attempts to login, the database table is queried for the username-password pair and

accordingly grants further access or not.

Figure 7.9 Sign up page for Seller /Buyer

Page 56: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 48

For scenarios such as Seller login or Buyer login same Android mobile to Server

communication is maintained. When Seller logs in, Seller will be presented with form to

fill up product details and space to upload image of product. On click of Store button php

script executes on the server side to upload data to mysql database.

When Buyer logs in, Seller will be presented with list of product details with seller

information available for buyer to contact him. On click of Buyer‟s login button php

script executes on the server side to fetch data from mysql database and display it on the

android device.

Figure7.10 Sign in page for Seller/Buyer

Buyers / Sellers can login to Sell or Buy products through marketing tab under navigation

menu.

Page 57: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 49

Figure7.11 Seller Product Details

Admin Login provision is allowed for Admin to Enter Server IP address accordingly.

Figure 7.12 Admin Login

Page 58: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 50

CONCLUSION

The proposed system provides the following features

Provides plat form for marketing.

Gives information about different types of crops.

Gives information about experts details so that the people can clear their doubts.

Presenting some motivational videos/thoughts to motivate farmers and to attract

the people towards agriculture.

Page 59: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 51

SCOPE FOR FUTURE WORK

This expert system or interface will need to be researched further for implementation.

Hence future of this task lies in developing the actual system schema and adding extra

new functionalities which may be implementation specific. The proposed interface can

overcome the language barrier which are main challenges of growing the ICT

(information and communication technology) also cost of development includes in speech

recognition, text-to- speech. In future, the scope of this system or interface can be

increased by adding extra various functionalities.

Page 60: VISVESVARAYA TECHNOLOGICAL UNIVERSITY BELAGAVI ·  · 2016-08-25of the Visvesvaraya Technological University, Belagavi during the ... constant encouragement and help throughout the

KRISHI REALM

DEPT. OF COMPUTER SCIENCE AND ENGINEERING, AGMRCET 52

REFERENCE

[1]. Dr.V.B.Nargund pathology dept.Agricultural university dharwad. University of

Agricultural Sciences, Dharwad, (UASD) is a State Agriculture ... of Agricultural

Sciences Dharwad.

[2]. Prasad S, Peddoju, S. K, & Ghosh, D. (2013) AgroMobile: A Cloud Based

Framework for Agriculturists on Mobile Platform‖, International Journal of

Advanced Science and Technology, 59, 41 -52

[3]. Singhal, M., Verma, K, & Shukla, A. (2011, December) Krishi Ville Android

Based solution for Indian agricultural, In Advanced Networks and

Telecommunication Systems (ANTS), 2011 IEEE 5thInternational Conference on

(pp.-5).IEEE.

[4]. www.uasd.edu/ dharwad/

[5]. https://en.wikipedia.org/.../

[6]. Krishi Vigyan Kendra (KVK) http://www. icar. org. in/krishi-vigyan- kendra. htm

[7]. Kissan Kerala http://www. kissankerala. net/mobile/index. jsp#mobile