Sie sind auf Seite 1von 64

ADAMA SCIENCE AND TECHNOLOGY UNIVERSITY

SCHOOL OF ELECTRICAL ENGINEERING AND COMPUTING


DEPARTMENT OF COMPUTING
SOFTWARE ENGINEERING

PROJECT TITLE: - Farmer unions web-based system


GROUP MEMBERS
NAME ID
1.Tesfahun Biruk a/ur4899/09
2.Esrael Wotera a/4704/09
3.Andualem Yismashewa r/0175/08
4.Yosef Mubarak a/ur4181/09
5.Abraham Awoke a/ur4120/09
Table of content

Contents
Chapter one ............................................................................................................................................ 5
1.1 Introduction................................................................................................................................... 5
1.2 Background information ................................................................................................................ 6
1.3 Statement of the problem.............................................................................................................. 6
1.4 General Objective .......................................................................................................................... 7
1.4.1 Specific Objective .................................................................................................................... 7
1.5 Feasibility Study ............................................................................................................................. 7
1.5.1 Economical Feasibility ............................................................................................................. 7
1.5.2 Operational Feasibility ............................................................................................................ 7
1.5.3 Technical Feasibility ................................................................................................................ 7
1.6 Scope and Limitation ..................................................................................................................... 7
1.6.1 Scope ...................................................................................................................................... 7
1.6.2 limitation ................................................................................................................................ 8
1.7 Methodology ................................................................................................................................. 8
Chapter 2 ................................................................................................................................................ 9
2. Description of the existing system ....................................................................................................... 9
2.1 Major function of the current system............................................................................................. 9
2.2 Users of current system ................................................................................................................. 9
2.3 Drawback of the current system .................................................................................................... 9
2.4 Business rule.................................................................................................................................. 9
Chapter 3 .............................................................................................................................................. 11
3. Proposed system ............................................................................................................................... 11
3.1 overview ...................................................................................................................................... 11
3.2 Functional Requirement............................................................................................................... 11
3.3 Non-Functional Requirement ..................................................................................................... 11
3.4 System model .............................................................................................................................. 12
3.4.1 Scenario ................................................................................................................................ 12
3.4.2 Use Case Model .................................................................................................................... 15
3.5 Object model ............................................................................................................................... 29
3.5.1 Data Dictionary ..................................................................................................................... 29
3.5.2 Class diagram ........................................................................................................................ 32
3.6 Dynamic model ............................................................................................................................ 33
3.6.1 Sequence Diagram ................................................................................................................ 33
3.6.3 Activity Diagram .................................................................................................................... 40
3.6.3 State Diagram ....................................................................................................................... 41
Chapter Four ......................................................................................................................................... 48
4.System design .................................................................................................................................... 48
4.1. Overview .................................................................................................................................... 48
4.1.1. Purpose of the system .......................................................................................................... 48
4.1.2. Design goal........................................................................................................................... 48
4.2 Proposed system architecture..................................................................................................... 51
4.2.1 System process ..................................................................................................................... 51
4.2.2 Subsystem decomposition..................................................................................................... 53
4.2.3 Hardware/software mapping ................................................................................................ 55
4.2.4. Persistent data management ............................................................................................... 56
4.2.5. Component diagram ............................................................................................................ 59
4.2.6 Deployment diagram............................................................................................................. 60
4.2.7. Database design ................................................................................................................... 62
4.2.8 Access control ....................................................................................................................... 62
4.2.9 Global control flow................................................................................................................ 63
4.2.10 Boundary condition ............................................................................................................. 64
Chapter one
1.1 Introduction
This web-based system that connects farmers, truck owners and customers in easy way by web-
based platforms. And the system mostly works in three ways
. the government will create unions and give them account.
. the farmers will get different information’s (current price, farm products that are produced in
the country etc.) from their union which is connected to other unions in the country.
. the truck owners will get delivery orders from the farmers to the union from the union to the
customers.
. the customer will order their product and they will give comment after using the products.
. the government will collect information’s about current status of productions and prices

1.2 Background information

Agriculture is the backbone of the Ethiopian economy. This particular sector determines the
growth of all other sectors and consequently, the whole national economy. On average, crop
production makes up 60 percent of the sector’s outputs, whereas livestock accounts for 27
percent, and other areas contribute 13 percent of the total agricultural value added.

Ethiopian agriculture is dominated by a subsistence, low input-low output (small scale farmers)
rainfed farming system. Small-scale farmers produce 94 percent of the food crops and 98 percent
of the coffee. The use of chemical fertilizer and improved seeds is quite limited. Low agricultural
productivity can be attributed to limited access by smallholder farmers to agricultural inputs,
financial services, improved production technologies, irrigation and agricultural markets;

The country has varied agro-climatic zones. The Government extension programmes lists these as:
areas of adequate rainfall; areas of moisture stress; and pastoral areas. Farmers traditionally classify
them as Dega (cool), Woina Dega COUNTRY ANALYSES: ETHIOPIA AND D. R. CONGO 37 (temperate)
and Qolla (low land; warm climate). This diversity makes it a favorable region for growing a variety of
crops (Desalegn Rahmato 2008). The country is endowed with one of the most biodiverse ecosystems
in the world. It has earned the name “the Water Tower of Eastern Africa” for having more than ten
rivers, each of which has irrigation potential. It also has the largest livestock population in Africa (est.
114 million), i.e. 2.5 per capita (MEDIC 1999). As regards to the agricultural suitability of the country’s
territory, some estimates indicate that more than 65 percent (78.9 million hectares) of the land is
fertile for agricultural purposes (Haile Kibret 1998).

