cattle management system ijmaya latha7a/p ravindren
TRANSCRIPT
CATTLE MANAGEMENT SYSTEM
IJMAYA LATHA7A/P RAVINDREN
A report submitted in partial fulfillment of the requirement for the award of the
Degree of Bachelor of Computer Science (Software Engineering)
Faculty of Computer Systems & Software Engineering University Malaysia Pahang
APRIL 2010
ABSTRACT
Nowadays, the cattle farming are being a profitable sector in the growth of our nation.
Therefore, many are getting involved in cattle farming business. Cattle Management
System (CMS) is a system that fulfills the needs of a system for cattle farming. Cattle
Management System (CMS) has functions such as edit cattle record, update the expanses
of the cattle farm and update the immune table for the cattle. The prototype of CMS
enables the users to manage the cattle farm. The methodology that will be used to
develop CMS is Software Development Life Cycle that suits the web based system
development. The scripting language for CMS is VB.Net , developed in Microsoft Visual
Studio.Net 2008. The database for CMS was created by using Microsoft SQL Server
2005. This system is to be used by the administrator and staff, who is the farmer in the
cattle farm.
VI
ABSTRAK
Baru-baru, pertanian ternakan merupakan sektor yang menguntungkan dalam
pertumbuhan ekonomi negara kita. Oleh kerana itu, ramai yang terlibat dalam
perusahaan tani lernakan. Cattle Management System (CMS) adalah suatu sistem
computer yang memenuhi keperluan pengendalian pertanian temakan. Selanjutnya,
sistem berkomputer untuk pengurusan usaha tani temakan digunakan secara meluas di
luar negeri. Cattle Management System (CMS) akan menyediakan fungsi seperti
merekod data-data yang diperlukan untuk rujukan penternak. Metodologi yang
digunakan untuk mengernbangkan CMS adalah Software Development Life Cycle yang
berpadanan dengan pembangunan sistem berasaskan Visual Basic.Net adalah bahasa skrip untuk sistem CMS dengan menggunakan perisian Microsoft Visual Studio.Net 2008. Microsoft SQL Server 2005 digunakañ sebagai penyimpan data CMS. Sistem mi
akan digunakan oieh pentadbir dan petani di ladang lembu.
TABLE OF CONTENTS
7
CHAPTER TITLE PAGE
TITLE PAGE i
ABSTRACT
ABSTRAK
TABLE OF CONTENT iv
INTRODUCTION I
1.1 Introduction 1
1.2 Problem Statement 2
1.3 Objective 3
1.4 Scope 3
1.5 Organization Of Thesis 4
2 LITERATURE REVIEW 5
2.1 Introduction 5
2.2 Existing System 5
2.2.1 Manual Cattle Management 6
2.2.2CattleMaxCs
VIII
2.3 Development Methodology 7
2.3.1 Software Development Life Cycle 7
2.3.1.1 Planning 7
2.3.1.2 Analysis 8
2.3.1.3 Design 8
2.3.1.4 Implementation 8
2.3.1.5 Maintenance 8
2.3.2 Types of Software Development Life 9
Cycle
23.2.1 Waterfall Model 10
2.3.2.2 Iterative Development 11
2.3.2.3 Extreme Programming (XP) 11
2.3.2.4 Prototyping Model 12
2.3.2.5 Spiral Model 13
2.3.3 Rapid Development Application(RAD) 14
2.4 Development Tools 15
2.4.1 Macromedia Dreamweaver 16
2.4.2 Microsoft Expression Web 16
2.4.3 Microsoft Visual Studio.Net 2008 16
2.5 Database 17
2.5.1 Microsoft SQL Server 2005 18
2.5.2 Oracle 18
2.6 Scripting Language 19
2.6.1 Peripheral Hypertext Preprocessor 19
(PIP)
2.6.2 C++ 20
2.63 Perl 21
2.6.4 Hyper Text Markup Language (HTML) 21
2.6.5 Visual Basic.NET 22
2.6.6 JavaScript 22
2.7 Heuristic Attributes 23
2.7.1 Scbneiderman's 8 Golden Rules 24
2.7.2 Noman's 7 Principle 26
2.7.3 Jacob Neilsen 10 Heuristics 26
Ix
3
4
METHODOLOGY 29
3.1 Introduction 29
3.2 Discussion on Chosen Methodology 29
3.2.1 Requirement Phase 31
3.2.2 Design Phase 32
3.2.2.1 System Design 32
3.2.2.2 Database Design 41
3.2.2.3 Interface Design 47
3.2.3 Implementation Phase 48
3.2.4 Verification Phase 48
3.2.5 Maintenance Phase 48
3.3 Project Requirement 49
IMPLEMENTATION 51
4.1 Introduction . 51
4.2 Database Connection 51
4.2.1 Structured Query Language (SOL) 52
Commands
4.2.2 Managing Connection between System 53
and Database
4.2.3 Stored Procedures 54
43 System Implementation .56
4.3.117unction of CMS 56
4.4 Interfaces Of-CMS 58
4.5 Applying Heuristics Attributes 66
4.5.1 Visibility of System Status 66
4.5.2 Match between system and real world 66
4.5.3 Consistency and standard 67
4.5.4 User Control and Freedom 68
4.5.5 Error Prevention 69
4.5.6 Recognition rather than recall 69
x
4.5.7 Flexibility and efficiency of use 70
4.5.8 Aesthetic an.d minimalist design 70
4.5.9 Helps users recognize, diagnose and
71
recover from errors
4.5. 10 Help and documentation 71
4.6 Testing phase 72
4.6.1 Purpose of Testing 72
46.2 Method of Testing Process 72
4.6.3 Outcome of the Testing Process 73
RESULT AND DISCUSSION 77
5.1 Introduction 72
5.2 Result Analysis 72
5.2.1 Develop a prototype web-based system 73
for cattle management
5.2.2 Provide basic information about cattle 73
management
5.2.3 Acts as record for cattle management 75
5.2.4 Apply 10 Heuristics in designing 75
interface by Jacob Nielson
5.3 Constraint 76
5.3.1 Development Constraint 76
5.3.2 System Constraint 77
5.4 Future Enhancement 77
CONCLUSION 78
xl
5
6
LIST OF TABLE
TABLE NO TITLE PAGE
2.1 Comparison between methodologies 15
3.1 Table for User Entity 44
3.2 Table for Administrator Entity 44
3.3 Table for Staff Entity 44
3.4 Table for Cattle Record Entity 45
3.5 Table for Immune Table Entity 45
3.6 Table for Expanses Entity 46
3.7 Hardware Requirements 49
3.8 Software Requirements 49
4.1 Fuñctións of SQL Commands used 52
4.2 Stored Procedures in CMS 54
4.3 Test Sequences for LOgin 73
4.4 Test Sequences for Register 74
4.5 Test Sequences for Saving Records 75
4.6 Test Sequences for Adding Data 76
XII
LIST OF FIGURES
/
FIGURE NO TITLE PAGE
2.1 Software Development Life Cycle 9
2.2 The Waterfall Model 10
2.3 The Prototyping Model 13
2.4 The Spiral Model 14
3.1 Flowchartof CMS 33
3.2 Context Diagram of CMS 34
3.3 Level 0 Data Flow Diagram 35
3.4 DFD level 1 for process 1.0, View General 36
Information
3.5 DFD level I for process 2.0, Login 37
3.6 DFD level 1 for process 3.0, Register new staff 38
3.7 DFD level 1 for process 4.0, View Cattle 38
Farming Details
3.8 DFD level 1 for process 5.0, Edit Cattle Record 39
3.9 DFD level I for process 6.0, Edit Cattle Health 39
Details
3.10 DFD level 1 for process 7.0, Update Sales 40
Record
3.11 DFD level 1 for process 8.0, Update Purchase 41
XIII
Record
312 EERD for CMS 42 3.13 Homepage of CMS 47 4.1 Data Connection of CMS 52 4.2 Code Snippet of Declaration of the Connection 53
of Database
4.3 Code Snippet of Open Method for Connection to 53 Database
4.4 Code Snippet of Execute Function and Closing 56 Connection
4.5 Code Snippet of Searching Data from Database 56 4.6 Code Snippet of Saving Data to Database 57 4.7 Code Snippet of Deleting Data from Database 57 4.8 Code Snippet of Determining 'CattleID Exist or 58
Does Not Exist.
4.9 The Login screen of CMS 59 4.10 The Cattle Breed screen of CMS 59 4.11 The Integration System (Management) screen of 60
CMS
4.12 The Feeding screen of CMS 60 4.13 The Vaccine List screen of CMS 61 4.14 The Administrator page of CMS 61 4.15 The Farmer/Staff page of CMS 62 4.16 The Staff Registration screen of CMS 62 4.17 The Cattle Record screen of CMS 63 4.18 The Cattle Health Record screen of CMS 63 4.19 The Purchase Record screen of CMS 64 4.20 The Sales Record screen of CMS 65 4.21 The main page of Admin user 67 4.22 The basic screens of CMS 68 4.23 Message box that prompt to show an error 69 4.24
Simple message box that understandable 70 5.1
Pie Chart for Question 1 78
xlv
5.2 Pie Chart for Question 2 79 5.3 Pie Chart for Question 3 79 5.4 Pie Chart for Question 4 80 5.5 Pie Chart for Question 5 81 5.6 Pie Chart for Question 6 81 5.7 Pie Chart for Question 7 82 5.8 Pie Chart for Question 8 83 5.9 CMS Website Homepage 84
5.10 The basic information of Brahman Breed 85 5.11 The page of record keeper function of CMS 86
/
xv
CHAPTER 1
iNTRODUCTION
1.1 Introduction
Cattle are domesticated ungulates mammal animals. Cattle are Bovinae subfamily
and originated from Bos genus. in many places, cattle is been raised well by the farmers
for the beef and dairy products, which is profitable. Besides that, cattle which is known as
livestock, also act as draft animals, it pulls carts and plows. Cattle as well kept for other
products such as leather and dung for manure or fuel. This reveals the important of cattle
business in today's life.
Cattle Management System (CMS) is a system for the cattle farmers that can ease
the cattle management. CMS acts as record keeper for the farmer to supervise the cattle
farmer. CMS also helps the farmer to observe the health level of the cattle. Besides that
CMS can be refer as a guidelines for new cattle fanner to be acquainted with the cattle
development and the management.
z
12 Problem Statement
Nowadays, many new farmers are not aware about the real way of running and
caring a cattle farmer. Those people of olden days are educated by the antecedent about
the cattle rising and development. This is also due to the tradition, where the cattle caring
are done by a family and being thought to the young in order to keep it as the family
business. Appropriate to the technology development many those people who did the
cattle rising as their family business was not practicing it anymore. At this instant, the
cattle farming are being very profitable sector in the growth of our nation. A perceptive
system is desirable to support such situation. Thus, many are taking up this cattle farming
as their business for this ages. However there are some who are inexperience in this field
and they need lot of guidelines before getting involve in cattle farming.
Besides that, difficulty does occur if happens a situation where the farm caring has
to be turned to other hand due to certain unpleased reason. Therefore a regimented system
with aptitude to keep data about daily management of cattle farmer should be used by
farmer. If the farm being handed over to a new farmer, this system will be a fine source for
the new farmer to learn and know about the current flow of the management. Besides that
the system also 4could play a role as an education for the new and rawness farmer to be
exposed about the cattle management. The health and the caring of rising cattle also have
to be considering in the system. A firm system for cattle farming will ease the
management of cattle farms and it also enables the productivity of cattle farming to
increase.
13 Objective
The objectives of this project are to:
L Develop a prototype web-based system for cattle management.
ii. Develop a data management sysern for cattle farm.
iii. Provide basic information about cattle management.
iv. To apply 10 Heuristics in designing interface by Jacob Nielson.
1.4 Scope
The scopes of this project are:
L The system is developed as guides for the new farmers in Malaysia.
ii. The users of this system are specifically cattle farmers, who take cares of cattle for
its beef and dairy; and for those who are interested to know about the running of
cattle production.
iii. The system is developed to provide the channel for running the cattle farm.
iv. This system will be developed using Visual Studio.NET .
3
1.5 Organization of Thesis
This thesis consists of six chapters. Chapter 1 is the introduction of the thesis.
Introduction to the project is includes the problem statement, objectives of the project and
the scopes of the project. Chapter 2 is the literature review. Research and literature review
related to the project is presented. Chapter 3 is about the system methods or
methodologies that will be applied. Procedures such as project planning, project analysis,
design, testing and implementation will be discussed throughout this Chapter 3. Chapter 4
is the implementation of system including database, codes and interface design. Chapter 5
is about result and discussion. its advantages and disadvantages, further enhancement is
also discussed in Chapter 5. Chapter 6 is the conclusion of this project.
4
Lei It El I D
/
LrFERATURE REVIEW
2.1 Introduction
This chapter discuss about the literature review of Cattle Management System
(CMS). Techniques and method used in this system is explained throughout this chapter.
Studies based on the information in several websites, article and journals were done to
assemble needed particulars for this literature review
2.2 Existing System
This section is to discuss about the existing system that related to Cattle
Management System (CMS). A brief explanation about manual cattle management and
CattleMaxCs is stated in this section.
2.2.1 Manual Cattle Management
Those days, cattle are managed manually by farmers. The special physical
appearances of each cows is used by the farmer as the cattle identification. The cattle
behavior and grazing is used as the data of knowing the cattle health and preceding
condition. At that timing, cattle are being well observed and studied by the farmer in order
to know and remember the information that needed to run the management appropriately.
Moreover many were skilled about the cattle farming and raising by their family and
forebear at that era.
2.2.2 CattleMaxCs
CattleMaxCs is a software that used by oversea cattle farmers. CattleMaxCs offer a
technology-based solution that allows you to keep up in the rapidly-changing cattle
business. This program was created to meet the record keeping needs of cattle farmer.
CattleMaxCs is based on Microsoft Access technology for maximum compatibility with
Microsoft Windows. In addition, records and reports can easily be exported to Excel,
Word/text and PDF formats.
7
CattleMaxCs support all the data about the cattle management. CattleMaxCs
support and keep many adequate data about cattle management. The amount of cows can
be always updated by using CattleMaxCs if there is any cow born or dead. CattleMaxCs
keeps the sufficient data about the cattle and its improvement. Furthermore the health can
be monitored by CattleMaxCs system and it will be recorded in the database. CattleMaxCs
helps the farmers to keep an eye on the growth of cattle and the development of the
management.
2.3 Development Methodology
A system development methodology in software engineering is a framework that is
used to structure, plan, and control the process of developing an information system. This
framework consists of multiple tools, models and methods which assist system
development.
2.3.1 Software Development Life Cycle
Systems Development Life Cycle (SDLC) is any logical process used to develop
an information system, including requirements, validation, training, and user ownership.
SDLC is also known as the process of creating or altering systems, and the models and
methodologies that used to develop systems. The concept usually refers to computer or
information systems. in general, the phrases involved in SDLC are Planning, Analysis,
Design, implementation and Maintenance. Each of these phases is connected in a cycle
form starting from Planning phases and ends at Maintenance phases. Figure 2.1 shows the
SDLC phases and the flow. [1]
23.1.1 Planning
At this stage, the goals of the project are determined. Projects are typically
evaluated in three areas of feasibility: economical, operational, and technical. It is also
used as a reference to keep the project on track and to evaluate the progress of the system.
This phase is also called the analysis phase. [l}
2.3.1.2 Analysis
This step involves breaking down the system in different pieces and drawing
diagrams to analyze the situation. Analyze project goals, break down functions that need
to be created, and attempt to engage users so that definite requirements can be defined.
Requirement gathering sometimes require individual from client as well as service
provider side to get a detailed and accurate requirements. [ii
23.13 Design
The design stage takes as its initial input the requirements identified in the
approved requirements document. For each requirement, a set of one or more design
elements will be produced as a result of interviews, workshops, and/or prototype efforts.
[1]
9
23.1.4 implementation
Modular and subsystem programming code will be accomplished during this stage.
The code is tested at various levels in software testing. Unit testing and module testing are
done in this stage by the developers. System and user acceptance testing are often
performed also. [1]
7
2.3.1.5 Maintenance
Maintaining the system is an important aspect of SDLC. As key personnel change
positions in the organization, new changes will be implemented, which will require system
updates. [1]
Planning
I Maintenance I
Analysis
Implementation Design
Figure 2.1: Software Development Life Cycle
10
2.3.2 Types of Software Development Life Cycle (SDLC)
There are few different types of Software Development Life Cycle (SDLC)
model. In this section, explanation about the types of Software Development Life Cycle
model will be discussed.
2.3.2.1 Waterfall Model
The waterfall model is a sequential software development process, in which
progress is seen as flow gradually downwards through the phases of Requirement, Design,
Implementation, Verification and Maintenance. In the waterfall model, one proceeds from
one phase to the next in a purely sequential manner. Thus the waterfall model maintains
that one should move to a phase only when its preceding phase is completed and
perfected. [2]
In waterfall model, program requirements should be set in stone before design is
started, the program's design should be perfect before people begin work on implementing
the design. Otherwise they are implementing the wrong design and their work is wasted.
The waterfall model provides a structured approach; the model itself progresses linearly
through discrete, easily understandable and explainable phases and thus is easy to
understand. It also provides easily markable milestones in the development process. Figure
2.2 shows the Waterfall Model. [2]
I Requirement
I Design I
I Implementation I
Verification
Maintenance
Figure 2.2: The Waterfall Model
2.3.2.2 iterative Development
Iterative development is a cyclic software development process developed to
resolve the weaknesses of the waterfall model. It starts with an initial planning and ends
with deployment with the cyclic interaction in between. The iterative development is a
vital part of the Rational Unified Process (RUP), the Dynamic Systems Development
Method, Extreme Programming and generally the agile software development
frameworks. iterative development slices the system functionality into iterations. In
each iteration, a slice of functionality is delivered through cross-discipline work,
starting from the model/requirements through to the testing/deployment. [3]
I
i:z
2.3.2.3 Extreme Programming (XP)
Extreme Programming (XP) is a software engineering methodology which is
intended to improve software quality and responsiveness to changing customer
requirements. It advocates frequent "releases" in short development cycles, which is
intended to improve productivity and introduce checkpoints where new customer
requirements can be adopted. [4]
Other elements of Extreme Programming includes programming in pairs or doing
extensive code review, unit testing of all code, avoiding programming of features until
they are actually needed, a flat management structure, simplicity and clarity in code,
expecting changes in the customer's requirements as time passes and the problem is
better understood, and frequent communication with the customer and among
programmers. The methodology takes its name from the idea that the beneficial elements
of traditional software engineering practices are taken to "extreme" levels, on the theory
that if some is good, more is better. [4]
23.2.4 Prototyping Model
Prototyping is an attractive idea for complicated and large systems for which
there is no manual process or existing system to help determining the requirements.
Prototyping is known as effective method to demonstrate the feasibility of a certain
approach. This might be needed for novel systems where it is not clear that constraint
can be met or that algorithms can be developed to implement the requirements. [5]
13
The basic idea of Prototyping model is that instead of freezing the requirements
before a design or coding can proceed, a throwaway prototype is built to understand the
requirements. Development of the prototype obviously undergoes design, coding and
testing. But each of these phases is not done very formally or thoroughly. In prototyping
model, errors can be detected much earlier as the system is mode side by side.
Practically, this methodology may increase the complexity of the system as scope of the
system may expand beyond original plans. Figure 2.3 shows the Prototyping Model.
Figure 2.3: The Prototyping Model