WEB-BASED APPLICATION ON AGRICULTURAL INFORMATION SYSTEM USING XML-TECHNOLOGY

 

 

WEB-BASED APPLICATION ON AGRICULTURAL INFORMATION SYSTEM USING XML-TECHNOLOGY

BY
Sukhendu Sekhar Mondal (11202021031)
Umacharan Karmakar (11201021017)
Supriyo Pratihar (11201021015)
Gourav Mondal (11202021009)
Bapi Ray (11202021011)

UNDER THE GUIDANCE OF

Project Guide - Dr. S. C. Garai

Prof. Dr. Subodh Chandra Garai

The Project report submitted for the completion of 8th semester project for award of B. Tech degree in
Computer Science and Engineering
and
Information Technology

TO

 

UTECH Logo

WEST BENGAL UNIVERSITY OF TECHNOLOGY (W.B.U.T)
GOVT. COLLEGE OF ENGINEERING & LEATHER TECHNOLOGY
GOVT. OF WEST BENGAL
LB BLOCK, SECTOR III, SALT LAKE
KOLKATA- 700098


OBJECTIVE
This is the final year project report during final year and final semester.


The main objectives of this project are as under:

  • To provide integrated technical information to the user about agriculture
  • To practise a web related project
  • To practise state-of-the-art technology of XML

 

 

Certificate

CONTENTS

  1. Objective
  2. Certificate
  3. Acknowledgements
  4. Introduction
  5. Scope of the project
  6. Theoretical backgrounds
  7. Functional Requirements
  8. Non-Functional Requirements
  9. Product Perspectives
  10. Software Engineering Paradigm Applied
  11. Feasibility Study
    • Technical Feasibility
    • Economic Feasibility
    • Operational Feasibility
  12. Input
    • Context Diagram
    • Data Flow Diagram
    • Entity Relationship Diagram
  13. Processing
  14. Table Design
  15. Testing
    • Unit Testing
    • Integration Testing
  16. Validation Check
  17. Attributes of the Software
  18. Evaluation of the Software
  19. Maintenance of the Software
  20. Security of the Software
  21. Limitation of the Software
  22. Future Scope
  23. Bibliography
  24. Project source code and outlook

 

ACKNOWLEDGEMENT

In one way or other many people helped us in preparing this project to the point of completion. We heartily wish to express our deepest gratitude to our guide Dr. Subodh Chandra Garai, for his active guidance, valuable suggestions and continuous encouragement, without whose help and efforts this project would not been completed successfully.

We owe our respect to Dr. D. S. Mukhopadhyay (Principal) and Prof. Kalyan Mahato (Head of the Dept.) for their necessary help and encouragement. We are thankfull to our classmates for their encouragement during preparation of this project.

 

INTRODUCTION

The agricultural information is generally providing by the Block Development Offices. That is why every block has to cover a large area to provide scientific, integrated, systematic information to the users including farmers. There is only single Block Development Agricultural Officer in each block to provide such information. So many interested and serious users cannot get appropriate and timely information at no or low cost. Also most of the farmers (users) of W. Bengal are not practising cultivation in scientific manner. That’s why they are not receiving satisfactory benefits from agricultural activities. The percentage of literate farmers increasing gradually. In many states like Uttar Pradesh, Haryna, Punjab farmers use computers and get the scientific information about agriculture and the annual incomes of most of the farmers in those states are Rs.100000 to Rs.150000, whereas in W. Bengal farmers’ annual incomes vary between Rs.30000 and Rs.80000. Using net the farmers also sell their products.

Our main aim through this project is to introduce a new web based agricultural information system that will help all concerned users.

In this project we basically give some important information about agriculture but we do not claim too much about any comprehensive system to provide information on all possible agricultural activities or products.

We hope that, in future, we shall be able to add more. Just this project may help the users a little bit and we believe that it is an attempt towards a positive and significant direction.

 

SCOPE OF THE PROJECT

We are assigned for this project for

  • The cross checking of the existing HTML files of the website (or intranet site).
  • Introduction a side wide uniform style sheet (XSLT).
  • Validation of the pages as per W3C specifications.

 

THEORITICAL BACKGROUNDS

HTML

HTML stands for Hypertext Markup Language. HTML is a subset of SGML (Standard General Markup Language) and is the language used to define the layout and attributes of a World Wide Web document as well as to create links between web documents (documents being text, sound, or graphics). HTML stands for the Hypertext Markup Language. HTML code is the major Language of the Internet’s World Wide Web. Web sites and Web pages are written in HTML code. With HTML code and the World Wide Web, we have the ability to bring together text, pictures, sounds, and links. All in one place!