1.3 Statement of the problem

Because of that farmers, customers, truck owners and government are not well organized and
connected there are many problems from production to marketing in the agriculture industry.
On the other side because of lack of information and machines in the farmers they don’t produce
full of the land potential.

Cost problem
Poor timing
Lack of information
Lack of communication and organization
1.4.1 General Objective Commented [E1]: Refer the template and rework it again

The general objective of this system is to develop a web based app that registers farmers in
different part of the country, then sells their product easily for customers (buyers). Also provides
items that are necessary for farmer’s land.

1.4.2 Specific Objective Commented [E2]: Refer the template and rework it again

In order with achieving the general objective the following specific objectives will be achieved:
 Study the existing system of farming system through the country
 Select appropriate system that solves the existing problem
 Gathering information’s for proposed system.
 Analyze gathered information.
 Designing the proposed system.
 Implement the system using the selected tools.
 Test the system.

1.5 Feasibility Study


1.5.1 Economical Feasibility
Therefore, the advantage of the system is it connects farmers, customers and truck owners and
make the production and marketing effective with low cost.

1.5.2 Operational Feasibility


 Process – Usually the main inputs from the users are simple and easy for customers who want
to buy. And in the truck union and farmers unions side we will have one or two peoples who
have basic skills and trained how to use the apps and they will do the works so we will not have
problems in processing.

 Evaluation – The system will benefit anybody who uses it.

1.5.3 Technical Feasibility


Technical Feasibility study is about evaluating if the current technology has a potential to
develop or unable to support our proposed system. Implementation of the proposed system
will use web-based platform. By Assuming required hardware and software resources are
available for the development and implementation of proposed system. Therefore, it is
technically feasible.

1.6 Scope and Limitation


1.6.1 Scope
 informing farmers how much similar farm products are sold all over the country and they can
make informed decisions on what to produce
 organizing and giving information to farmers about the current price that farm products are
selling and let them decide their price
 registering farmers soil type, land size is and getting them suitable fertilizers, pesticides and
medicines for their type
 providing information about their land products and the weather.
 buying high tech farming equipment’s as a union and scheduling to use them
 giving the farmers a chance to get insurances as a union
 giving transportation easily for farmers
 dividing delivery work fairly with in trucks
 giving different choices for customers
 delivering their orders on time for customers

1.6.2 limitation
 it only uses web-based platforms
 features of the application are dependent on internet connection so in order to use the
application system we need to have an internet connection.
 Most farmers are not familiar with smart phones therefore there should be at least one that can
access smart phone or teach them well.

1.7 Methodology

 Reading research papers about Ethiopian agriculture sector and market.


Commented [E3]: Every chapter should starts on the new
Chapter 2 pages

2. Description of the existing system

The current system of Ethiopian agriculture from producing to marketing is farmers produce their
products based on their last experiences on the market and brokers will come with trucks and bought
the farmers product. And they will sell to the shops.

2.1 Major function of the current system

The current system of Ethiopian agriculture from production to marketing includes


 Producing the goods
 Negotiating the price
 Transporting the goods

2.2 Users of current system

1. Farmers
 Produce farming products using raw materials
2. Brokers
 Negotiate about the prices with the buyers and the farmers
3. Truck Owners
 Travel with the brokers and transport the products to the buyers
4. Customers
 Buy farm products from the brokers
5. Government
 Collect information about current status of production, marketing of small
agriculture industry
 Give aids to farmers on seeds and fertilizers

2.3 Drawback of the current system

 It is difficult to know what farm product is producing in other places and what to produce
 lack of fairness in setting up the prices
 lack of organized information
 lack of good time management

2.4 Business rule


1. The Farmer unions web account is created by government.
2. The Farmer union will add and set price on the web according to farmers and recommended
prices.
Chapter 3
3. Proposed system
3.1 overview

The system we are going implement makes farmer union effective by organizing
information about their production, market and transportation and by connecting farmer
unions in the country to bring out effective production by using the collected data.
On the other side it will make the deliver and the market system easy by connecting farmer
unions with customers and customers to truck owners (who transport the products).
The system is going to be web based which helps different farmer unions and customers to
access the system regardless of their location.

3.2 Functional Requirement Commented [E4]: Refer the template and remodify it
again
 Managing farmer unions (Register, view and update)
 Managing farmer unions members (Register, view and update)
 Register status of farmer union members (Register, view and update)
 Register needs of farmer union members and farmer unions (Register and view)
 Register machine schedules among the farmer union members
 Register schedules to the unions
 Generate information’s about current price and production in the country
 Recommend product to a farmer
 Recommend price to a product
 Register product
 Register customer
 Order products
 Give comment

3.3 Non-Functional Requirement Commented [E5]: Refer the template and rework it again

 Usability
 Since our system is provided for rural parts it should be easily understandable
for all users.
 In addition to that our system will have a user manual that tells the users how
to use the system.
 Reliability
 The system should be best in error handling and display error message.
 Since the system also has online paying system it should be best in storing
data of the users in to the database.

 Performance
 Performance means that the ability of the CPU to respond for a given task. So
in order to get a good performance we have to use good hardware and
internet connection environment.
 Compatibility
 The system should be compatible to any operating system environment. If any
