effective faraid system using rule-based harini binti … · pakar faraid juga telah membantu...

45
EFFECTIVE FARAID SYSTEM USING RULE-BASED HARINI BINTI HARANI BACHELOR OF COMPUTER SCIENCE (SOFTWARE DEVELOPMENT) UNIVERSITI SULTAN ZAINAL ABIDIN 2018

Upload: others

Post on 11-Feb-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

EFFECTIVE FARAID SYSTEM USING RULE-BASED

HARINI BINTI HARANI

BACHELOR OF COMPUTER SCIENCE

(SOFTWARE DEVELOPMENT)

UNIVERSITI SULTAN ZAINAL ABIDIN

2018

FARAID EFFECTIVE SYSTEM USING RULE-BASED

HARINI BINTI HARANI

Bachelor of Computer Science (Software Development)

Faculty of Informatics & Computing

Universiti Sultan Zainal Abidin, Terengganu, Malaysia

DECEMBER 2018

DECLARATION

I hereby declare that this report is based on my original work except for quotations and

citations, which have been duly acknowledged. I also declare that it has not been

previously or concurrently submitted for any other degree at Universiti Sultan Zainal

Abidin or other institutions.

_______________________________

Name : Harini Binti Harani

Date : 23rd December 2018

CONFIRMATION

This is to confirm that this final year project entitled Effective Faraid System Using Rule-

Base has been prepared and submitted by Harini Binti Harani, with matric number

BTAL16044048 and has found satisfactory in terms of scope, quality, and presentation as

a part of the requirement for the Bachelor of Computer Science in Software Development

in University Of Sultan Zainal Abidin (UniSZA). The research conducted and the writing

of this report was under my supervison.

________________________________

Name :Dr. Ahmad Nazari Bin Mohd Rose

Date : 23rd December 2018

DEDICATION

I am using this opportunity to express my gratitude to everyone who has supported me to

complete my final year project entitled Effective Faraid System using Rule-Based

technique successfully. I am thankful for their aspiring guidance, invaluably constructive

criticism and friendly advice during this project work.

I express my greatest gratitude to my supervisor, Dr. Ahmad Nazari Bin Mohd Rose, who

helps in guiding me throughout my journey in finishing this project. Under his

supervision with a lot of advices, I was able to complete this final year project

successfully. Then, a honorable respect I present to my family especially my parents for

their understanding with my conditions.

I would also love to thanks all my friends and my course mates for supporting me and

gave me an aspiration to improve this project. I would like to thank all the people for their

help whether it was directly or indirectly to complete this project.

ABSTRACT

Faraid case in Malaysia often happens, it will happen when heirs do not understand how

the concept and how to calculate the true faraid based on al quran and hadith. Faraid is

one of the methods to distribute the inheritance to the heirs. It requires some conditions

for division of the property. These requirements are very important to determine the

amount of money the surviving beneficiaries will receive. In Malaysia, we lack expertise

in faraid fields. This system will help users to calculate, about faraid. Faraid's expert also

helped to contribute knowledge in developing this system. In addition, this system can

also display information about faraid. Users can also chat with the admin and ask about

Faraid through this system. in this system Rule Based technique will be used as way to

store and manipulate knowledge to interpret information in a useful way.

ABSTRAK

Kes Faraid di Malaysia sering terjadi, ianya akan terjadi apabila waris tidak faham

bagaimana konsep dan cara mengira faraid yang sebenar berlandaskan al quran dan

hadith. Faraid adalah salah satu kaedah untuk pembahagian harta pusaka kepada waris.

Ia memerlukan beberapa syarat untuk pembahagian harta tersebut. Syarat-syarat ini

sangat penting untuk menentukan setiap jumlah yang akan diperolehi oleh waris yang

masih hidup. Di Malaysia , kita kekurang pakar bidang faraid. Sistem ini akan membantu

pengguna untuk membuat pengiraan , mengenai faraid. Pakar Faraid juga telah

membantu menyumbang ilmu dalam membangunkan sistem ini. Selain itu, sistem ini juga