HTML code files are plain text files; so they can be composed and edited on any computer – Windows, UNIX, Mac, whatever.

ASP

Active server pages (ASP) technology provides a simplified, fast way to create dynamic web Content. ASP technology enables rapid development of web-based applications that are server-and platform-independent.

Active Server Pages (ASP) technology enables web developers and designers to rapidly develop and maintain information-rich, dynamic web pages that leverage existing business systems. As part of the Microsoft technology family, ASP technology enables rapid development of web-based applications that are platform independent. ASP technology separates the user interface from content generation, enabling designers to change the overall page layout without altering the dynamic content.

Active Server Pages (ASP) is a technology based on the VBScript or JavaScript and enables the Development of dynamic web sites. ASP was developed by Microsoft Technology to allow server side development. ASP files are HTML files with special Tags containing VB script & ASP Source code that provides the dynamic content.

XML

Microsoft® XML Core Services (MSXML) 4.0 allows customers to build high-performance XML-based applications that provide a high degree of interoperability with other applications that adhere to the XML 1.0 standard. Among the core services MSXML 4.0 provides developers support for the following:

  • The Document Object Model (DOM), a standard library of application programming interfaces (APIs) for accessing XML documents.
  • The XML Schema Definition language (XSD), a current W3C standard for using XML to create XML Schemas. XML Schemas can be used to validate other XML documents.
  • Extensible Style sheet Language Transformations (XSLT) 1.0, a current W3C XML stylesheet language standard. XSLT is recommended for transforming XML documents.
  • The XML Path Language (XPath) 1.0, a current W3C XML standard used by XSLT and other XML programming vocabularies to query and filter data stored in XML documents.
  • The Simple API for XML (SAX), a programmatic alternative to DOM-based processing.

We use XML as a backup or database, but we do not use any other data base like SQL server, Microsoft Access, or ORACLE. IT has several advantages over other database server, which are listed below:

  1. XML stores each document as a text document, that’s why a little amount of memory is used to store each document. In case of SQL or Microsoft Access io create a database uses a lot of memory!
  2. XML is simple to other database.
  3. XML database can run in any type of machine.
  4. XML-family of languages (i.e., XSLT, XSD, XPath etc.) not only stores data but also manipulates data and displays differently formatted reports.
  5. This technology only requires an Operating System (in the server) having an Internet browser (in the client machine) and hence in an copy-left OS like LINUX the cost implications are almost nil.

Drawback of XML is that it is slow compared to other database but as the technology improves we expect that the XML database will run faster in future.

There are several branches available in XML, for several purposes. But we use only DOM (Document Object Model), X_Path (used for query), XSLT (Stylesheet Language Transform, though we can also use other stylesheet like CSS).

FUNCTIONAL REQUIRMENTS

The functional requirements of the project can be summarized as follows:

  • In our project there are two categories of users, namely,
    • GENERAL USERS and
    • ADMINISTRATORS
  • The following are the functions of the administrator:
    • If any new product or corps is coming which is most economical for cultivating to the farmer, the administrator can add and edit the product.
    • If there any government norms to popularise any product, the administrator edits this product to provide and add necessary information about the climax of several agricultural products; to refresh records of the database from time to time by the administrators.
  • The following are the functions of general users:
    • Accessing the necessary information about agriculture.
    • Accessing results of any student associated with the University.
    • Connecting with the block in case of old users.

The exclusive functions of our software are:

  • Various field level validations are present in the various forms.
  • The software does not allow the update and modifications of the main database as well as of the users (including administrators) profile of data by the general users.

 

NON-FUNCTIONAL REQUIRMENTS

The following are the non-functional requirements of our project:

  • Manual recording of the subscription.
  • Generation of reports periodically and
  • Manual receiving of the notification regarding someone’s, which will cause the administrator to delete his/her record.

 

PRODUCT PERSPECTIVE

Website of any block maintains records of all the details of the block documents. It gives the information about the availability of the block, its mission, quality control, infrastructure, and facilities. It gives the information about the agricultural product of the block. It provides the facilities for the outside user to access the block database to collect necessary information.

 

SOFTWARE ENGINEERING PARADIGM

A software development process is designed as a framework involving a small number Frame of activities those are applicable to all software projects, containing a number of task sets, each a collection of software itself, including work products and quality assurance points. From to scratch to final product a systematic approach is followed. A Software development process deals with the broad categories of software development.