web browser is available on the devise our system should have to be
compatible and operate on it.
 Maintainability
 If any change or update made to the system it shouldn’t affect the existing
functionality of the system.

3.4 System model


3.4.1 Scenario

Here are some of the scenarios the system has

1. Name of Scenario: login in to the system


Participating actor: buyer, farmer union manager, government employee, farmers advisor,
agriculture expert
Initial assumption: the user has account
Normal flow
a. The user opens the web page.
b. The user enters a valid username and password.
c. The login form is displayed to the user.
d. The user clicks the login button.
e. The user display user page
Exceptional flow: -
a. If the user does not fill the correct username and password, the system notifies to enter
correct username and password.
b. The system does not work when the connection is not available

2. Name of scenario: Registering Farmer union


Participating actor: Government employee
Initial assumption: the actor has government location on this activity
Normal flow:
a. the actor opens www.gfu.com
b. log in
c. click register union
d. registration form displayed
e. fills name, location, password
f. click submit button
g. receive union id and registered successfully message
Exceptional flow:
a. if the actor inserts already registered location the system displays registered location and
get back to registration form.
3. Name of Scenario: registering farmers to farmer union
Participating actor: Farmer union manager
Initial assumption: the farmer has land around the farmer union working area and is given
confirmation from the government.
Normal flow
a. The actor will open www.fu.com
b. Log in
c. Click members
d. Click register members
e. Fills farmer name, location, phone no, land size, soil type
f. Click submit button
g. Receive the member id
4.Name of scenario: registering status of members
Participating actor: Farmers advisor
Initial assumption: the union have registered members
Normal flow:
a. the actor will open www.fu.com
b. log in
c. click members
d. click status
e. click register status
f. registering status page will be displayed
g. Select land is divided or not
h. If it is divided fill divided land size, seed type and add new division until division ends
i. If it is not divided fill seed type
j. Fill date of seed get planted
k. The seed that the farmer produced and planted will be displayed
5.Name of scenario: add product
Participating actor: Farmer union manager
Initial assumption: farmers are registered in the union
Normal flow:
a. The actor opens www.fu.com
b. Log in
c. Click add product
d. Fill name, quality, amount, price per kg
e. Click add

6. Name of Scenario: viewing status of productions in the country


Participating actor: 1. Farmer union manager 2. Government employee
Initial assumption: the actors have accounts
. information’s on the current status of the productions are updated by
different farmer unions
Normal flow:
a. Actor 1 opens www.fu.com
b. Actor 2 opens www.Gfu.com
c. Log in
d. Click production
e. Click status of production in the country
f. Fills product name, quality of product
g. Click ongoing or select last or available years
h. Products produced in different parts of the country will be displayed
Exceptional flow:
. if the user enters unavailable product the system displays unavailable product enter
correctly again
7. Name of scenario: Recommended Price
Participating actor: Farmer union manager
Initial assumption:
Normal flow:
a. The actor opens www.fu.com
b. Log in
c. Click prices
d. Click recommended prices
e. Fills name, quality of product
f. Recommended price of the product will be displayed
Exceptional flow:
. if the user enters unavailable product the system displays unavailable product enter
correctly again
8.Name of scenario: order
Participating Actor: buyer
Initial assumption: the buyer has account
Normal flow:
a. The actor opens www.buyfarm.com
b. Log in
c. Click search product
d. Fills name
e. Selects with or without transportation
f. Products will be displayed with given name and available quality, price, amount,
location with selected order (location, price, quality) + (increasing, decreasing)
g. Actor selects from the displayed products
h. Insert bank account number box will be displayed
i. Click order
Exceptional flow:
a. if the user enters unavailable account number unavailable account number alert will
be displayed
b. if the user enters account with less money from the selected product price
insufficient amount in the account alert will be displayed

3.4.2 Use Case Model


a. Actor identification

 Register members
 Register schedule
 Update products
 Set prices accordingly farmers choice
and recommended prices
 Access information’s about
recommended products and prices from
the web
Farmers Union manager
 A person employed by farmer union
To deal with farmers activity in the union
website.
 Updates needs of the members
(fertilizers, pesticides)
 Register status of farmers

Farmers advisor
 A person that have knowledge about
farming techniques and give tips for
the farmers and updates the progress use
of the farmers on the web

 Log in
 Order
 Give comment
 Log out

Customers
 A person that is registered and buy
farm products

 Recommend product
 Recommend price
 View status of production and price

Agriculture experts
 A person that have knowledge about
Agriculture and have information about
Current agriculture status of the country and suggest
product and prices for different land types and products
 Register unions
 Update unions

Government employee
 A person that register and give account for the farmer
unions
 A person that gather and give
information about
the agriculture production and market on the
government sides
______________________________________________________________________________________________________

b. use case definition


 Create account
 Log in
 Update account
 Register members
 Register status
 View status
 Update status
 Register desire
 View desire
 Recommended prices
 Recommend price
 Status of prices in the country
 Recommended production
 Status of productions in the country
 Send message
 Received message
 Register Schedule
 View Schedule
 Update Schedules
 Add products
 Register unions
 Needs of unions
 Update unions
 Status of the unions
 Order
 Give comment
 Sign out

c. Use Case Diagram Commented [E6]: Refer the template and lecture
materials and rework it again
uc system

Register member
Register union

View member
Update union

Register schedule
View union

Update schedule
View status of union