boleh memaparkan info-info pengetahuan mengenai faraid. Pengguna juga boleh

berbual dengan admin dan bertanyakan mengenai Faraid melalui sistem ini. Teknik

Rule-Base digunakan sebagai salah satu cara menyimpan data dan memanipulasi

maklumat untuk data yang bermakna.

CONTENTS

PAGE

DECLARATION i

CONFIRMATION ii

DEDICATION iii

ABSTRACT iv

LIST OF TABLES viii

LIST OF FIGURES ix

LIST OF ABBREVIATIONS

xi

CHAPTER I INTRODUCTION

1.1 Introduction 1

1.2 Problem statement 2

1.3 Objectives 3

1.4 Scopes 4

1.5 Limitation of Works 5

1.6 Activity and Milestone 6

CHAPTER II LITERATURE REVIEW

2.1 Introduction 7

2.2 Related Research Technique and Tools 8

2.3 Rule Base Reasoning 11

CHAPTER III METHODOLOGY

3.1 Introduction 14

3.2 Project Methodology 15

3.2.1.1 Initial and planning phase

16

3.2.1.2 Requirement Phase 16

3.2.1.3 Analysis and Design Phase

17

3.2.1.4 Implementation Phase 17

3.2.1.5 Testing Phase 18

3.2.1.6 Evaluation Phase 18

3.2.1.7 Deployment Phase 18

3.3 System Requirement 19

3.4 System Design 20

3.4.1 Framework Design 20

3.4.2 Context Diagram (CD) 22

3.4.3 Data Flow Diagram (DFD) 22

3.4.3.1 DFD LEVEL O 22

3.4.3.1 DFD LEVEL 1 25

3.5 Entity Relationship Diagram 29

3.6 Data Dictionary 30

LIST OF TABLES

TABLE TITLE PAGE

1.1 Activity and milestone for FYP I

2.1 Literature review

3.1 Hardware used

3.2 Software Used

LIST OF FIGURES

FIGURE TITLE PAGE

2.1 Rule-Based

2.2 Rule-Based Implemation

3.1 Iterative and incremental model used in development methodology

3.2 Framework for Effective Faraid System

3.3 Context Diagram for Effective Faraid System

3.4 Data Flow Diagram Level 0 for Effective Faraid System

3.5 Data Flow Diagram Level 1 for Manage User

3.6 Data Flow Diagram Level 1 for Manage Administrator

3.7 Data Flow Diagram Level 1 for Manage Conversation

3.8 Data Flow Diagram Level 1 for Manage Faraid’s Info

3.9 Entity Relationship Diagram

3.10 Data Dictionary for Admin

3.11 Data Dictionary for Conversation

3.12 Data Dictionary for Faraid

3.13 Data Dictionary for Faraid’s Info

3.14 Data Dictionary for Public User

LIST OF ABBREVIATIONS/TERMS/SYMBOLS

CD Context Diagram

DFD Data Flow Diagram

ERD Entity Relationship Diagram

FYP Final Year Project

SDLC Software Development Life Cycle

CHAPTER I

INTRODUCTION

1.1 Introduction

Faraid science is one of the chapters in fiqh science. There are three verses of

the Qur'an that talk about faraid. The verses are verses 11,12 and 176 of surah al-Nisa.

As we know, there are many misconceptions about faraid especially in malaysia. There

are many cases of property struggling due to lack of knowledge about faraid. Faraid

experts are also lacking in malaysia. Public users should also meet faraid experts at the

religious offices to find out about faraid. This will make it difficult for users to make

faraid calculations and to ascertain faraid knowledge. Because of that, there is always a

misunderstanding about faraid, while faraid has certain conditions to determine the total

distribution of the inheritance to every heir.

1.2 Problem Statement

Problems arise when a user experiences difficulty in knowing the true value of the

inheritance obtained for each heir. Therefore, it will spend a lot of time and energy

consumption to calculate manually. In addition, users have trouble finding the appropriate

calculations for faraid and do not meet the demand. In addition, faraid experts are less in