It has four fundamental activities or stages, viz.,

  1. Software specifications: Functionality of software and the constraints of its operation must be defined.
  2. Development: Meeting those specifications must be produced.
  3. Validation: It has to be validated to check for the customer need.
  4. Evolution: Must have the changes to meet the necessary needs for the customer time wise.

The software process model used in this project is the Waterfall Model. It is also called staircase model. It represents a systematic and sequential approach to its development. The beauty of this approach is the fact that a step is initiated only when its predecessor steps are completed successfully. The process comprises of the following steps:

  • Feasibility study
  • Requirement analysis and specification
  • Design
  • Coding and unit testing
  • Integration and system testing
  • Maintenance

FEASIBILITY STUDY

It is conducted to select the best system that meets the performance requirements. Here we consider economical, technical, operational aspects in judging whether our software is viable or not.as such feasibility study comprises of

  • Technical feasibility
  • Economic feasibility
  • Operational feasibility

A feasibility study is conducted to select the best option that meets the performance requirements. Three key considerations are followings:

Technical Feasibility

Technical feasibility centers around the existing computer system and to what extends it can support the proposed addition or whether the new application could overload the system or require additional. The project can be implemented on any computer having the following specifications:

  • Hardware requirements –
    • PII or higher processor or AMD processor
    • 64 MB minimum RAM
    • 200 MB free hard disk space
  • Softare requirements –
    • Windows 98/98se/me/2000/xp
    • MSXML 4.0

All these things are already present to every one. So this project is technically feasible.

Economic Feasibility

Economic feasibility analysis is the most frequently used method for evaluating the effectiveness of the project. The project is economically feasible because

  1. The software and hardware required is already present so new software or hardware is to be bought.
  2. The software is user friendly. So any person with minimum knowledge of computer can use the software. No experts are needed for operating the software.

 

Operational Feasibility

The software is user friendly and builds with conventional notation. As the project is GUI based with smart control buttons and icons, there will be no extra effort and manpower needed in educating and training the user staff.

 

REQUIREMENT ANALYSIS & SPECIFICATION

In this stage the requirement of the developed software are established. These are usually the services it will provide its constraints and the goals of the software. Once these are established they have to be defined in such a way that they are usable in the next state.

DESIGN

In this stage the established requirement are converted in such a way that they can be readily transformed computer programs.

IMPLEMENTATION AND UNIT TESTING

This is stage where the computer programs are created. Each program is called a unit and unit testing is the verification that every unit meets its specification.

INTEGRATION AND SYSTEM TESTING

All the units are combined and now the whole is tested. When the combined programs are successfully tested, the software product is finished.

MAINTENANCE

It means the hardware and software maintenance of the software.

TESTING

After completing program coding, the program testing begins. Testing a program consists of providing the program with a set of inputs and observing if the program behaves as expected. If the program fails to debugging and corrections. There are some terms which are associated with testing: failure, fault, test suit etc.

The objective of testing are:

  • To execute the program with the intention of finding error.
  • To generate a good test case, this has a high probability of an as yet undiscovered error.
  • Successful test is one that uncovers an undiscovered error.
  • Our objective is to design cases which facilitate the systematic focus on different classes of errors and uncover it with a Minimum amount of time and effort.
  • Another benefit of testing is demonstrate that software works according to specification.

Test case design

Test cases are designed by the following two cases:

  1. BLACK BOX TESTING
    It focuses on the functional requirements of the software. That is BBT enables us to sets of input condition that will fully exercise all functional requirements for a program. By using BBT we attempt to find the following class of errors –

    • Incorrect or missing functions
    • Errors in data structures
    • Performance errors
    • Initialization and termination errors.
  2. WHITE BOX TESTING
    It is the test case design method that uses the control structure of the procedural design to derive test cases. Using this method we aim to derive test cases that will serve the following purposes –

    • Guarantee that independent paths within a module have been exercised at least once.
    • Exercise all logical decisions on their true and false sides.
    • Exercise all loops at their boundary and within operational bounds.
    • Exercise internal data structure to assure their validity.

GUI TESTING

As the project uses graphical user interface, and the modern GUI has the same look and feel, thus a series of standard test can be performed to test the graphical user interface. The following questions are used as guidelines for GUI testing:

  • Will all the web pages open properly based on related keyboard or menu based command buttons?
  • Can web pages be resizes, moved and scrolled properly?
  • Are all the functions that are related to a particular web page available and operational?
  • Does the web page appear properly in sequence?

Testing strategies followed in this project are:

Front-end GUI testing