Gov ernment employee

farmer union manager

View Need of union


View schedule

Recommended Log in
production
Recommend
products

Update account

Recommended price
Recommend price
Agriculture expert

Cretae account
Add product Status of production
in the country

Status of price in the


country

Register status

Order

Farmers adv isor Update status Customer

Giv e comment
View status

Register desire

View desire
d. Use Case Descriptions
Description 1
Use case name Create account
Use case number 01
Use case description Used to create account
Participating actor 1.Buyers 2. Government employee
Pre-condition Connection must be available
Post-condition The actor 1 will have account
Actor 2 will create account for farmer union
Flow of event a. . Actor 1 open www.buyfarm.com
. Actor 2 open www.gfu.com
b. Actors Click create account button
c. Form will be displayed
d. . Actor 1 Fills name, password, e-mail or phone no
. Actor 2 fills name, location, password
e. Reconfirm password box will appear
f. Click submit
Exceptional flow . if the actor enters unavailable phone no or email it will
display unavailable phone no or email
. if the actor inserts different password rom the first in the
reconfirmation password box reinsert password message will
be displayed

Description 2
Use case name Log in
Use case number 02
Use case description Authenticate user
Participating actor 1.farmer union manager 2. Buyer
Pre-condition . Connection must be available
. Actors must have user name and password
Post-condition Login to the actor page
Flow of event a. . Actor 1 opens www.fu.com
. Actor 2 opens www.buyfarm.com
b. The system displays login form.
c. User fills correct username and password.
d. Click login button.
e. The system redirects to the index page.
Exceptional flow When the user fills invalid username and password the system
displays incorrect message and notifies the user to enter the
correct data

Description 3
Use case name Register members
Use case number 03
Use case description Farmers union will register union members (farmers)
Participating actor Farmers union manager
Pre-condition . connection must be available
. the farmer to be registered must have land confirmation
Post-condition The registered farmers will be given user id
Farmers will be registered as union members
Flow of event a. The actor will open www.fu.com
b. Log in
c. Click members
d. Click register members
e. Fills farmer name, location, phone no, land size, soil
type
f. Click submit button
g. Receive the member id
Exceptional flow . if the actor inserts unavailable phone number the web page
will display unavailable phone no and redirects to enter
available number
. if the actor inserts already registered location the system will
display registered location

Description 4
Use case name Register status of the member
Use case number 04
Use case description Registering information’s about members land is divided to
produce different products
Participating actor Farmers advisor
Pre-condition . connection must be available
Post-condition there will be information’s about members
. if their land is divided or not
. what is seed on each division of the land
. what seed is on the land if the land is not divided
. To view status of the member
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click members button
d. Click on the wanted member
e. Click status
f. Click register new status
g. Select land is divided or not
h. If it is divided fill divided land size, seed type and add
new division until division ends
i. If it is not divided fill seed type
j. Fill date of seed get planted
k. Or after e (Click status)
l. The seed that the farmer produced and planted will be
displayed
Exceptional flow

Description 5
Use case name Register needs of the member
Use case number 05
Use case description Used to update needs of the farmers
Participating actor Farmers advisor
Pre-condition . connection must be available
Post-condition Information’s about needs o the farmers will be updated
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click members button
d. Click on the wanted member
e. Click needs
f. Click register needs
g. Fills name, amount
h. Click submit
Exceptional flow

Description 6
Use case name Recommended prices
Use case number 06
Use case description Used to see recommended prices from the current analysis of
the market
Participating actor Farmer union manager
Pre-condition . connection must be available
Post-condition Information’s will be displayed about different products
recommended price
Flow of event g. The actor opens www.fu.com
h. Log in
i. Click prices
j. Click recommended prices
k. Fills name, quality of product
l. Recommended price of the product will be displayed
Exceptional flow

Description 7
Use case name Status of prices in the country
Use case number 07
Use case description Price descriptions in the country about specific product will be
given
Participating actor 1. Government employee
Pre-condition . internet connection must be available
Post-condition Price of specific product in different parts of the country will
be displayed
Flow of event a. Actor opens www.gfu.com
b. Log in
c. Click prices
d. Click status of prices in the country
e. Fills name, quality of product
f. price of the product in different parts of the country
will be displayed
Exceptional flow

Description 8
Use case name Recommended productions
Use case number 08
Use case description Information on what to produce will be given from data about
soil type, and wanted productions in the country
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Recommended products will be displayed
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click production
d. Click recommended production
e. Fills user id of farmer union member
f. Recommended products will be displayed
Exceptional flow

Description 9
Use case name Status of production in the country
Use case number 09
Use case description Give description about in what places specific product is being
produced
Participating actor Farmers advisor
Pre-condition . internet connection must be available
Post-condition Product places of specific product will be displayed
Flow of event a. Actor opens www.Gfu.com
b. Log in
c. Click production
d. Click status of production in the country
e. Fills product name, quality of product
f. Click ongoing or select last or available years
g. Products produced in different parts of the country will
be displayed
Exceptional flow If the user enters unavailable name and type the page displays
reenter correctly

Description 10
Use case name Send message
Use case number 10
Use case description Send message to government officials about current situations
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Message will be sent to government officials
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click message
d. Click create message
e. Box with space will appear
f. Click send message
Exceptional flow . if a person clicks send message with out writing anything in
the message box no message alert will be displayed