malaysia, users need to go to religious offices to make faraid calculations. It will make it

difficult for users with time constraints to hear faraid experts. Finally, people today are

less knowledgeable about faraid. They do not know how to calculate the true value of

faraid and how much of the amount to be earned. They need to keep the calculations in a

harcopy and if the calculations are lost they need to recalculate the faraid.

1.3 Objectives

In general, the purpose of Effective Faraid System is to help user to make Faraid’s

calcution. Besides, it also assisting users to identify the actual calculation and value of

faraid based on the conditions of the prescribed conditions. The objectives are identified

as below to design and Implement a system that helps the public user to calculate and

know basic knowledge of Faraid. Next, to apply rule-based system in the rules of Islamic

inheritance law to clearly defined and measured. Finally, to evaluate the functionality of

the proposed Effective Faraid System.

1.4 Scopes

The scope is going to outline the users and functions of this application system

and makes the implementation easier. The scope of this system is divided into two (2)

which are public user scope and admin scope.

1.4.1 Public user Scope

• The system shall allow the user to register and login into the system.

• The system shall allow the user to update the data.

• The system shall allow the user to fill out preferences to calculate faraid

• The system shall allow the user to add conversation.

• The system shall allow the user to view their history calculation and result of

faraid.

1.4.2 Admin Scope

• The system shall allow the admin to update the data.

• The system shall allow the admin to add conversation or reply conversation from

user.

• The system shall allow the admin to add, update delete faraid’s info.

• The system shall allow the admin to generate the report.

1.5 Limitation of works

i. Real Faraid’s scope is too complex.

ii. Lack of Faraid expert.

iii. Need a real case to study.

iv. Developer need to do more research and field study about Faraid as didn’t have exact

knowledge.

1.6 Activity and Milestone

Table 1.1 and 1.2 below show activity and duration time to complete the

documentation :

1.6.1 Final Year Project (FYP) 1

Table 1.1 : Activity and milestone fot FYP 1

CHAPTER II

LITERATURE REVIEW

2.1 Introduction

This chapter describes and explain the selected literature review about technique used

in the development of a course recommendation system. The purpose of the literature

review is to identify research methods and strategies that may usefully apply in this

project. Previous research or existing system of existing system will also be discussed in

this chapter . It is important to well understand about all information to be considered and

related before develop this proposed system. Therefore, the literature review is carried out

to be used as references in developing the proposed system.

2.2 Related Research Technique and Tools

No. Author/Year Title Objective Technique/

Method

Advantages

1. S Khosyi’ah, M

Irfan, D S

Maylawati2 and

O S Mukhlas

(2018)

Analysis of

Rules for

Islamic

Inheritance

Law in

Indonesia

Using

Hybrid Rule

Based

Learning

The aims of the

study is to use

knowledge of

experts in

Islamic

inheritance and

represent it in the

form of rules

using rule-based

Forward

Chaining (FC)

and Davis-

Putman-

Logemann-

Loveland

(DPLL)

algorithms.

By hybridizing

FC and DPLL

algorithms, the

rules of Islamic

inheritance law

in Indonesia are

clearly defined

and measured

Forward

Chaining

(FC) and

Davis-

Putman-

Logemann-

Loveland

(DPLL)

algorithms.

FC algorithm

provides a

solution to a

problem by

collecting

information.

It is used

when all

conditions

(rules) and

results

(goals)

also simple,

efficient, and

having good

performance

-DPLL

algorithm is

one of

SATisfiable

solver (SAT)

algorithm.

2. Houssen Web Based Expert system is Web Based Web Based

Himeda

Mohammed

Nafed (2009)

Expert

System For

i-Faraid

one of the

importance

Artificial

Intelligence

application. The

design of the

web based expert

system for

Islamic

inheritance laws

are different

from

conventional

computer

program as they

can slove

problem by

mimicking

human

reasoning,relying

on logic ,belief,

rules of thumbs,

opitional and

experience in

Faraid.

System

System act as

an expert on

demand

without

wasting time

-Can save

money by

leveraging

expert

3. Priti Srinivas

