121
DEVELOPMENT OF MOBILE BASED AGRICULTURE SCHEDULING SYSTEM FOR FARMERS IN REGIONAL LANGUAGE (PUNJABI) USING WEATHER CONDITIONS Thesis Submitted to the Punjab Agricultural University in partial fulfillment of the requirements for the degree of MASTER OF TECHNOLOGY in COMPUTER SCIENCE AND ENGINEERING (Minor Subject: Information Technology) By Navjot Kaur (L-2014-AE-213-M) School of Electrical Engineering and Information Technology College of Agricultural Engineering and Technology © PUNJAB AGRICULTURAL UNIVERSITY LUDHIANA-141004 2016

DEVELOPMENT OF MOBILE BASED AGRICULTURE SCHEDULING … · DEVELOPMENT OF MOBILE BASED AGRICULTURE SCHEDULING SYSTEM FOR FARMERS IN REGIONAL LANGUAGE (PUNJABI) USING WEATHER CONDITIONS

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

  • DEVELOPMENT OF MOBILE BASED AGRICULTURE

    SCHEDULING SYSTEM FOR FARMERS IN REGIONAL

    LANGUAGE (PUNJABI) USING WEATHER

    CONDITIONS

    Thesis

    Submitted to the Punjab Agricultural University in partial fulfillment of the requirements

    for the degree of

    MASTER OF TECHNOLOGY in

    COMPUTER SCIENCE AND ENGINEERING (Minor Subject: Information Technology)

    By

    Navjot Kaur

    (L-2014-AE-213-M)

    School of Electrical Engineering and Information Technology College of Agricultural Engineering and Technology

    © PUNJAB AGRICULTURAL UNIVERSITY

    LUDHIANA-141004

    2016

  • CERTIFICATE I

    This is to certify that the thesis entitled, “DEVELOPMENT OF MOBILE BASED

    AGRICULTURE SCHEDULING SYSTEM FOR FARMERS IN REGIONAL

    LANGUAGE (PUNJABI) USING WEATHER CONDITIONS” submitted for the degree

    of M.Tech, in the subject of Computer Science and Engineering (Minor subject:

    Information Technology) of the Punjab Agricultural University, Ludhiana, is a bonafide

    research work carried out by Navjot Kaur (L-2014-AE-213-M) under my supervision and

    that no part of this thesis has been submitted for any other degree.

    The assistance and help received during the course of investigation have been fully

    acknowledged.

    __________________________

    (Dr. (Mrs.) B.K. Sawhney)

    Major Advisor

    Associate Professor

    School of Electrical Engineering

    & Information Technology,

    Punjab Agricultural University,

    Ludhiana-141004

  • CERTIFICATE II

    This is to certify that the thesis entitled, “DEVELOPMENT OF MOBILE BASED

    AGRICULTURE SCHEDULING SYSTEM FOR FARMERS IN REGIONAL

    LANGUAGE (PUNJABI) USING WEATHER CONDITIONS” submitted by Navjot

    Kaur (L-2014-AE-213-M) to the Punjab Agricultural University, Ludhiana, in partial

    fulfillment of the requirements for the degree of M.Tech, in the subject of Computer Science

    and Engineering (Minor subject: Information Technology) has been approved by the

    Student’s Advisory Committee along with the Head of Department after an oral examination

    on the same, in collaboration with an External Examiner.

    __________________________ ______________________________

    (Dr. (Mrs.) B.K. Sawhney) (Dr. J.S. Ubhi )

    Major Advisor External Examiner

    Associate Professor

    Deptt. of Electronics & Communication,

    Sant Longowal Institute of Engineering

    and Technology,

    Sangrur

    ____________________________

    (Dr. Jaskarn Singh Mahal)

    Director

    School of Electrical Engineering

    & Information Technology,

    Punjab Agricultural University,

    Ludhiana-141004

    ___________________________

    (Dr. (Mrs.) Neelam Grewal)

    Dean, Postgraduate Studies

  • ACKNOWLEDGEMENT

    Fore mostly, I bow my head with reverence to ‘Almighty Lord’ who showed the

    blessings on me during the course of this research and brought it to a logical end.

    I express my profound gratitude, indebtedness and appreciation to my Major Advisor

    Dr. (Mrs.) B.K. Sawhney, Associate Professor, School of Electrical Engineering & Information

    Technology, PAU, Ludhiana, for her valuable guidance, constant encouragement and

    unending help during the tenture of this study.

    I am thankful to all the members of my Advisory Committee Dr. O.P. Gupta,

    Associate Professor, Dr. Derminder Singh, Associate Professor and Er. Salam Din, Associate

    Professor of School of Electrical Engineering & Information Technology for their valuable

    suggestions and expert guidance on various issues related to this research work.

    I wish to express my deepest sense of gratitude to my parents Mr. Bikkar Singh and

    Mrs. Simarjit Kaur, my husband Mr. Gulwinderpal Singh and my brother Mr. Harinderjot

    Singh for their unconditional love, support and sacrifices, which can never be forgotten and

    whose ever willing help has a great role in my life.

    A debt of gratitude is also owned for the unending help and encouragement received

    from my friends Rajvir, Mumraj, Karanveer, Shiveta and Swarn that will remain indelible in

    my memory.

    I take this opportunity to extend my sincere thanks to all the teaching and the non-

    teaching staff of School of Electrical Engineering & Information Technology for their kind

    cooperation, generous help as and when needed.

    In the end, I am thankful to all those who may not have been mentioned but are not

    forgotten.

    _____________ (Navjot Kaur)

  • Title of the Thesis : Development of mobile based agriculture

    scheduling system for farmers in regional

    language (Punjabi) using weather conditions

    Name of the Student : Navjot Kaur

    and Admission No. L-2014-AE-213-M

    Major Subject : Computer Science and Engineering

    Minor Subject : Information Technology

    Name and Designation : Dr. (Mrs.) B.K. Sawhney

    of Major Advisor Associate Professor

    School of Electrical Engineering &

    Information Technology

    Degree to be awarded : M.Tech (Computer Science & Engineering)

    Year of award of Degree : 2016

    Total pages in Thesis : 66 + Appendix + Vita

    Name of University : Punjab Agricultural University,

    Ludhiana-141 004, Punjab, India

    ABSTRACT

    In Indian agriculture, farming activities like sowing, harvesting and irrigation plays very

    important role in productivity. These activities must be performed in suitable manner and

    most importantly at appropriate time in order to get good yield. But sadly most of the farmers

    are unaware about the impact of these activities on yield of their crop. So application is

    developed to educate farmers about it. The developed software application is basically for

    dissemination of information to farmers about the proper way of performing various farming

    activities in regional language Punjabi, of two main crops of Punjab- wheat and paddy. This

    application will assists farmers in performing these activities in proper manner and help them

    in improving their productivity of crops. Based on date of sowing, farmers will get

    notifications about farming activities. Additional advice will be provided along with the

    notification on the basis of weather conditions. This system is an android based application

    developed in regional language Punjabi for overcoming lingual barrier of farmers. The

    application is developed using Android Studio which is the official Integrated Development

    Environment (IDE) for developing an Android application.

    Keywords: Android, Scheduling, Farming Activities, Wheat, Paddy, Punjabi.

    _____________________________ _______________________

    Signature of the Major Advisor Signature of the Student

  • Koj pRbMD dw isrlyK : mOsmI hlwqW dI vrqoN krky ikswnW leI KyqrI BwSw (pMjwbI) iv`c mobwiel KyqI AnusUcI pRxwlI dw ivkws

    ividAwrQI dw nwm Aqy dwKlw nM. : nvjoq kOr (AYl-2014-ey.eI.-213-AYm)

    mu`K ivSw : kMipaUtr swieMs Aqy ieMjnIAirMg

    inmn ivSw : ieMnPrmySn tYknolojI

    pRmu`K slwhkwr dw nwm Aqy Ahudw : fw. bI.ky. swhnI sihXogI pRoPYsr skUl AwP ielYktRIkl ieMjnIAirMg AYNf ieMnPrmySn tYknolojI

    ifgrI nwl snmwinq krn dw swl : 2016

    Koj pRbMD iv`c ku`l pMny : 66 + AMiqkw + vItw

    XUnIvristI dw nwm : pMjwb KyqIbwVI XUnIvristI, luiDAwxw-141004, pMjwb, Bwrq

    swr-AMS

    BwrqI KyqI ivvsQw iv`c, bIjweI, vwFI Aqy isMcweI vrgIAW ikrswnI gqIivDIAW dI auqpwdkqw iv`c Aihm BUimkw hY[ vDIAw JwV lYx leI ieh swrIAW gqIivDIAW suc`jy FMg nwl krnIAW cwhIdIAW hn Aqy ies qoN vI mh`qvpUrn ieh hY ik ieh swry kMm shI smyN qy krny cwhIdy hn[ pr APsos dI g`l ieh hY ik iehnW gqIivDIAW dy &sl dy JwV aupr pYx vwly pRBwvW qoN ikswn Anjwx hn[ ies leI ikswnW nUM is`iKAq krn leI AYplIkySn ivksq kIqI geI[ ieh swPtvyAr mu`K qOr qy pMjwb dIAW do pRmu`K &slW – kxk Aqy Jony leI v`Ko-v`KrIAW ikrswnI gqIivDIAW nUM shI FMg nwl krn leI ikswnW iv`c jwxkwrI dw pswr krn leI KyqrI BwSw pMjwbI ivc̀ iqAwr kIqw igAw[ ieh AYplIkySn ikswnW nUM ieh gqIivDIAW suc`jy FMg nwl krn ivc̀ shweI hovygI Aqy &slW dI auqpwdkqw nUM vDwaux ivc̀ auhnW mdd krygI[ bIjweI imqI dy ADwr qy, ikswnW nUM v`Ko-v`KrIAW ikrswnI gqIivDIAW sbMDI sUcnw imldI rhygI[ sUcnw dyx dy nwl nwl mOsmI hlwqW dy ADwr qy ikswnW nUM slwh vI id`qI jwvygI[ ieh pRxwlI AYNfrwief ADwirq hY Aqy ikswnW dIAW BwSw sbMDI AOkVW nwl nij`Tx leI KyqrI BwSw pMjwbI iv`c iqAwr kIqI geI hY[ ieh AYplIkySn AYNfrwief stUfIE dI vrqoN krky iqAwr kIqI geI hY jo ik AYNfrwief AYplIkySn iqAwr krn leI ie`k AiDkwrq ieMtIgRyitf ifvYlpmyNt ienvwiernmYNt (IDE) hY[

    mu`K Sbd: AYNfrwief, AnusUcI, ikrswnI gqIivDIAW, kxk, Jonw, pMjwbI

    __________________ ________________

    pRmu`K slwhkwr dy hsqwKr ividAwrQI dy hsqwKr

  • CONTENTS

    CHAPTER TOPIC PAGE NO.

    I INTRODUCTION 1 – 4

    II REVIEW OF LITERATURE 5 – 13

    III MATERIAL AND METHODS 14 – 37

    IV RESULTS AND DISCUSSION 38 – 61

    V SUMMARY 62 – 64

    REFERENCES 65 – 66

    APPENDIX i – xliv

    VITA

  • LIST OF TABLES

    Table No. Title Page No.

    3.1 Structure of farmer table 21

    3.2 Structure of admin table 21

    3.3 Structure of wheatOct table 21

    3.4 Structure of wheatseed table 22

  • LIST OF FIGURES

    Figure No. Title Page No.

    1.1 Mobile Penetration in Urban and Rural Segment 1

    3.1 Data Flow Diagram for users 20

    3.2 Data Flow Diagram for admin 20

    3.3 String.xml file 22

    3.4 Android Cycle 26

    3.5 Architecture of Android 30

    3.6 Model View Controller 32

    3.7 Work Flow of App Development 34

    3.8 JSON Structure 36

    3.9 JSON Call 36

    4.1 Login Activity 39

    4.2 Registration Activity 40

    4.3 Registration Activity showing validation violated message 41

    4.4 Home Activity 41

    4.5 Weather Fragment 42

    4.6 Wheat Fragment 43

    4.7 Notification Fragment of Wheat Crop 43

    4.8 Notification of Wheat Crop 44

    4.9 Confirmation Message 44

    4.10 Confirmation message regarding changing of sowing date 45

    4.11 After Notification Activity of Wheat 45

    4.12 Schedule Wheat Activity 46

    4.13 Schedule of October 46

    4.14 Schedule of November 46

    4.15 Schedule of March 46

    4.16 Wheat Seed Activity 47

    4.17 Wheat Seed Type1 Activity 48

    4.18 Wheat Seed Type2 Activity 48

  • Figure No. Title Page No.

    4.19 Wheat Seed Type3 Activity 49

    4.20 Paddy Fragment 50

    4.21 Notification Fragment of Paddy 50

    4.22 Notification in notification panel of Paddy Crop 51

    4.23 Confirmation Message of Paddy Crop 51

    4.24 Confirmation message about changing of sowing date of Paddy 52

    4.25 After Notification Activity of Paddy 52

    4.26 Schedule Paddy Activity 53

    4.27 Schedule of May 53

    4.28 Schedule of June 53

    4.29 Schedule of September 53

    4.30 Paddy Seed Activity 54

    4.31 Paddy Seed Type1 Activity 55

    4.32 Paddy Seed Type2 Activity 55

    4.33 Paddy Seed Type3 Activity 56

    4.34 Login Activity of Admin 57

    4.35 Drawer of Home Activity 57

    4.36 Activity for adding new seeds of Wheat 58

    4.37 Activity for adding new information of schedule of October 58

    4.38 Options for altering previous Information 59

  • CHAPTER I

    INTRODUCTION

    The society is going through technological era. The involvement of technology is

    there in each and every phase of the life. Whereas these days, the most common way of

    transmitting voice, data and services in the world is the mobile communication technology.

    Strategic reforms in the telecommunications sector since 1990s, facilitates strong

    Information and Communication Technology (ICT) infrastructure in India. In 2012, India and

    China accounted for nearly 40 per cent of the total new mobile connections across the world.

    Evidently, the Indian market plays a key role in the ever-expanding mobile network globally.

    The Indian mobile subscriber base stood at 970 million in March 2015 and is expected to

    cross one billion by 2016. The Indian mobile subscriber base contributes to around 15 percent

    of the world mobile subscriptions of 6.5 billion (Cellular Operators Association of India

    (COAI), 2015).

    Fig 1.1 Mobile Penetration in Urban and Rural Segment

    Horizontal line ( x-axis) depicts year and vertical line (y-axis) depicts percentage

    (Source: COAI Annual Reports 2015)

    Rural mobile subscriber base has been increasing steadily over last seven years. It

    was 27 percent in the 2008 and by 2015 the rural subscriber base has reached till 42 percent

    of the total subscriber base. It is estimated by the Mobile industry that the mobile growth will

    now happen from rural segment. Telecom Regulatory Authority of India (TRAI) report states

    that 93 percent of the internet users are using mobile devices to access the internet

    application. It means that mobile devices are fast replacing personal computers to access

    content available on internet. This clearly indicates that the Internet revolution via mobile

    telephony is taking place from the rural areas (COAI, 2015). So mobile phones can be used to

    disseminate information even in rural areas.

  • 2

    Mobile phones are used very commonly by everyone. The development of mobile

    applications (Mobile app) has increased the usability of mobiles beyond voice and text

    communications. Mobile app is a computer program designed to run on mobile devices such

    as smartphones and tablet computers. Due to rapid growth in the use of smartphones and

    falling internet access costs, the development of mobile apps has increased dramatically.

    Earlier mobile apps were developed mainly for entertainment and communication purposes

    only. But now trend has been changed and mobile apps are focused on other sectors as well

    like finance, agriculture and even daily routine activities. Mobile app for agricultural and rural

    development (m-ARD apps) is one of the emerging fields that focus on the enhancement of

    agricultural and rural development. As mobiles are part of day-to-day life of everyone,

    including farmers, so they can be utilized for providing accurate and timely information to

    farmers, reminding them about farming activities and helping them in improving their

    productivity.

    There are many advantages of mobile apps but the most important one is that they are

    quite easy to use as compared to websites. In order to use websites one must know how to

    operate a computer which is a quite cumbersome task for a common man like farmer. On the

    other hand mobile apps are very user friendly; one can easily operate it and get benefitted

    from it.

    1.1 Need of a Scheduling Mobile app for Punjabi Farmers

    Agriculture is one of the main livelihoods in India especially in Punjab. Indian Punjab is

    called the ―India’s bread-basket‖. It produces wheat, paddy, cotton and other important crops.

    So productivity of crops of Punjab has great impact on the Indian economy. Agriculture

    involves number of activities like sowing, irrigation, fertilization, harvesting etc. All these

    activities must be performed at appropriate time and also in suitable manner for good

    productivity and proper utilization of resources. Moreover, weather conditions also affect the

    productivity of crops. But most of the farmers do not have proper or up to date information.

    As a result farmers do not perform these farming activities on time or in proper manner. They

    just follow hit or trail method or old traditional methods. This leads to exploitation and

    wastage of natural resources, also productivity of their crops get affected and so is economy

    of country.

    Agricultural experts provide information to farmers about proper timing and proper

    manner of doing various farming activities by organizing various camps in villages. Even

    Punjab Agricultural University (PAU) monthly magazine has published columns related to

    farming activities of various crops to remind farmers about various activities that are to be

    performed in upcoming month.

  • 3

    Weather conditions play very important role in Indian agriculture. Productivity will

    be increased if all these activities are done by considering weather conditions as well. Like if

    there is time to irrigate fields but according to weather forecasting there is possibility of rain

    in coming one-two days so irrigation can be postponed accordingly. This will save resources

    like water, electricity and also save the crop from waterlogging. These day as life of each and

    every person is very busy so it is possible that one may forget timing of irrigation or putting

    manure to his fields due to his hectic life schedule and it will have adverse impact on

    productivity of crop. So developed mobile based agriculture scheduling system, that by taking

    in account weather conditions, remind the farmers about various farming activities and

    contribute in increasing the productivity and their economic conditions as well. It also

    provides basic information such as type of seeds available or recommended by PAU, which

    fertilizer to be used and in what quantity etc. about various crops. This helps in reducing the

    wastage of resources and money as well.

    Now-a-days so many information systems are available but still farmers do not get

    advantage from them due to language problem. As most of the mobile apps developed for

    agricultural assistance has English language user interface. So language barrier is there. As

    most of the agriculturists either can’t communicate in English or they reluctant to do so.

    Farmers will be more interested in using any mobile app if it will be in their regional

    language. That’s why the proposed mobile based scheduling system is developed in regional

    language Punjabi focusing mainly on Punjabi farmers.

    The proposed system termed as ―Development of mobile based agriculture scheduling

    system for farmers in regional language (Punjabi) using weather conditions‖ is android based

    mobile app. It is a scheduling app designed for two crops wheat and paddy in which

    registered farmer can enter date of sowing of his crop and app will give notifications to him

    about various farming activities from date of sowing till harvesting. It is developed in regional

    language Punjabi so that more and more farmers are able to utilize it in their agricultural

    activities and get benefitted from it. It enables farmer to perform all these activities timely and

    also in proper manner. This mobile app also displays weather in regional language Punjabi to

    improve the understandability of weather by farmers. The weather conditions are also taken

    into consideration while notifying farmers about various farming activities so that natural

    resources like rainfall is utilized properly and also wastage of other resources is reduced. The

    user interface of mobile app is very easy to use and focuses mainly on assisting farmers in

    agricultural activities. This mobile app also provides information about the type of seeds

    recommended by PAU. So that farmers can get latest up to date information. The essential

    features of the mobile app can be summarized as follows:

    Scheduling system to notify registered users about important farming activities.

    Weather is displayed in regional Language Punjabi.

  • 4

    User interface of app is in Regional language Punjabi.

    Information about type of seeds of wheat and paddy recommended by PAU

    Displays monthly schedule of wheat and paddy.

    1.2 Objectives

    The objectives of the proposed system are as follows:

    i. To study the basic information required for farmers such as varieties of seeds,

    types of fertilizers and information about various farming activities.

    ii. To develop mobile based agriculture scheduling system for farmers in regional

    language (Punjabi) using weather conditions like temperature, humidity.

  • CHAPTER II

    REVIEW OF LITERATURE

    Silva and Ratnadiwakara (2005) studied about using ICT to reduce transaction costs

    in agriculture through better communication in Sri Lanka. They found that there were notable

    costs attached to information search and hence transaction costs related with all six stages of

    the agricultural value chain ongoing with the decision to grow and ended with sale of produce

    at the wholesale market. In the decision stage and selling stages, the relative proportion of

    information search costs was found to be highest among the farmer group in the case study of

    smallholder vegetable farmers in rural Sri Lanka. The study also found that if farmers had

    used the phone at various points in the agricultural value chain their information search costs

    could have been decreased considerably. Consequently it was reasonable to suggest an

    cohesive system using a mobile phone platform that addressed the total information needed

    from the decision making stage to selling stages of agricultural produce to assist farmers

    significantly reduce information search costs.

    Singh (2008) conducted study about the diffusion of mobile phones in India. He

    concluded that mobile phones were becoming the foremost means of retrieving

    communication. At the end of 2005–2006, there were 90 million mobile subscribers in India

    in comparison to 50 million subscribers for landlines. The increase in mobile phones had been

    phenomenal in comparison with landlines since the introduction of mobiles in the country.

    The main aim of his study was to estimate future trends and analyze the pattern and rate of

    adoption of mobile phones in India. He used S-shaped growth curve models for the same. It

    was found that mobile-density (number of mobile phones per 100 inhabitants) in India would

    increase from 8.1 in 2005–2006 to 36.5 in 2010–2011 and 71 in 2015–2016. Consequently,

    the mobile subscriber base was projected to increase from 90 million in 2005–2006 to 433

    million in 2010–2011 and nearly 900 million in 2015–2016. The predictable rapid growth in

    the mobile subscriber base would have significant implications for future plans of mobile

    operators, infrastructure providers, handset suppliers and vendors.

    Mittal and Tripathi (2009) concluded on role of mobile phone technology in

    improving small farm productivity. Mobile phones have the potential to provide solution to

    the current information asymmetry in numerous lagging sectors like agriculture. India’s

    agricultural sector suffered from low growth rates and low productivity. Problems in access to

    information were weak points at each stage of the agri-supply chain. For small farmer-based

    economy like India, access to information could perhaps enable improved incomes and

    productivity to the farmers. Through group discussions and in-depth interviews with farmers,

    they tried to find answers to the use and impact of mobile phones and mobile-enabled services

    on agricultural productivity. The answers to these questions were of relevance to develop

  • 6

    better policy environment conducive for small and medium farmers and have repercussions

    for mobile phone operators, information service providers, and policymakers. The study had

    revealed that although, mobile phones could act as catalyst to improving farm productivity

    and rural incomes, the superiority of information, appropriateness of information and

    trustworthiness of information were the three significant features that had to be delivered to

    the farmers to meet their needs and expectations. There exist critical binding constraints that

    restricted the ability of the farming community to realize full-potential gains and it was more

    so for small than large farmers.

    Sahota (2009) accompanied a study on usage of mobile phones for accessing

    agricultural information under the Indian Farmers Fertilizer Cooperative Limited (IFFCO)-

    Airtel Kisan Card initiative and found that proactive usage of the service by the farmers was

    very little. Nobody had made a voice call or sent as SMS to the service providers to seek extra

    agricultural information. It was observed that most of the farmers who had bought the mobile

    phone as a part of the initiative were utilizing it for social interacting. Even the initiative also

    had facility for sending video clips or still photographs to the experts for seeking advice, it

    was found that the farmers were not able to use this feature due to their inadequate

    technological skills. Further, farmers (especially small landholders) sensed that the advice

    was not feasible, as the inputs suggested by the experts were either not available in the local

    market or were too expensive.

    Alibaygi et al (2010) surveyed the effectiveness of rural ICT centers. They concluded

    that Rural ICT centers played a significant role in rural development through improving e-

    governance in rural areas. The main purpose of this survey research was to examine the

    efficiency of rural ICT Centers for developing e-governance in the rural societies of the

    Kermanshah Township, situated in the west of Iran. The data were collected in two phases.

    The firstly Delphi technique was used, carried out by the participation of ICT experts to

    determine the effectiveness indicators. The second phase engaged a structured interview using

    a questionnaire. The majority of people did not use internet services despite its accessibility in

    the ICT Centers. The ICT Centers also had little effectiveness in improving rural households’

    income, employment rate, dispersion of agricultural material among farmers, and e-

    commerce. They were to some extent effective in reducing the relocation of rural people to

    urban areas, their day-to-day trips to near cities, and postal necessities as well as improving e-

    governance in rural areas.

    Masuki et al (2010) studied the role of mobile phones in improving communication

    and information delivery for agricultural development in South Western Uganda. They

    highlighted the critical role mobile phones could play in greater efficiency for farmers in rural

    setting. One of the key findings was that mobile phones were gradually accessible to lower-

    income groups in rural areas. As of from the discussions and observations made, it was found

  • 7

    that farmers were more enthusiastic about using the phone to access information on

    agriculture, natural resources management. This called for various characters along the

    product value chain to look into the chances that mobile phones could best be utilized to lift

    agricultural development that accounted for more than 30 percent of the county’s Gross

    Domestic Product (GDP) given the rapid growth of the mobile in the country. Chances arisen

    from the proliferation of mobile phones experienced in most developing countries like

    Uganda needed to be explored especially in the absence of other ICT infrastructure, like fixed

    phones and internet.

    Maumbe et al (2010) reported the evolution of information and communication

    technology (ICT) applications in agriculture and rural development based on proportional

    experiences of South Africa and Kenya. The framework postulates that complete deployment

    of ICT in agriculture and rural development would be a result of several phases of change that

    started with e-government policy plan, development and employment. They argued that ICT

    used in agriculture and rural development was a dominant instrument for improving

    agricultural and rural development and standards of living throughout Sub-Saharan Africa.

    There were so many impairments included the lack of awareness, low literacy, infrastructure

    deficiencies, language and cultural hurdles in ICT usage, the low e-inclusivity and the need to

    supply for the special needs of some users. They reviewed successful applications of ICT in

    agriculture and urged greater use of ICT-based interventions in agriculture as a vehicle for

    encouraging rural development in Africa.

    Mittal et al (2010) studied the socio-economic impact of mobile phones on Indian

    agriculture. They stated that as a telephonic device, the mobile empowers access to

    information sources that may not otherwise be accessible. As an information platform to

    receive messages, menu or voice message information, mobiles provides the skill to get

    linked to new knowledge and information sources not formerly available. Even at their initial

    stage, mobile phones were being used in Indian agriculture and started to deliver agricultural

    productivity improvements, an influence that was enhanced by the new mobile-enabled

    information services. The most common benefit of mobile telephony found in the research

    was derived from the use of mobile phones as a basic communications device as for many of

    the farmers interviewed, it was the only appropriate phone access they had. The barriers

    applied more to small than to large farmers; large farmers were more able to leverage the

    profits of the communication and information they could access. The limitations included

    failings in physical infrastructure that affected access to markets, storage and irrigation. Issues

    regarding the accessibility of critical goods and services including seeds, fertilizers, medicines

    and credit to small farmers also existed. Increased public and private investment and policy

    changes might also be needed to encourage better access to superior quality inputs and credit

    for small farmers. Increased extension services and capacity-building efforts could balance

  • 8

    information dissemination via mobile phones and associated services to accelerate the

    adoption of new practices. Social networks might play a dynamic role in building the trust

    and confidence required to influence the acceptance of new mentalities an actions by small

    farmers. Furthermore, basic information would need to be complemented by a range of other

    activities such as demonstrations and broader communication efforts. In the case of

    fishermen, there were, in addition to economic benefits, safety benefits and enhanced quality

    of life from decreased isolation and vulnerability.

    Kameswari (2011) discussed the agricultural information seeking behavior of farmers

    in the state of Uttarakhand, India. It tried to clarify the reasons behind use of certain media –

    including ICTs - by the farmers over other existing sources. It was observed that, though

    farmers had access to a wide range of media/ sources, they mostly trusted on middlemen, and

    native and certified sources for agricultural information. Among new ICTs, mobile phones

    were broadly accessible in the study area but were frequently being used for post-sale inquiry

    rather than paddy negotiation, accessing markets or paddy information or increasing

    production efficiency. In the rural Indian context, the availability of ICTs does alter the

    reciprocal connection between the seller (farmer) and the buyer (middlemen). In the absence

    of formal and effective institutions, the middleman was also the supplier of seeds, fertilizers,

    pesticides and credit to the farmers and this skewed relation limited the advantage that could

    be derived from use of ICTs. While the study indicated that the possible advantage from use

    of ICTs in rural areas were offset by an absence of other input agencies, interventions in other

    parts of the country indicated that the entire agricultural supply chain could be made more

    effective by use of ICTs. Hence, rather than negating the likely benefits that could be derived

    from the use of ICTs in agriculture sector, this study pointed to issues that needed to be

    addressed simultaneously.

    Qiang et al (2011) stated the role of mobile applications in agriculture and rural

    development. They reported that m-ARD apps offered innovative, dynamic, interdisciplinary

    services. Their main findings were:

    Enabling platforms were likely the most significant factor for m-ARD apps to move

    from the pilot stage to the scalability and sustainability stages—beyond donor and

    government funding. Such platforms were built on the links between handsets,

    software applications, and payment tools that supported interactions among

    stakeholders in the m-app ecosystem. Platforms could provide access to more users,

    offer effective technical standards, and incorporate payment mechanisms.

    Numerous other mechanisms, such as incubators and central hubs, could support the

    development of ecosystems for m-ARD apps.

  • 9

    Some m-ARD apps were achieving scalability, replicability, and sustainability.

    Despite numerous challenges, a number of m-ARD apps were doing well, with a

    good equilibrium of cost, marketing, and pricing strategies.

    Commercial m-ARD apps needed to improve or enlarge their services in response to

    user needs and ensure that they provided enough value to produce sustainable

    demand and revenues—increased users’ willingness to pay and overcoming ability to

    pay issues even at low economies of scale.

    Ramaraju et al (2011) studied about ICT in agriculture. ICT in agriculture, an emerging

    field concentrated on the improvement of agriculture in India. It called for application of

    advanced ways to use ICT in the field of agriculture. The basic problems in adopting ICT by

    farmers were ICT illiteracy, availability of relevant and localized contents in their respective

    languages, reasonable and easy availability and other issues such as awareness and

    willingness for adoption of new technologies etc. The study was carried out to develop an

    understanding of the agricultural related ICT needs and problems tackled in using ICT by the

    farmer’s in numerous agro and socio-economic situations; with emphasis on the small and

    marginal farmers. A primary survey was piloted using structured Schedules / Questionnaires,

    Focus Group Debates and Participatory Rural Evaluation. Overall 26 ICT initiatives in

    agriculture was studied, covering 1381 agrarians in 57 designated sample villages in 12 states

    of India to elicit the need felt by farmers, prioritize their perceptions and fetch out the issues

    involved in the development of ideal ICT applications for agriculture. The research

    confirmed that the most common information gadget possessed and accessed by the farmers is

    the Mobile Phone (82percent) followed by Television (73percent) and the Newspaper

    (67percent). Most of the Indian farmers had mobile phones and they were also attracted to use

    their mobiles for retrieving information. Farmers found it more suitable with voice based

    advices/information, as they opined that they could discuss their queries while

    communicating with experts in their own language.

    Yadav et al (2011) assessed the impact of ICT – enabled Knowledge Sharing Agri-

    portals in Uttarakhand. They concluded that it was argued that Information and

    Communication Technologies (ICT) could lead to development in developing countries.

    Because of this, developing countries have been rushing to implement ambitious ICT projects

    in rural areas through the direct-indirect regulation of organizations such as, the World Bank,

    United Nations (UN) and other donor/local agencies. The main focus of the involvements had

    been the employment of these ICT projects, rather than understanding their impacts at the

    recipient level. This deficiency of understanding had led to many failures of ICT projects

    reported in the literature. The analytical research design was used to conduct the

    investigation. Two Agri portals viz. Agropedia and aAQUA were designated by survey

    method. Interview Schedule, Impact assessment index and opinionnaire were established to

  • 10

    gather data from the farmers. Findings of the study discovered that majority of farmers were

    medium aged, educated up to Intermediate, with primary occupation as farming, general

    caste, medium family income, with majority of male, had nuclear family and medium family

    size, obsessed medium level of communication media, high level of agricultural apparatus,

    average household possession, medium level of social participation, and contact fellow

    farmers for agricultural information. Television was the most widely accessed media,

    majority had low farming experience, medium animal possession, produce 2-3 crops a year,

    all of them were aware of the Agri-portals’, majority of them visited the selected Agri-portals

    for market information on periodic basis, shared the information provided through both the

    Agri-portals with neighbors, satisfied with Agri-portals’ references, gained medium

    knowledge and utilized to medium extent. Maximum number of farmers preached that

    uploaded data of Agropedia and aAQUA was moderately relevant, with high technical words,

    moderately valuable content, with suitable readability and had the opinion that internet was

    the best way to learn new things. Maximum farmers reported slightly positive changes in

    income, quality of produce, crop diversification due to Agropedia and aAQUA. The utmost

    important limitation identified by the farmers was least number of trainings.

    Gichamba and Lukandu (2012) suggested a model for designing m-agriculture

    applications for dairy farming. They concluded that Mobile technology could be applied in

    agriculture to improve the various processes that were involved between the production of

    produce in the farming. The presented M-Agriculture model offered a workable solution

    towards the design and implementation of mobile applications in dairy farming. From the

    research, it was marked that most of the areas with inadequacies could be solved using mobile

    technology. The designed model could be used by software developers to create mobile

    applications that were focused on dairy farming and to implement the numerous business

    processes involved in that agrarian sector. The model could also be adopted by policy

    organizations and government and researchers as well. Further work might be done to test the

    model in other areas of agriculture, e.g. crop farming.

    Saha et al (2012) developed m-Sahayak- the innovative android based application for

    real-time assistance in Indian agriculture and health sectors. Mobile or smart phones (Android

    based) were becoming a vital device for all people irrespective of the age and literacy. In

    India, mobile technology had released a paradigm shift in the communication medium to

    reach out to the common people. Extension of mobile-phone based any-time, any-where

    scientific expert advice to the farmers was a possibility in India, i.e., information was

    available earlier for electronic processing, and communication had merged with Information

    Technology to create ICT impacts as a whole. ICT enabled environment was becoming a day-

    to-day reality everywhere in India. Tele-health allowed health care professionals to diagnose

    and treat patients in remote locations using ICT. The application took care of certain problems

  • 11

    in agriculture and health care by simultaneously capturing data and directing them to a

    specified server. Agricultural Scientists or doctors can view or listen to this information and

    deliver proper solutions, accordingly. The development was tested satisfactorily.

    Lomotey et al (2013) developed MobiCrop: supporting crop farmers with a cloud-

    enabled mobile application. Mobile technology was increasingly being adopted in the

    agricultural space as a measure to assist farmers in decision. The MobiCrop project was

    started by the scholars from the College of Agriculture at the University of Saskatchewan,

    Canada. The aim of the project was to enable farmers to have easy access to up to date

    information on pesticides and further make decisions on which pesticides to apply, how to

    and when to apply them, and so on. Due to its complexity, MobiCrop was designed as a

    mobile distributed system that followed a three-layered deployment. Since the data that was

    being pushed to the mobile resided on the database server, caching procedure on the mobile

    had been proposed to support offline convenience of pesticide information.

    Prasad et al (2013) developed AgroMobile: a cloud-based framework for

    agriculturists on mobile platform. They concluded that use of mobile devices was very

    common, including the agrarians. Introduction of ICT had seen a keen role in daily life of

    farmers. Previously, farmers used to depend on clouds for rains were looking into the Cloud

    Computing (CC) for their resolutions towards tilling of better crops in modern agricultural

    world. The conventional methods used by the farmers, particularly in India, were very slow

    and untrustworthy. The crops were spoiled in field itself due to disease attacks and lack of

    information resources. This loss grew more than 40 percent in total annually. They proposed

    various ways in which a farmer could utilize Mobile Cloud Computing (MCC) on their

    handsets using application called AgroMobile, to assist them for relatively better cultivation

    and marketing.

    Razaque et al (2013) concluded on the use of mobile phone among farmers for

    agriculture development. Mobile phone usage in world was playing a dynamic role for the

    enhancement of farmers business towards agriculture. Communication through mobile phones

    was considered very significant in enhancing farmers’ access to better understand agricultural

    market situation. Farming communities cherished mobile phone as easy, fast and convenient

    way to communicate and get prompt answers of respective problems. The mobile phone had

    created an opportunity for the farmers particularly to get the information about marketing and

    weather. The use of mobile phone also kept them aware for weather forecast for agriculture

    input application which might be exaggerated by unfore seen dis-asters as communicated by

    metrological department. This device had given new direction and approach to farmers to

    communicate directly and share about current advances with each other. The studies disclosed

    that mobile phones have saved energy, time of farmers and ultimately improved their income.

  • 12

    Mobile phones have provided a chance to the farmers to communicate directly with market

    brokers and customers for selling their product at good paddy.

    Bhalchandra et al (2014) studied role of information technology in agriculture

    marketing and it's scope in Pune district. Information technology (IT), one of the modern

    human made technologies is prompting life, training, research and management pattern etc.

    Information Technology is utilized to develop life, agricultural research, education and

    extension to improve quality. The study took place in Pune District, Maharashtra to study

    impact of IT on farmers and to find out holes in the existing information system. It also

    focused on how this market information could be used for planning, production and holding

    stocks. The sample size was 50 including rural and semi urban population. The Major

    findings were, the farmers in the age group of 30–50 are using IT for their crop production.

    Agricultural marketing was male dominated field. Graduates and post graduates were using

    IT effectively. IT could be the best mean not only to develop agricultural extension but also to

    expand agriculture research in Pune India. The paper focused on the scope of IT in Pune

    District only.

    Ghogare and Monga (2015) discussed the introduction and figuration of E-agriculture

    applications. E-Agriculture is an emerging field focusing on the upgrading of rural and

    agricultural development through advanced information and communication processes. Some

    issues with agriculture and rural development were discussed. The main aim of their research

    was to reach farmers for their alertness, usage and perception in e-Agriculture. E-Agriculture

    is a platform for supporting marketing of products related to agriculture. The work on E-

    agriculture transported the information regarding agricultural details to farmers via message

    and hereby projected to switch over E-agriculture. The details such as daily alert, seasonal

    alert and other additional details could be sent to farmers. The daily alert could be sent to all

    farmers whereas seasonal alert could be sent to farmers only for selected farmers based on

    clustering result. Finally the other or additional detail which was proclaimed by agriculture

    could be sent to all farmers. Experimental result showed better results when compared with

    the existing work.

    Mohan (2015) stated the importance of mobile in dissemination of agriculture

    information among Indian farmers. Applications such as text and Multimedia Messaging

    Service (MMS) and Voice Stream, are used to disseminate information to the farming

    community. These applications are customized based on subjectivity such as literacy, usage

    pattern, social acceptance, domain specific and lifestyle of rural farmers in various states.

    These practices were nothing but innovative business models, which were adopted based on

    user per capita. Most of the initiatives were push-based methods providing opportunity to fill

    the knowledge transfer to fulfil the users’ basic needs. The mobile-based projects for farmers

    had objectives, which benefited farmers and such projects were based on development

  • 13

    agenda. These objectives suit market (input, output) paddy’s, availability status, agricultural

    extension, social connectivity and financial-support systems. ICT initiatives have come a long

    way in the last two decades in India in the Agriculture domain. The penetration of mobile

    phone in the rural sector had opened up vast possibilities. Initially mobile was used as the

    communication medium by rural sector but now it had been used as information

    dissemination tool. This tool could also be used in the area of agriculture information, rural

    health and rural education sector. There was a greater need to identify the underlying factors

    that supported the adoption of mobile-based services in the rural sector so that a more focused

    approach could be taken by the government agencies as well Private sector.

    Sharma et al (2015) developed E-Agro Android Application. E-Agro offered

    expertise service to farmers regarding cultivation of crops, pricing, fertilizers and diseases etc.

    and even suggestions regarding modern techniques for cultivation, usage of bio-fertilizers.

    Their main aim was concentrated on bringing the modern agricultural techniques to the

    remote farmers. The persistently increasing importance and application of Information

    Technologies in Agriculture had given birth to a new field called E-Agro, which focused on

    improving agricultural and rural development through a variety of technologies. The user

    interface of the application is in English.

    Caine et al (2016) concluded on mobile applications for weather and climate

    information: their use and potential for smallholder farmers. Mobile phones are gradually

    being used to provide smallholder farmers with agricultural related information. There is

    currently great curiosity in their scope to transfer climate and weather information. A

    literature review, interviews with experts and 15 case study reviews were conducted. This

    focused principally on Sub Saharan Africa but included examples from India also. The study

    identified areas of substantial potential which include: the use of gradually available mobile

    data connections to ensure locally relevant content was available to farmers in well-timed

    fashion; development of decision making tools to enable farmers to interpret information for

    their own contexts and management options.

    Ghanshyam et al (2016) developed agronomy-an android application regarding

    farmer utility. The availability of agricultural information directly to farmers by single tap of

    their finger without him being dependent on anyone will enable the farmers to take superior

    decisions shortly. This will not only substitute greater productivity but will improve a

    farmer’s life reducing stress and also instilling enthusiasm to learn new technology which is

    essential in this era of Digital Revolution. Some other areas whose information is regularly

    required by farmers are about seeds and fertilizers, the loan schemes, etc. The application was

    offered in 2 Indian regional languages but agricultural data from web services was only in

    English.

  • CHAPTER III

    MATERIALS AND METHODS

    The software developer needs to consider the entire user requirements and must

    follow proper software engineering approach while developing software/app. If systematic

    approach is not followed the software development will become quite unmanageable task and

    it might also fail to fulfil the needs of users. The Software development life cycle (SDLC) is a

    prefect way out. It provides systematic outline for software development by dividing task into

    various phases. Each phase has a beginning, an end, a series of specific activities and

    deliverables. So there is a proper flow of activities and progress of task is clearly visible. For

    development of aforesaid application, the software engineering approach has been used which

    is as under:

    3.1 Software Development Life Cycle (SDLC)

    The SDLC is a process that consists of a detailed plan describing how to develop,

    maintain, replace and alter or enhance specific software. The life cycle defines a procedure for

    improving the quality of software and the overall development process. SDLC consists of all

    the steps of software starting from its inception to its implementation. The SDLC is a

    methodology that forms the outline for planning and controlling the creation, testing and

    delivery of a software. The SDLC is a sequence of phases that provide a model for the

    development and lifecycle management of an application. The intent of a SDLC process is to

    produce a product that is effective, fulfil users’ requirement and at the same time of high

    quality. Once an application is formed, the SDLC maps the proper deployment and

    maintenance of application. SDLC defines the chief stages of development life cycle which

    are used by analyst, system designers and developers to plan and execute sequence of events

    required to achieve a quality software or system at scheduled time and estimated cost. The

    typical SDLC is composed of following phases:

    3.1.1 System analysis

    3.1.2 Feasibility analysis

    3.1.3 Requirement analysis

    3.1.4 System Design

    3.1.5 Coding

    3.1.6 Testing

    3.1.7 Implementation

    3.1.8 Maintenance

  • 15

    3.1.1 System Analysis

    This is the first and very important phase of SDLC. This phase is critical to the

    success of the software. In this phase the needs of user for developing new software are

    considered and also problems in existing system are identified. Requirement gathering is very

    brainstorming phase as this is a brief investigation of the system under consideration and

    gives a clear picture of expectations of user from new software. The initial system study

    involves the planning of a system proposal which lists the definition of problem, objectives of

    the study and terms of reference for study, Constraints, Expected benefits of the new system

    etc. The system proposal is prepared by the system analyst and places it before the user for

    approval. If user accepts the proposal the cycle proceeds to the next stage. The user may also

    reject the proposal or request for some modifications in the proposal. The system study phase

    passes through the following steps:

    I. Existing system: A number of mobile based information systems exist in India that

    is used to disseminate knowledge from technical institutes or researchers to non-

    technical users like farmers. These system give farmers information about market

    prices, weather, type of fertilizers, crop diseases etc. Still farmers are not able to get

    full benefit from them. One reason is language barrier. As most of the information

    system are in English and most rural agriculturists in India either can’t

    communicate in English or hesitate to do so. So communication gap is there. Also

    in India weather plays important role in agriculture. If farming activities are not

    performed by considering weather conditions exploitation of resources is there. To

    the best of author’s knowledge there is no such mobile based scheduling system

    that considers weather conditions for reminding farmers about various farming

    activities in regional language (Punjabi).

    II. Proposed system: The aforesaid app is android based mobile app. It is mobile based

    scheduling system gives farmers notification about various farming activities of

    two crops wheat and paddy in regional language Punjabi. This overcomes language

    barrier and farmers can get full benefit from it. This app also considers weather

    conditions while notifying farmers and leads to sustainable farming.

    The major operations which are performed by the aforesaid mobile based scheduling system

    are:

    The app gives notifications of farming activities of two crops that is wheat and paddy.

    Each user has to first register himself and only then he can access the application.

    Register user can turn on the notifications for particular crop by entering the date of

    sowing of crop.

    Register user can turn off the notifications any time.

  • 16

    Registered user can also view upcoming activities of any month in advance.

    The app also provides basic information about the type of seeds recommended by

    PAU, fertilizers.

    The user interface of app is in regional language Punjabi.

    Weather is displayed in regional language Punjabi to improve the understandability of

    farmers of weather conditions.

    The administrator can view, update or delete information anytime through admin app.

    Administrator can also enter new information.

    The advantages of proposed system are:

    This mobile based app has simple easy to use user interface and farmers can operate

    it easily.

    The app provides notification to user by considering weather conditions of his place.

    This helps in sustainable use of resources.

    Improves the productivity of crops by assisting farmer in farming activities.

    Boon in today’s hectic life schedule.

    Detailed information about type of seeds, fertilizers.

    Easily accessed by users as smartphones are used by all these days.

    Helps in sustainable use of resources.

    3.1.2 Feasibility Analysis

    Feasibility analysis is used to analyze the strengths and weaknesses of a proposed

    project, in order to improve a project and accomplish desired results. The nature and

    components of feasibility studies depend largely on the areas in which examined projects are

    implemented. Feasibility is defined as the practical level to which a project can be

    accomplished successfully. To estimate feasibility, a feasibility study is executed, which

    decides whether the solution considered is practical and feasible in the software. Information

    such as resource accessibility, cost approximation for software development, benefits of the

    software to the association after it is developed and cost to be acquired on its maintenance are

    measured during the feasibility study. The objective of the feasibility study is to establish the

    motives for developing the software that is adequate to users, flexible to change and

    conformable to established standards. Feasibility Analysis contains the following points:

    Study the organizational system such as users, policies, functions and objectives.

    Problem with the present system like its redundancies, inconstancies and other

    inadequacies in functionality and performance which are evaluated by interviewing

    users of the system.

    After analyzing the present system, identifying main problems that are to be solved.

    Identify different processes for solving problems.

  • 17

    Different types of automation or computerization are considered to solve the existing

    problems and finding possible alternatives.

    On the basis of advantages and disadvantages of each alternative, feasibility study is

    analyzed to come out with the best alternative.

    The result is feasibility report for the project to be implemented.

    Various types of feasibility that are commonly considered include technical feasibility,

    operational feasibility and economic feasibility.

    3.1.2.1 Technology and System Feasibility

    The technical aspect discovers—if the project feasibility is within the boundaries of

    current technology and does the technology exist at all, or if it is obtainable within given

    resource constraints (i.e., budget, schedule). In the technical feasibility, the system experts

    look between the necessities of the organization, such as,

    Input device which can enter a huge quantity of data in the effective time

    Output devices which can produce output in a bulk in an effective time

    The choice of processing unit depends upon the type of processing prerequisite in the

    organization.

    Determine whether the technology used is stable and established.

    Ease of learning

    The scheduling app is android based app which is very stable and established technology.

    3.1.2.2 Operational Feasibility

    Operational feasibility is a measure of how healthy a proposed system resolves the

    problems, and takes benefit of the opportunities recognized during scope definition and how it

    accomplishes the requirements recognized in the requirements analysis phase of system

    development. Operational feasibility assesses the willingness of the organization to support

    the proposed system. Operational feasibility is dependent on human resources available for

    the project and involves projecting whether the system will be utilized if it is developed and

    implemented.

    As the user interface of app is in regional language Punjabi, it removes language

    barrier and farmers will be more interested in using this app.

    3.1.2.3 Economic feasibility

    Economic analysis could also be stated as cost/benefit analysis. It is the most

    regularly used method for evaluating the usefulness of a new system. In economic analysis

    the procedure is to regulate the benefits and savings that are expected from an aspirant system

    and compare them with costs. If profits compensate costs, then the decision is made to design

    and implement the system.

  • 18

    The scheduling app improves the economic conditions of users (farmers) by

    improving productivity of the crops. So it is economical to use this app as cost of smartphones

    and internet access is very low these days.

    3.1.3 Requirement Analysis

    Requirements analysis comprises defining users’ needs and objectives in the

    framework of planned customer use, environments, and recognized system characteristics to

    determine necessities for system functions. Preceding analyses are studied and restructured,

    refining mission and environment definitions to uphold system definition. The purpose of

    Requirements Analysis is to:

    Enhance customer objectives and requirements.

    Define primary performance objectives and refine them into requirements;

    Identify and outline constraints that bound solutions.

    Define functional and performance requirements based on customer provided

    measures of effectiveness.

    3.1.3.1 Steps in the Requirement Analysis Process

    i. Fix system boundaries

    At this stage, scope of the proposed system is decided. As the scheduling app is in

    regional language Punjabi so its scope are Punjabi farmers.

    ii. Identify the customer

    Next step in requirement analysis is to identify the ―users‖ of the software. This app

    is designed for farmers so its main users are farmers who register themselves with the

    app.

    iii. Requirement gathering

    In the requirement gathering stage, the information about various farming activities

    and varieties of seeds, have been collected from PAU published books – Package of

    Practices for the crops of Punjab and monthly magazine of PAU – Progressive

    farming.

    iv. Requirement Analysis Process

    In this proposed system once all the user requirements have been gathered a

    structured analysis and modelling of the requirements has done.

    v. Requirement Specification

    Requirement specification assists as an initial point for software and database design.

    It terms the functions and performance of the system and the operational and user

    interface constraints that will administrates system development. Software

    Requirement Specification is a document which involves all the product requirements

    to be designed and developed.

  • 19

    3.1.4 System Design

    Based on the user requirements and the thorough analysis of a new system, the new

    system must be designed. This is the stage of system designing. It is the most critical phase in

    the development of a system. The rational system design arrived at as a result of system

    analysis and is transformed into physical system design. In the design phase the SDLC

    procedure continues to move from the what questions of the analysis phase to the how. The

    logical design shaped during the analysis is revolved into a physical design - a detailed

    description of what is required to solve original problem. Input, output, codification schemes

    databases, forms and processing specifications are drawn up in detail. In the design stage, the

    language to be used for programming and the hardware and software platform in which the

    new system will run are also decided. There are several tools and methods used for describing

    the system design of the system. These tools and procedures are: Flowchart, Data flow

    diagram (DFD), Data dictionary, Structured English, Decision table and Decision tree.

    3.1.4.1 Data Flow Diagram

    Data Flow Diagram (DFD) is a two-dimensional diagram that describes how data is

    processed and transmitted in a system. The graphical depiction recognizes each source of data

    and how it interacts with other data sources to reach a mutual output. In order to draft a data

    flow diagram one must

    Identify external inputs and outputs

    Determine how the inputs and outputs relate to each other

    Explain with graphics how these connections relate and what they result in.

    Role of DFD:

    It is a documentation support which is understood by both programmers and non-

    programmers. As DFD postulates only what processes are accomplished not how

    they are performed.

    A physical DFD postulates where the data flows and who processes the data.

    It permits analyst to isolate areas of interest in the organization and study them by

    examining the data that enter the process and viewing how they are altered when

    they leave.

    i. DFD for users

    The thorough proposed DFD for users is shown in Fig 3.1. This DFD postulates those

    functions which the user can perform and these functions are:

    1. Registration for a new account.

    2. Login into app through registered account.

    3. View weather information in Punjabi.

  • 20

    4. View information about seeds of two crops, wheat and paddy, varieties of seeds

    recommended by PAU.

    5. View monthly schedule of wheat and paddy.

    6. Set notification for farming activities.

    Fig 3.1 DFD for users

    ii. DFD for administrator

    The detailed DFD of admin app is shown in Fig 3.2. DFD postulates the functions

    which admin can perform and these are given below:

    1. Add new information

    2. View information of app

    3. Update existing information

    4. Delete existing information

    Fig 3.2 DFD for admin

  • 21

    3.1.4.2 Design of database tables

    Table Name: farmer

    Description: The Table 3.1 contains login and registration information of the users. This

    table has fields like f_id, f_name, f_password, f_conpass and f_contact which stores farmer’s

    id, farmer’s name, password, confirm password and farmer’s contact number respectively.

    When user registers himself, the information of the user is stored in this table. When user tries

    to login by entering his contact number and password, their value is checked against entries in

    this table and if values get matched then user can successfully login into app.

    Table 3.1: Structure of farmer table

    Table Name: admin

    Description: The Table 3.2 contains login information of administrator. This table has only

    one user that administrates the app.

    Table 3.2: Structure of admin table

    Table Name: wheatOct

    Description: The Table 3.3 contains information about monthly schedule of wheat crop of

    October month. It has two fields notId and not. Similar tables having same structure, as that of

    wheatOct table, are made for each month to store information of that particular month.

    Table 3.3: Structure of wheatOct table

  • 22

    Table Name: wheatseed

    Description: The Table 3.4 contains information about the varieties of seed of wheat crop. It

    has two fields seedId and seed. Similar table having same structure is made for paddy crop.

    Table 3.4: Structure of wheatseed table

    3.1.4.3 Strings.xml file

    Some information is also written in string.xml file of android studio. Format of

    string.xml file is:

    text string

    Where attribute ―name‖ specifies the unique name of string by which string is identified and

    ―text string‖ is data stored under that name.

    Fig 3.3 String.xml file

    3.1.5 Coding

    The system design needs to be employed in order to make it a workable system. This

    leads to the coding of design into computer language, i.e., programming language. This is also

    known as the programming phase in which the programmer translates the program

    specifications into computer instructions, which are known as programs. It is a significant

    stage where the defined procedures are transformed into control provisions by the help of a

    computer language. The programs synchronize the data movements and control the complete

  • 23

    process in a system. A well transcribed code reduces the testing and maintenance effort. It is

    usually felt that the programs must be segmental in nature. This helps in fast development,

    maintenance and future variations, if required.

    The scheduling app is an android based system. For coding Android Studio Integrated

    development environment is used in whose backend core Java language is used and database

    is created through MySQL server.

    3.1.6 Testing

    Testing is the procedure of evaluating a system or its module(s) with the intent to find

    whether it fulfills the identified requirements or not. In additional words, testing is executing

    a system in order to recognize any gaps, errors, or missing necessities in contrary to the actual

    requirements. Beforehand actually implementing the new system into actions, a trial run of

    the system is done eliminating all the bugs, if any. It is a vital phase of a successful system.

    After organizing the entire programs of the system, a test plan should be developed and run

    on a given set of test data. The output of the test run should meet the expected results. The

    succeeding test run are carried out for current system:

    3.1.6.1 Unit testing

    3.1.6.2 Integration testing

    3.1.6.3 Program testing

    3.1.6.4 System testing

    3.1.6.1 Unit testing

    The objective of unit testing is to segregate each part of the program and show that

    individual parts are accurate in terms of requirements and functionality.

    In the current app, each module interface has been tested to ensure its proper functioning.

    3.1.6.2 Integration testing

    After unit testing integration testing that is the testing of collective parts of an

    application is done to govern if they function properly that is to ensure that no error is there in

    flow of information from one module to another.

    3.1.6.3 Program testing

    When the programs have been coded and compiled and carried to working conditions,

    they must be independently tested with the equipped test data. All verification and validation

    be checked and any disagreeable trend must be noted and debugged.

    3.1.6.4 System testing

    Finally the whole system is tested jointly to ensure that it fulfills user requirements.

    At this stage the test is done on real data. The results are studied to ensure that app is error

    free. If any error is faced it is corrected accordingly and further tested for expected output.

    The aforesaid app is tested for proper functioning as a whole and it gave desired

    result and satisfies user requirement.

  • 24

    3.1.7 Implementation

    After having the user approval of the new system developed, the implementation

    phase begins. Implementation is the phase of a project during which theory is turned into

    practice. The major steps involved in this phase are:

    Attainment and Installation of Hardware and Software

    Conversion

    User Training

    Documentation

    The scheduling app can be installed on any android based smartphone and its user

    interface is so easy to operate that no user training is required.

    3.1.8 Maintenance

    Maintenance is essential to eradicate errors in the system during its working life and

    to adjust the system to any deviations in its working environments. It must meet the

    possibility of any future enhancement, future functionality and any other extra functional

    features to cope up with the latest future needs. It has been seen that there are always few

    errors found in the systems that must be noted and modified. It also means timely review of

    the system. If a major alteration to a system is needed, a new project may need to be set up to

    carry out the change. The new project will then go through all the above life cycle phases.

    3.2 Proposed Software Tools

    In the Requirement Analysis phase the requirements of the anticipated system are

    identified and then converted into system design. In the design stage, the programming

    language and the hardware and software platform in which the new system will run are also

    decided. Following are the software tools proposed for the system development:

    3.2.1 Android

    Android is a mobile operating system (OS) based on the Linux kernel and developed

    by Google. With a user interface based on direct manipulation, Android is designed primarily

    for touchscreen mobile devices such as smartphones and tablet computers, with specialized

    user interfaces for televisions (Android TV), cars (Android Auto), and wrist watches

    (Android Wear). Android's default user interface is based on direct manipulation, using touch

    inputs, that loosely correspond to real-world actions, like swiping, tapping, pinching, and

    reverse pinching to manipulate on-screen objects, and a virtual keyboard. The response to

    user input is designed to be immediate and provides a fluid touch interface, often using the

    vibration capabilities of the device to provide hepatic feedback to the user. Internal hardware

    such as accelerometers, gyroscopes and proximity sensors are used by some applications to

    respond to additional user actions. Android comes with an Android market which is an online

  • 25

    software store. It allows Android users to select, and download applications developed by

    third party developers and use them.

    Android is open source and anyone can use it to build applications. Android provides

    a rich application framework that allows one to build innovative apps and games for mobile

    devices in a Java language environment. Android apps are built as a combination of distinct

    components that can be invoked individually. For instance, an individual activity provides a

    single screen for a user interface, and a service independently performs work in the

    background. From one component one can start another component using an intent. One can

    even start a component in a different app, such as an activity in a maps app to show an

    address. This model provides multiple entry points for a single app and allows any app to

    behave as a user's "default" for an action that other apps may invoke.

    3.2.1.1 Application

    Android apps are written in the Java programming language. The Android Software

    development Kit(SDK) tools compile code—along with any data and resource files—into an

    Android package (APK), which is an archive file with an .apk suffix. One APK file contains

    all the contents of an Android app and is the file that Android-powered devices use to install

    the app. Once installed on a device, each Android app lives in its own security sandbox:

    The Android operating system is a multi-user Linux system in which each app is a

    different user.

    By default, the system assigns each app a unique Linux user Identity(ID). The system

    sets permissions for all the files in an app so that only the user ID assigned to that app

    can access them.

    Each process has its own virtual machine, so an app's code runs in isolation from

    other apps.

    By default, every app runs in its own Linux process. Android starts the process when

    any of the app's components need to be executed, then shuts down the process when

    it's no longer needed or when the system must recover memory for other apps.

    In this way, the Android system implements the principle of least privilege. That is, each app,

    by default, has access only to the components that it requires to do its work and no more. This

    creates a very secure environment in which an app cannot access parts of the system for

    which it is not given permission.

    i. App Components

    App components are the essential building blocks of an Android app. Each

    component is a different point through which the system can enter your app. Not all

    components are actual entry points for the user and some depend on each other, but each one

    exists as its own entity and plays a specific role—each one is a unique building block that

  • 26

    helps define app's overall behavior. There are four different types of app components. Each

    type serves a distinct purpose and has a distinct lifecycle that defines how the component is

    created and destroyed. The components are:

    Activities: An activity represents a single screen with a user interface. For example,

    an email app might have one activity that shows a list of new emails, another activity

    to compose an email, and another activity for reading emails. Although the activities

    work together to form a cohesive user experience in the email app, each one is

    independent of the others. As such, a different app can start any one of these activities

    (if the email app allows it). For example, a camera app can start the activity in the

    email app that composes new mail, in order for the user to share a picture.

    Fig 3.4 Android Cycle

    Android system initiates its program with in an Activity starting with a call on onCreate()

    callback method. There is a sequence of callback methods that start up an activity and a

    sequence of callback methods that tear down an activity.

    Services: A service is a component that runs in the background to perform long-

    running operations or to perform work for remote processes. A service does not

    provide a user interface. For example, a service might play music in the background

    while the user is in a different app, or it might fetch data over the network without

  • 27

    blocking user interaction with an activity. Another component, such as an activity,

    can start the service and let it run or bind to it in order to interact with it.

    Content Providers: A content provider manages a shared set of app data. One can

    store the data in the file system, an SQLite database, on the web, or any other

    persistent storage location app can access. Through the content provider, other apps

    can query or even modify the data (if the content provider allows it). Content

    providers are also useful for reading and writing data that is private to app and not

    shared. For example, the Note Pad sample app uses a content provider to save notes.

    A content provider is implemented as a subclass of ContentProvider and must

    implement a standard set of APIs that enable other apps to perform transactions.

    Broadcast Receivers: A broadcast receiver is a component that responds to system-

    wide broadcast announcements. Many broadcasts originate from the system—for

    example, a broadcast announcing that the screen has turned off, the battery is low, or

    a picture was captured. Apps can also initiate broadcasts—for example, to let other

    apps know that some data has been downloaded to the device and is available for

    them to use. Although broadcast receivers don't display a user interface, they may

    create a status bar notification to alert the user when a broadcast event occurs. More

    commonly, though, a broadcast receiver is just a "gateway" to other components and

    is intended to do a very minimal amount of work. For instance, it might initiate a

    service to perform some work based on the event. A broadcast receiver is

    implemented as a subclass of BroadcastReceiver and each broadcast is delivered as an

    Intent object.

    ii. Activating Components

    Three of the four component types—activities, services, and broadcast receivers—are

    activated by an asynchronous message called an intent. Intents bind individual components to

    each other at runtime, whether the component belongs to app or another.

    Intent is created with an Intent object, which defines a message to activate either a

    specific component or a specific type of component—intent can be either explicit or implicit,

    respectively. For activities and services, intent defines the action to perform (for example, to

    "view" or "send" something) and may specify the Uniform Resource Locator (URI) of the

    data to act on (among other things that the component being started might need to know). For

    example, intent might convey a request for an activity to show an image or to open a web

    page. In some cases, one can start an activity to receive a result, in which case, the activity

    also returns the result in an Intent. For broadcast receivers, the intent simply defines the

    announcement being broadcast.

    The other component type, content provider, is not activated by intents. Rather, it is

    activated when targeted by a request from a ContentResolver. The content resolver handles all

  • 28

    direct transactions with the content provider so that the component that's performing

    transactions with the provider doesn't need to and instead calls methods on the

    ContentResolver object. This leaves a layer of abstraction between the content provider and

    the component requesting information (for security). There are separate methods for

    activating each type of component:

    One can start an activity by passing an Intent to startActivity() or

    startActivityForResult() (when you want the activity to return a result).

    One can start a service (or give new instructions to an ongoing service) by passing an

    Intent to startService(). Or one can bind to the service by passing an Intent to

    bindService().

    One can initiate a broadcast by passing an Intent to methods like sendBroadcast(),

    sendOrderedBroadcast(), or sendStickyBroadcast().

    One can perform a query to a content provider by calling query() on a

    ContentResolver.

    iii. The Manifest File

    Before the Android system can start an app component, the system must know that the

    component exists by reading the app's AndroidManifest.xml file (the "manifest" file). App

    must declare all its components in this file, which must be at the root of the app project

    directory. The manifest does a number of things in addition to declaring the app's

    components, such as:

    Identify any user permissions the app requires, such as Internet access or read-access

    to the user's contacts.

    Declare the minimum Application Programming Interface (API) Level required by

    the app, based on which APIs the app uses.

    Declare hardware and software features used or required by the app, such as a

    camera, bluetooth services, or a multitouch screen.

    API libraries the app needs to be linked against (other than the Android framework

    APIs), such as the Google Maps library.

    iv. App Resources

    An Android app is composed of more than just code—it requires resources that are

    separate from the source code, such as images, audio files, and anything relating to the visual

    presentation of the app. For example, one should define animations, menus, styles, colors, and

    the layout of activity user interfaces with XML (Xtensible Markup Language) files. Using

    app resources makes it easy to update various characteristics of app without modifying code

    and—by providing sets of alternative resources. For every resource that one include in

  • 29

    Android project, the SDK build tools define a unique integer ID, which one can use to

    reference the resource from app code or from other resources defined in XML.

    One of the most important aspects of providing resources separate from source code

    is the ability for one to provide alternative resources for different device configurations. For

    example, by defining user Interface(UI) strings in XML, one can translate the strings into

    other languages and save those strings in separate files. Then, based on a language qualifier

    that one append to the resource directory's name (such as res/values-fr/ for French string

    values) and the user's language setting, the Android system applies the appropriate language

    strings to UI.

    3.2.1.2 User Interface (UI)

    All user interface elements in an Android app are built using View and ViewGroup

    objects. A View is an object that draws something on the screen that the user can interact

    with. A ViewGroup is an object that holds other View (and ViewGroup) objects in order to

    define the layout of the interface. Android provides a collection of both View and ViewGroup

    subclasses that offer common input controls (such as buttons and text fields) and various

    layout models.

    i. Layout

    A layout defines the visual structure for a user interface, such as the UI for an activity

    or app widget. One can declare a layout in two ways:

    Declare UI elements in XML: Android provides a straightforward XML vocabulary

    that corresponds to the View classes and subclasses, such as those for widgets and

    layouts.

    Instantiate layout elements at runtime: Application can create View and ViewGroup

    objects (and manipulate their properties) programmatically.

    The Android framework gives one the flexibility to use either or both of these methods for

    declaring and managing application's UI. For example, one could declare application's default

    layouts in XML, including the screen elements that will appear in them and their properties

    and then add code in application that would modify the state of the screen objects, including

    those declared in XML, at run time.

    The advantage to declaring UI in XML is that it enables one to better sepa