Description 11
Use case name Received message
Use case number 11
Use case description Messages received from government sides will be displayed
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Received messages will be displayed
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click message
d. Click received message
e. Received messages will be displayed
Exceptional flow

Description 12
Use case name Needs of farmers
Use case number 12
Use case description To see updated farmers needs
Participating actor Farmers advisor
Pre-condition . internet connection must be available
Post-condition Updated farmer needs have to be displayed
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click
d. Click members button
e. Click on the wanted member
f. Click needs
g. Click view needs
h. Farmers with their needs will be displayed

Exceptional flow

Description 13
Use case name Weather condition
Use case number 13
Use case description Weather conditions will be displayed
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Weather condition forecast will be displayed
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click weather forecast
d. User select date from the given dates
e. Selected date weather forecast will be displayed
Exceptional flow
Description 14
Use case name Register schedule
Use case number 14
Use case description To register schedules on aiding machines usage, and other
services
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Schedules will be registered on the server
Flow of event f. The actor opens www.fu.com
g. Log in
h. Click schedule
i. Select machine schedule or others
j. If actor selects machine schedule fills machine name,
date, member id, time
k. If actor selects others fills service name, member
id(optional), date, time
l. Click register schedule
Exceptional flow

Description 15
Use case name update schedule
Use case number 15
Use case description To update registered schedules
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Registered schedules will be updated
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click schedule
d. Select machine schedule or others
e. Select wanted schedule
f. Click update schedule
g. Edit and fill the schedule
h. Click update
Exceptional flow

Description 16
Use case name delete schedule
Use case number 16
Use case description To deleted unwanted registered schedules
Participating actor Farmer union
Pre-condition . internet connection must be available
Post-condition Registered schedules will be deleted
Flow of event a. The actor opens www.fu.com
b. Log in
c. Click schedule
d. Select machine schedule or others
e. Select wanted schedule
f. Click delete schedule
Exceptional flow

Description 17
Use case name Add product
Use case number 17
Use case description To add products on the web page of the market place
Participating actor Farmer union manager
Pre-condition . internet connection must be available
Post-condition Products will be uploaded on the web server
Flow of event f. The actor opens www.fu.com
g. Log in
h. Click add product
i. Fill name, quality, amount, price per kg
j. Click add
Exceptional flow

Description 18
Use case name Order
Use case number 18
Use case description To order wanted products
Participating actor Buyer
Pre-condition . internet connection must be available
Post-condition Orders will be sent
Flow of event a. The actor opens www.buyfarm.com
b. Log in
c. Click search product
d. Fills name
e. Selects with or without transportation
f. Products will be displayed with given name and
available quality, price, amount, location with
selected order (location, price, quality) + (increasing,
decreasing)
g. Actor selects from the displayed products
h. Insert bank account number box will be displayed
i. Click order
Exceptional flow . if the user enters unavailable account number unavailable
account number alert will be displayed
. if the user enters account with less money from the selected
product price insufficient amount in the account alert will be
displayed
Description 19
Use case name Register unions
Use case number 19
Use case description Used to create farmer unions
Participating actor Government employee
Pre-condition . internet connection must be available
Post-condition Farmer union will be created
Flow of event a. The actor opens www.gfu.com
b. Log in
c. Actor clicks unions
d. Actor clicks register unions
e. Form will be displayed
f. Insert name of union, location, user name, password
g. Actor click submit button
h. Union registered message will be displayed
Exceptional flow

Description 20
Use case name Update unions
Use case number 20
Use case description Used to update unions account
Participating actor Government employee
Pre-condition . internet connection must be available
Post-condition Farmer union account will be updated
Flow of event a. The actor opens www.gfu.com
b. Log in
c. Actor clicks unions
d. Actor clicks update unions
e. Form will be displayed
f. Actor inserts new password
g. Actor click submit button
h. Union account message will be displayed
Exceptional flow
Description 21
Use case name needs of union
Use case number 21
Use case description To view needs of farmer unions
Participating actor Government
Pre-condition . internet connection must be available
Post-condition Needs of different farmer unions will be displayed
Flow of event b. The actor opens www.gfu.com
c. Log in
d. Actor clicks needs of unions
e. Actor selects from the displayed
f. Selected needs will be displayed
Exceptional flow

Description 22
Use case name suggest products
Use case number 22
Use case description To recommend products to specific soil type and regions
Participating actor Agriculture expert
Pre-condition . internet connection must be available
Post-condition Products will be recommended
Flow of event a. The actor opens www.gfu.com
b. Log in
c. Actor clicks suggest products
d. Actor selects specific soli type and region
e. Actor inserts suggested product name
Exceptional flow

3.5 Object model


3.5.1 Data Dictionary Commented [E7]: Refer the template and rework it again

Class Attributes Operation Description

Farmer union Name Register union () Allow to register


Location Update union () unions
Password View union ()
Union id
Farmer union member Name Allow to register
Union id Register member () union members
Phone no Update member ()
Farmer id View member ()

User Username Log in () Allow the user to


Password Log out () access the system
Email Register ()
Phone no

Union manager Username Log in () Allow the manager to


Password Log out () access the system
Email Register ()
Phone no
Union id
Status Farmer id Register status () Allow to register
Land id Update status () status of union
Seed id View status () members

desire Name Register desire () Allow to register


Farmer id Update desire () needs of union
Union id View desire () members

Product Name Add product () Allow to add and get