Sajja and

Rajendra

Akerkar (2010)

Knowledge-

Based

System for

Development

Describe all

components of

knowledge-

based includes

development and

Knowledge-

Base (Rule

based as

knowledge

representati

Allowing

user to

function at

higher level

-Productive

structure of

KBS. KBS

development

includes

knowledge

representation

using rules

based.

on)

tool, having

knowledge of

more than

one expert

for long

period of

time

4. G. Steven

Tuthill,

Ed.D.Susan

T.Levy (1991)

Knowledge-

Based

Systems – A

manager’s

perspective

Rule-based

system as known

as production

system. These

system represent

the knowledge of

an expert

through a series

of rules. These

rules include IF-

THEN and other

types. Rule-

based system

center on IF

conditions and

THEN action

statements. A

series of IF-

THEN rules used

to reach a

conclusion is

called an

Knowledge-

Base (Rule

based as

knowledge

representati

on)

Rule-based

system are

very effective

for

knowledge

that can be

represented

in a rule

format.

Knowledge

that can be

coded in a

rule format is

declarative

and

procedural

with

associated

certainty

factors

Table 2.1 Literature Review

2.3 Rule Based Reasoning

Rule based is one kind of Artificial Intelligence (AI) where AI has become a very well-

known topic nowdays. Rule-based system can be used to create software that will provide

an answer to a problem in place of a human expert. The term rule in AI can be defined as

an IF-THEN structure that related given information of facts in the IF perts of some

action in the THEN part. A rule provides some description on how to solve a problem.

inference chain

5. Wan Abdul

Halim Wan

Harum (2009)

Pengurusan

dan

Pembahagian

Harta Pusaka

The main point

is about Faraid’s

calculation and

identify the rules

of wealth

distribution as

stated in the

Quran through a

knowledge

acquisition

process with an

expert in Faraid.

- Facts of

faraid and

basic of

faraid and

The Islamic

Law of

Inheritance

-Calculation

and

distribution

of faraid

Figure 2.1 Rule based

A conventional rule-besed expert system consists of four major components.

A rule is nothing but an expression having a set of conditions on the left hand side, which

when evaluated to true can be derived to an action on the right hand side. Any rule

consists of two parts are the IF part called as the antencedent (premise or condition) and

THEN part called the consequent (coclusion or action). A rule can have multiple

antecedents joined by the keywords AND (conjunction), OR (disjunction) or a

combination or both.

Figure 2.2 showns how rule base is implemented in a system.

IF <antecendent > THEN < consequent >

A rule can have multiple antecedents joined by the keyword AND (conjuction), OR

(disjunction) or a combination of both

.

Figure 2.2 Rule-Based Implemation

CHAPTER III

METHODOLOGY

3.1 Introduction

This chapter will discuss about the methodology that used to develop this system.

Hence, the iteration and incremental model is used for Effective Faraid System and it also

explains more detail about every phase that involve in this project development to make

sure this system can be accomplished successfully. Furthermore, it also explains

justification for the use of methods and technique as well as hardware and software

requirement during this project. Besides, this chapter contains Context Diagram (CD),

Data Flow Diagram (DFD) and Entity Relationship Diagram (ERD) to build this

Effective Faraid System.

3.2 Project Methodology

Methodology is a method used to develop a system. A good planning and

methodology must be used to accomplish the objectives of this project. Iterative and

incremental model has been chosen as the methodology to develop this system. The

benefits of iterative and incremental development are it has the opportunity and

improving the product step by step. Hence, it easier to manage risk and can track the

defects at early stages. This avoids the downward flow of the defects. Besides, in iterative

model less time is spent on documenting and more time is given for designing. The

flexibility of the model makes the project easy to implement at a very little cost because

of the frequency of new increments that are produced. Hence, iterative and incremental

model is saving of time and cost. Figure 3.1 below shows the iterative model. This model

follows eight main phases, which are information gathering (analysis), design, prototype,

review, develop, implementation, testing and maintenance.

Figure 3.1: Iterative and incremental model used in development methodology