The GUI tool has been extensively put to the test by innumerable developers, Still some amount of GUI testing buttons and mouse operations etc.
Actually testing was done to check the visual appearance of the web pages.

Back-end database testing

Tests are done to check whether the ASP data entry modules have been successful to insert update, and delete data into relevant tables. Also we check all the triggers are working properly or not.

VALIDATION CHECKS

System validation checks the quality of the software in both simulated and live (i.e., real-life) environments. It ensures that the customer can in fact match his/her claims, especially system performance. True validation is verified by having each system demonstrated.

Validation checks whether a particular product satisfies user requirements. The WEBSITE checks validation of the user by checking the username and password.

The persons who want to update the records are also first provided the username and password in the website.

Several levels of validation are offered by our project. They are as follows:

  1. A new user has to get him self registered to the site. Existing users have to provide their user-id and passwords which is validated then access is granted.
  2. An administrator has to provide his own user-id and password in order to use the special authorities granted to him.

 

ATTRIBUTES OF THE SOFTWARE

Reliability

The amount of time that the software is available for use as indicated by the followings sub-attributes:

  • Maturity
  • Fault tolerance
  • Recoverability.

Usability

The degree to which the software is easy to use as indicated by the following sub-attributes:

  • Understandability
  • Learn-ability
  • Operability.

Portability

The case with which the software can be transposed from one environment to the other as indicated by the following sub-attributes:

  • Adaptability
  • Installability
  • Conformance
  • Replace-ability.

In this case of our project it can be installed on a LAN where at least one machine has operating system windows XP,ME,98,95 and we can call that machine as server and the others are clients.

Reusability

The extent to which a program or parts of it reused in other applications defines its reusability.

Interoperability

It is defined as the effort required coupling one system to another.

 

EVALUATION OF THE SOFTWARE

Before selecting software, our first task to analyze the requirements of the software after initial selection, further scrutiny is needed to determine the desirability of the particular s/w compared with others. From the above point of view, we have chosen XML as database management system and ASP for developing the front-end. Evaluation of the system is to done to find it out its strengths and weaknesses.

 

MAINTENANCE OF THE SOFTWARE

Maintenance can be classified as follows:

  • Corrective
  • Adaptive
  • Perfective.
  1. The first one is repair performance failures or making to the existing system because of previously uncorrected failures. In the previous existing system there was no scope of platform of independence. This fault was removed using ASP, HTML as front-end GUI. Maintaining ASP & XML program is easy and the object oriented approach of XML makes it easy to rectify problems in a particular frame.
  2. Adaptive maintenance means changing the program functions. ASP is a fast developing language and flexible enough to incorporate new technologies.
  3. Perfective maintenance indicates to the enhancements of system.

 

SECURITY OF THE SOFTWARE

Security must be implemented to prevent the information from being lost or to prevent Invalid or unscrupulous user from tampering critical information like details of the agriculture, details of the users etc. This is done by

  1. Nobody is given the permission to access the system until he/she is passed the authentication process. Any user wishing to view the contents of the site has to the first register to the site. Any existing user has to provide the user-id and password in order to enter the site. The user-id and password is validated against the contents of a member-table. Each user is given a member-id which is unique for every member.
  2. Existing users can only view the necessary documents of the other members but cannot alter or modify them. He however can update or alter his personal details after passing through the authentication process.
  3. Common users have limited facility when they access the website.
  4. Administrators however are certain authorities. They can enter new information, update database details and also refresh records.

 

LIMITATION OF THE SOFTWARE

Our software has some limitations too – they are listed below:

  1. Due to use of XML as a database, the database does not work so fast than other database server like ORACLE, SQL, Microsoft Access etc.
  2. In some operating systems, like WINDOWS XP, where the system security is high, some time the XML database may not work properly, that means operating system prevent from updating files. Since the XML document is saved as text file and the modifications are not allowed by the operating system, that’s why the INSERT or DELETE any XML document is interfered and hence disturbed.
  3. This is basically 2-tier architecture not maintain 3-tier architecture.

 

FUTURE SCOPE OF THE SOFTWARE

  1. In future we can design more interactive pages in the website which will give more information.
  2. We can provide an option of selling the agricultural product in future.
  3. The manual accessing information of the agriculture is time consuming. It can be done easily through web-based applications.

►●◄

 

1 thought on “WEB-BASED APPLICATION ON AGRICULTURAL INFORMATION SYSTEM USING XML-TECHNOLOGY”

Leave a Comment

Your email address will not be published. Required fields are marked *