Farmer Id View production () information about
price View price () products in the
Quality Update product () country
Quantity
Product id
Schedule Task Name Register schedule () Allow to create and
Union Id Update schedule () manage schedules
Farmer id View schedule ()
Starting time
End time
Schedule Id
Product suggestion Land id Suggest product () Allow to give and
Seed name Suggested product () view product
suggestion

Customer Name Log in () Allow to register


Password Log out () customer
Phone no Sign up ()
email Update account ()
Customer id

Order Product id Used for ordering


Customer id Order () products
Date Select location ()
Order id
Message Sender id Give comment () Allow to give and
Receiver id Send message () receive comment
Date
Time
3.5.2 Class diagram Commented [E8]: Refer the template and rework it again
class class diagram

land status
seed status
- farmer id: int
- land id: int - land id: int
- seed name: int - land size: int
- sow date: int - soil type: char

farmer union member

- farmer id: int


- name: long
Status - phone no: int
- union id: int
- status info: long
has has
+ register member() : void
+ register status() : void + update member() : void
+ update status() : void + view member() : void
+ view status() : void has
farmer union

gov ernment employee - location: char


- name: long
+ log in() : void register - password: int
+ log out() : void - unionid: int

view + register union() : void


+ update union() : void
+ view union() : void

register view

user
Farmers desire
- email: long
advises comment
- farmer id: int - name: char
- name: long - passwod: int - comment: char
- user id: int - comment id: int
+ register needs() : void manages - date: int
+ view needs() : void + log in() : void - time: int
+ log out() : void - user id: int
+ register() : void
+ give comment() : void
+ view comment() : void
give
agriculture expert give

+ log in() : void


+ log out() : void
view Customer
give
+ log in() : void
register + log out() : void
+ update account() : void

suggest farmers adv isor


union manager
- union id: int
- union id: int
+ log in() : void
+ log in() : void
+ log out() : void has
+ log out() : void

suggest
Price suggestion orders
view order
- farmer id: int
add
- price: int - confirm: int
- product id: int view create - customer id: int
- date: int
+ Recommend price() : void - product id : int
+ Recommended price() : void
+ order() : void

Product

- date: int
- farmer id: int
schedule
- name: long
- date: int - price: int
Product suggestion - name: long - quantity: int
- time: int - standard: long
- land id: int
- union id: int
- seed name: long + add product() : void
+ refister schedule() : void
+ Recommend product() : void
+ update schedule() : void
+ Recommended production() : void
+ view schedule() : void

z
3.6 Dynamic model

3.6.1 Sequence Diagram Commented [E9]: Refer the template and rework it again

1. Register farmer union


sd union regestration

government government.com login login controler governmentpage register union form register union database
controler
open()

intiate()

display login form()

enter user name and password()


submit()

validate()
check()

return()

open page()

displaypage()

select register union form tab()

intiate()

display form()

fill form()
submit()

validate()

try again()

save()

successfully registered()

2. Register farmer union member


sd register memebers

farmer union employee fu.com login form login controller farmer union page register member register form database
form controller

open()

initate()

form displayed()

enter username and password()

submit()

validate()

check()

return()

open page()

display()

select()

initate()

form displayed()

fill form()

submit()

validate()
try again()

save()

registered successfully()

3. Register schedule
sd register union schedule

farmers union employee fu login login controler farmers umion register scheddule register schedule database
page form controler

open()

intiate()

display login form()

enter user name and password()

submit()

validate()

check()

return()

open page()

display page()

select register schedulr form()

initiate()

display form()

fill form()

submit()

validate()

try again()

save()

successfully registered()

4. Register status of the members


sd register status

Farmer union employees fu.com login form login controller farmer union page register status form form controller database

open()

initate()

display page()

enter user name and password()

submit()

validate()
check()

return()

open page()

display page()

select register status()

initate()

display page()

fill form()

submit()

validate()
try again()

save()

registered successfully()

5. Add product
sd add product

farmers union employee fu.com employee update form button add product form add product database
homepage controller

1:navigate()

2:login()

3:click on()

4:display()

5:click()

6:initiate()

7:display()

8:fill form()

9:submit form()

10:validate()

11:error()

12:update()

13:update successful()

6. Status of production in the country


sd order

customer farm products.com login form login controller customer page product selection form controller database
form

initate()

open page()

page displayed()

enter user name and password()

submit()

validate()
check()

return()

open()

display page()

select order tab()

display page()

submit()
select product()

validate()
try again()
check()
display available products() return()

select and order()

write()

return()

ordered successfully()

7. Order
sd order

customer farm products.com login form login controller customer page product selection form controller database
form

initate()

open page()

page displayed()

enter user name and password()

submit()

validate()
check()

return()

open()

display page()

select order tab()

display page()

submit()
select product()

validate()
try again()
check()
display available products() return()

select and order()

write()

return()

ordered successfully()

8. Update union
sd update union

farmer union employee fu login login controler farmer union page search form search form update form update form database
controler controler
open()
intiate()

display login form()

enter user name and password()

submit()

validate()
check()
return()

open page()

display page()

intiate()
display()

enter date()

search()

validate()
check()

return()

intiate()
display form()

fill form()

submit()

validate()
try again()
update()

update successfully()

3.6.3 Activity Diagram


1. Add product

1. Order
3.6.3 State Diagram Commented [E10]: Refer the template and rework it
again

1.Log in
Actor: - all users
stm log in

START

FU

LOGIN FORM