3.2.1 Phases in Iterative and Incremental model

3.2.1.1 Initial and Planning Phase

During this phase, all the activities will be planned according to the given

period to complete the proposal of the system. Effective Faraid System has been

selected as title of the project besides deciding the added value that wants to be

used. The planning phase is the most important phase since during this phased all

the planning on project development is properly planned. In the planning phase,

the detailed about this proposed system was discussed. Problem statements,

objectives, system’s scope and limitation of work were defined as well. The

background analysis of the Effective Faraid System was conducted by reviewing

the journal.

3.2.1.2 Requirement Phase

In requirement phase, the user and system requirement are identified in

order to develop a complete system. All the data related to the topic is collecting

by referring to the related system such as kFaraid to gather information and

identify the weakness of these current systems. Some research has been done to

get overview about Rule-based techniques by referring to the Internet, newspaper

and books.

3.2.1.3 Analysis and Design Phase

The requirement gathering information will help to gain an inspiration for

design in the analysis and design phase. Design phase is the phase where identify

how to build the system. The Context Diagram (CD), Data Flow Diagram (DFD)

and Entity Relation Diagram (ERD) and framework model are design to represent

the detail in order to describe the operation and flow of the system. Hence, make the

system more clear. During the system development, the interface is design with the

connection to the table database in MySQL PhpMyAdmin.

3.2.1.4 ImplementationPhase

In this phase, all the informal specification is interpreted into formal

specification, which required the design to be translated into code. Effective Faraid

System’s interface is connected to the MySQL database. The implemented of the

design is code using HTML, PHP and JavaScript language. For system process

development, the implementation stage is focused more on Rule-based techniques

and used to be code using PHP language.

3.2.1.5 Testing Phase

In testing phase needs to be done to ensure that the system runs correctly . It

is important to ensure that the functionality of the system are meet the user

requirement. If the error found will be refer back to the background analysis,

modeling and implementation phase in order to understand the problem better and

improve to make a better system. Then the cycle of methodology is repeated until

the project is well functioning.

3.2.1.6 Evaluation Phase

During this phase, the system must be evaluated before deploy it to the end

user. A group of user will be asked to use the system and it is hoped that it will be

user friendly system. However, the problems occurred during the implementation

phase was effected the system which the system was not be evaluated until the last.

3.2.1.7 Deployment Phase

In this phase, the complete system is approved to release to the end user to

implement either the system correct functioning or not. Any changing or missed

requirement may force to redesign the system. This phase also was failed to carry

out if the system is not fulfil the requirement.

3.3 System Requirement

The requirement of hardware and software are the most important part of some

project because it will guide to the successful project. The hardware and software

requirements used in this project are shown in Table 3.1 and 3.2 below :

No. Hardware Specification

1. Laptop Macbook Air

2. Processor 1.4 GHz Intel Core i5

3. Hard disk capacity 128 GB

4. Memory 4 GB 1600 MHz DDR3

Table 3.1: Hardware used in this project

No. Category Software

1. Database Management System (DBMS) phpMyAdmin

2. Application Database Software Xampp for phpAdmin

3. Application Software Sublime 2

Table 3.2: Software used in this project

3.4 System Design

In order to make the development process soother, the flow of the system is

organized. The representation data available in the organization are called conceptual data

modeling. It displays the data structure, regardless the environmental technology

involves. The modeling process involves the graphical representation of the functions and

processes in the system before its being developed. In Effective Faraid System , the

Context Diagram (CD) and Data Flow Diagram (DFD) act as physical design while

Entities Relationship Diagram (ERD) act as logical design.

3.4.1 Framework Design

A framework is a real or conceptual structure intended to serve as a support or

guide for the building of something that expands the structure into something

useful. A framework may be for a set function within a system and how they

interrelate (the layers of an operating system), the layers of an application

subsystem (how communication should be standardized at some level of a

network).

The framework shown in Figure 3.2 below shows how the system will be used by

the user of this system, which are public user and admin of the system. Public user

need to sign up first and login into the system. After that, they have to fill out