USER PAGE

END

2. Farmer union member registration


Actor: -Farmer union manager
stm REGISTER member

Initial

FU

LOGIN FORM

USER PAGE

REGISTER A MEMBER
TAB

REGISTRATION FORM

SUCCESSFULL
MESSAGE

END
3. Register schedule
Actor: - Farmer union manager
stm SCHEDULE CREATION FO...

START

FU

LOGIN FORM

USER PAGE

SELECT SCHEDULE
BUTTON

SCEDULE CREATION
FORM

SUCCESSFULL
MESSAGE

END
4.Order
Actor: - customer
stm ORDER

ST ART

FU

LOGIN FORM

USER PAGE

SEARCH TAB

PRODUCT LISTS

SUCCESSFULL
MESSAGE

END
Chapter Four
4.System design
4.1. Overview
This is the system design to the Ethiopian farmer unions system for all over Country. The
document includes the design goal, the proposed system design and object design.

4.1.1. Purpose of the system


This document describes the design issues of the overall system. It provides the complete
architectural overview of the proposed system. It is intended to capture and express the
significant architectural decisions which have been made on the system as well as to obtain the
information needed to manage all farmer unions, truck owners, customers, farmer advisor and
government of the country.

4.1.2. Design goal


The design goals describe the qualities of the system that are derived from the non-functional

Requirements which can lead to decisions of developers.

The designing part is very important so as to make the implementation or the coding part very

easy. The different types of the system modeling techniques that are used for the

implementation of the system such as deployment and component modeling are show in detail.

Not only the system modeling techniques but also some system design techniques such as

system decomposition design is cover in detail in this phase. These goals can be inferred from

the nonfunctional requirements. These are:

 Performance
 Dependability
 Maintenance
 End user

Performance
In order for the farmer union system is to make Distributed system than the system

to give the services more than 20000 users per month the system satisfies the following condition.

 Response time: - Depending on the network connection that the user machine has the
system is going to interact and respond to user’s request in a maximum of a second, if
the user is just viewing the pages, but if the user’s request requires the processing of the

data base, like searching for schedule, is going to take an average of 5 -10 seconds of

communication latency with the server system. And searching farmer name without full name is going to
have a response time up to 4-8 seconds.

 Memory: -The client system requires an average of 10-15 megabits of RAM memory to
be loaded on a user’s web browser and streaming of trailers require additional memory

up to 20 megabits. The server system is going to require up to 40 GB of memory to store

all the data and other components of the system

Dependability
The farmer union web-based system should achieve the following dependability characteristics in order
to resist crash and be available and reliable.

 Robustness: - since the system is a web-based system, that mainly use a menu driven

entry there wouldn’t be an input problem by the user side. But for the server side there

might be an error during the process of entering a data. In this time the system will

provide an error page and the system will continue without failure or crush.

 Availability: - as long as there is an internet connection the system will be available 7

days a week and 24 hours a day.

 Security: - But by the official user side the system will


provide a user name and password that will manage their own page according to them

level of access.

 Reliability: the information provided by the system is as reliable as it is presented on the


web page interface, and this is maintained by the persistent database.

Maintenance
In time of failure or need modification the system needs to be maintained. To be maintainable

the system should meet the following maintenance criteria

 Extensibility: - if it is needed to add new functionality to the system, this must be

achieved by only making a separate page and integrate this page with the existing system.

 Modifiability: - if in the system, some functionality requires to be modified, this

modification must be done specifically to that function or page without affecting the

overall system organization.

 Portability: - the system is developed to be viewed and retrieved from any web browser
regardless of their version and platform it resides in it.

 Readability: - the system code can be viewed by clicking on the current web page and
choose “view the source code” option.

End user
From the user point of view the system should provide the following end user criteria’s so that

the system can achieve At least a90% usability by the user

 Utility: - in order to help the user, to easily understand and interact with the system, the
system must provide the following utilities

Mouse over tips

Keyboard alternative

 Usability: to enhance the usability of the system, the system should be designed

incorporating the following usability concepts

 Site mapping
 Consistent page pattern
 Less overcrowded interface.

Priorities of the system


The design goals of the farmer union system are prioritized as follows

Priority Design goal

1 End user

2 Performance

3 Dependability

4 Maintenance

4.2 Proposed system architecture


In this project, the team uses a three-tier architecture, which has three layers. These three layers are the
Application or Presentation layer, the business layer and the data access layer. Application or
presentation layer is the form, which provides the user interface to either programmer or end user. The
business layer is the class, which the team uses to write the function, which works as a mediator to
transfer data from application layer or presentation layer to data layer. This layer also has a property
layer which is a class where variables are declared corresponding to the fields of the database which can
be required for the application and make the properties so that the team can get or set the data using
these properties into the variables. The third tire is the data access layer which is also a class to get or
set data to the database queries back and forth. This layer only interacts with the database. The
database queries or stored procedures will be written here to access the data from the database or to
perform any operation to the database.

4.2.1 System process


act

recieve request parser


http request

send request

Initial

xml result
recieve request send result

final
proposed system

xml w riter
act

prooposed system

parser
send request recieve
request

recieve
send result members managment
request
Log in

xml w riter
information gathering
and v iew ing

scheduling

recommendation

Ordering

4.2.2 Subsystem decomposition


cmp component diagram

members managing subsystem agricultural information gathering and v iew ing subsystem

regester union register desire


regester union register status
member