preferences to calculate faraid. Besides, they can ask any question about faraid to

admin. Next, for admin, admin need to login first into the system and can manage

faraid’s question from public user. By using the rule-base approach, system will

receive user preferences that insert by public user, then it will generate the result

for faraid from the database.

Figure 3.2: Framework for Effective Faraid System

3.4.2 Context Diagram

The Effective Faraid System consists of two entities, which are admin and

public user. Admin can manage Faraid’s info and Faraid’s question from user.

While public user able to ask any question about Faraid to admin and user can get

faraid calculation results from user’s preferences.

Figure 3.3: Context Diagram for Effective Faraid System

3.4.3 Data Flow Diagram

3.4.3.1 DFD LEVEL 0

The Data Flow Diagram (DFD) Level 0 shows the main processes or functions

involve in the system. The DFD for Effective Faraid System refers to Figure 3.5

below. The Effective Faraid used two (2) entities in DFD level 0 which are admin

and public user.There are six (6) total processes involve in this system which are

manage faraid’s calculation, manage user, manage administror, manage

conversation, manage faraid’s info and generate report. The public user has two

(2) major process which are manage user and manage converasation. The Admin

has three (3) major processes which are manage administraror, manage

conversation and manage faraid’s info.

i. The public user can fill out preferences to calculate faraid and get result for

Faraid. The Faraid detail will be stored in the data store D1 Faraid.

ii. The public user can manage their own profile and will be stored in the data store

D2 User.

iii. The admin can manage their own profile and will be stored in the data store D3

Administrator.

iv. The admin and public user can manage conversation to provide the conversation

detail between them which will be stored in data store D4 Conversation

v. The admin can manage Faraid’s info to provide the Faraid’s knowledge details

which will be stored in the data store D5 Faraid’s info.

vi. The data stored can provide their details to generate report in order producing

report to the admin.

Figure 3.4: Data Flow Diagram Level 0 for Effective Faraid System

3.4.3.2 DFD LEVEL 1

3.4.3.2.1 Manage User

The figure shows the DFD LEVEL 1 for manage user. The public user can add

and update own details. The admin can view user profile. All program will be

stored in user database.

Figure 3.5: Data Flow Diagram Level 1 for Manage User

3.4.3.2.2 Manage Administrator

The figure shows the DFD LEVEL 1 for manage administrator. The admin can

only update own details. All program data will be stored in admin database.

Figure 3.6: Data Flow Diagram Level 1 for Manage Administrator

3.4.3.2.3 Manage Conversation

The figure shows the DFD LEVEL 1 for manage conversation. The public

user can add conversation (question) about faraid. The admin can view public user’s

question and add conversation as reply for the answer to the public user. Public user

and admin can delet their conversation. All program data will be stored in

coversation database.

Figure 3.7: Data Flow Diagram Level 1 for Manage Conversation

3.4.3.2.4 Manage Faraid’s Info

The figure shows the DFD LEVEL 1 for manage Faraid’s info. The admin

can add, update and delete faraid’s info details. All program data will be

stored in faraid’s info database.

Figure 3.8: Data Flow Diagram Level 1 for Manage Faraid’s Info

3.5 ENTITY RELATIONSHIP DIAGRAM

The Entity Relationship Diagram (ERD) is a graphical representation of an

information system that shows the relationship between people, objects,

places, concepts or event within the system. The ERD of Effective Faraid

System project consits of five (5) table entities such as faraid, public user,

admin, conversation and faraid’s info. The ERD of Effective Faraid

System is shown as the Figure 3.8 below

Figure 3.9: Entity Relationship Diagram for Effective Faraid System

3.6 DATA DICTIONARY The database in the main part of the system development because it will store the data that are used by the system. The list of tables involved in this system are list as the table 3.10 until 3.14 below :

Figure 3.10: Data Dictionary for admin

Figure 3.11: Data Dictionary for conversation

Figure 3.12: Data Dictionary for faraid

Figure 3.13: Data Dictionary for Faraid’s Info

Figure 3.14: Data Dictionary for public user