v iew union v iew union v iew desire


update status status of production in
member
the country

update union
update union status of price in the
v iew status
member country

ordering subsystem

add product order product

recommendation subsystem

scheduling subsystem
recomend price recomend product

register schedule

v iew schedule
recomended price recomendced
product

update schedule

Subsystem Purpose Class

Members managing To register and update Union, Farmer union


subsystem members member
Agricultural information To gather and view Status, Desire
gathering and viewing information of members
subsystem
Scheduling subsystem To manage schedules Schedule

Recommendation To give and take Price suggestion, product


subsystem recommendation suggestion

Ordering subsystem To make transaction of Product, order


products

4.2.3 Hardware/software mapping


In this system design mainly, there are three hardware components. The client side, server side and
database side. When the team applies the system, necessary software will be loaded to each side
hardware components. Network should be installed between each side.
deployment Nodes

«device»

members managing
subsystem

Client

information gathering
v iew ing

Scheduling

Recommendation

Ordering

System database

4.2.4. Persistent data management


In this section we will see mapping of the objects/classes of the system.
class system

Farmer union
farmer union
- location: char
- union id: int «column»
- union name: char union name
location
+ register union () : void union id
+ update union() : void
+ view union() : void

Union mapping

class system

Farmer union member


farmer union member

- farmer id: int «column»


- name: char farmer id
- phone no: int f name
- union id: int l name
phone no
+ Register member() : void union id
+ update member() : void
+ view member() : void

Union members mapping

class system

Schedule
Schedule
- date: int
- farmer id: int «column»
- task name: char farmer id
- time: int date
time
+ Register schedule() : void task name
+ update schedule() : void Schedule id
+ view schedule() : void
Schedule mapping

class system

Product

- farmer id: int


- name: char
- production date: int Product
- quantity: int
- standard: char «column»
Farmer id
+ add product() : void name
production date
quantity
standard

Product mapping

class system

product suggestion
product
- land id: int suggestion
- seed name: int
«column»
+ recommend product() : void land id
+ recommended product() : void seed name

Product suggestions mapping

class system

order

- customer id: int Order


- date: int
- product id: int «column»
customer id
+ order() : void product id
date
confirmation

Orders mapping
class system

Farmer desire

- desire name: char


Farmer desie
- farmer id: int

+ register desire() : void «column»


+ update desire() : void Farmer id
desire name
+ view desire() : void

Farmers desire mapping

class system

Land status
land status
- Farmer id: int
- land id: int «column»
- land size: int farmer id
- soil type: char land id
land size
+ register status() : void soil type
+ update status() : void
+ view status() : void

Land status mapping

class system

seed status
seed status
- land id: int
- seed name: long «column»
- sow date: int land id
- status: long seed name
sow date
+ register status() : void status
+ update status() : void
+ view status() : void

Seed status mapping

4.2.5. Component diagram


The following component diagram represents a group of graphs of
components connected by dependency relationships and dependencies are
shown as dashed arrows from the client component to the supplier
component.
cmp component diagram

UPDATE MEMBER
ADD PRODUCT
WEBSERVER

REGIISTER
MEMBER

TASK REGISTER UNION

MANAGE ACCOUNT
BROWSER
REGISTER
SCHEDULE

REGISTER DESIRE

FUMS db
VIEW DESIRE

VIEW STATUS

UPDATE
UPDATE SATUS VIEW UPDATE STATUS ORDER SCHEDULE
RECOMANDED
PRICE

4.2.6 Deployment diagram


deployment DEPLOYEMENT MOD...

«device»
APPLICATION SERVER

DOCUMENTATION

«device»
COMPUTER «device»
«device»
WEB SERVER
DATABASE

BROWSER REGISTRATION

FU USER
INTERFACE

<<MESSAGE BUS>> FUMS db

SCHEDULING correction

MEMBER
MANAGEMENT

«deployment spec»
DeploymentSpecification
WEB SERVICE

«deployment spec»
DeploymentSpecification
TASKS
4.2.7. Database design

4.2.8 Access control


In this section we show different actors have access to different functionality and data.
Object actor Farmer union Farmer Status Desire Product Schedule Product Order
union suggestion
member

Government Register union


employee ()
Update union
()
View union ()
Farmer union Register Register Add
manager member () schedule product ()
View ()
member () Update
Update schedule
member () ()
View
schedule
()

Farmers Register Register


advisor status () desire ()
Update View
status () desire ()
View
status ()

Agriculture Suggest
expert product ()
Suggested
product ()
Customer Order ()

4.2.9 Global control flow


The sequence of action by the subsystem in our system is based on Event-driven control method
that Components generate events indicating, perhaps, that some data is available for processing.
The event handler detects the events, consults the event register and passes the event to those
components who have declared an interest. All event from subsystem go to event and message
handler to be implemented
Figure 4.12 event-driven control

4.2.10 Boundary condition

Start-up server first select safety room where web server


placed then make connection with persistent
storage (can be database) and user desktop
using network cable and System manager will
install software to web server and start server.

At shutdown When the system is shut down by system


manger temporary files save to database.

Start up and shutdown use case

System failures handling

Network failure between web browser and by notifying the user of the network failure and
server Re-establish connection after a network failure
or to restore the state of Matches after a crash

A server failure Checking the integrity of the persistent data


after an unexpected termination of the server
and power switch connected to sever.

Das könnte Ihnen auch gefallen