Вы находитесь на странице: 1из 58

A Final Year Project Report on:

“Data mining using apriori algorithm for E-


ration smart card ”

Submitted by:

Under guidance of:

Mrs.

Department of Computer Engineering

XYZ OF ENGINEERING
2014-2015
CERTIFICATE
1
This is to certify that the pre report on the project entitled

“Data mining using Apriori algorithm for E-


ration smart card ”
Submitted by:

A partial fulfillment for BACHELOR OF COMPUTER ENGINEERING degree


course of Mumbai University for year 2014-2015
.

INTERNAL GUIDE HOD


(Prof. ) (Prof.)

INTERNAL EXAMINER PRINCIPAL

EXTERNAL EXAMINER

2
ACKNOWLEDGEMENT

No project is ever complete without the guidance of those expert how have
already traded this past before and hence become master of it and as a result, our
leader. So we would like to take this opportunity to take all those individuals how
have helped us in visualizing this project.

We express our deep gratitude to our project guide Mrs. for providing
timely assistant to our query and guidance that she gave owing to her experience in
this field for past many year. She had indeed been a lighthouse for us in this
journey.

We would also take this opportunity to thank our project co-ordinate Mr. for
his guidance in selecting this project and also for providing us all this details on
proper presentation of this project.

We extend our sincerity appreciation to all our Professor form COLLEGE


OF ENGINEERING for their valuable inside and tip during the designing of the
project. Their contributions have been valuable in so many ways that we find it
difficult to acknowledge of them individual.

We also great full to our HOD Mrs. for extending her help directly and
indirectly through various channel in our project work.

Thanking You,
________________

3
ABSTRACT

India’s Public Distribution System (PDS) is the largest retail system in the world. Public
distribution system provides a ration card issued under an order or authority of the State
Government for the purchase of essential consumer materials like rice, wheat, kerosene and oil.
State Government issues distinctive ration cards like yellow ration card, saffron ration card, and
white ration card depending on family annual income. The consumer material is supplied to
ration card holders in the first week of every month by ration shopkeeper.

Public Distribution System is one of the widely controversial issues that involve
malpractice. The manual intervention in weighing of the materials leads to inaccurate
measurements and/or it may happen, the ration shop owner illegally uses consumer materials
without prior knowledge of ration card holders. The proposed system aids to control malpractices
which are present in ration shop by replacing manual work with automatic system based on
RFID. Every consumer i.e. family head provided RFID card which acts as ration card.

The RFID card has unique identification number. The consumer scans the card on RFID
reader which is interfaced with microcontroller kept at ration shop. Once consumer is validated
by details, the system shows customer’s product and cost. Based on material chosen by
consumer, appropriate circuitry will be activated and consumer gets material through dummy
Payment gateway. The proposed RFID based automatic ration shop system would bring
transparency in public distribution system and become helpful to prevent malpractices.Apriori
algo used for support confidence

4
INDEX
SR.NO TITLE PG.NO

1
1) INTRODUCTION
5
2) LITERATURE SURVEY
8
3) PROBLEM DEFINITION
11
4) REQUIREMENT ANALYSIS
13
5) PLANNING AND ESTIMATION
15
6) ALGORITHM
22
7) IMPLEMENTATION
27
8) ADVANTAGES & DISADVANTAGES
29
9) FUTURE MODIFICATIONS
31
10) APPLICATION
33
11) BIBLIOGRAPHY
61
12) SCREENSHOTS

13) SOURCE CODE

5
Chapter 1

INTRODUCTION

6
In urban areas, kerosene is supplied to ration card holders in the first week of every
month and the ration shop keepers are taking keen steps to distribute kerosene to cardholders a
minimum of three or four days a week. The Indian ration card is mainly used for purchasing
capitalized food and fuel for example fuel. It is an important livelihood tool for the poor people,
providing proof of identity and a connection with government databases. The present ration
distribution system has drawbacks like inaccurate quantity of goods, low processing speed, large
waiting time, material theft in ration shop. The proposed system replaces the manual work in
ration shop. RFID means Radio Frequency Identification technique is used to prevent the ration
forgery. Now a day this process is online which comes as blessing for the applicants who hate
standing for long time in queues for filling the application form and then go to the office again to
know the status. In this each user will be having RFID based ration card which contain user
information including Bank details. These cards having unique numbers. Whenever user want to
buy some grocery he must show his RFID based ration card to shopkeeper. Each ration shop
contain RFID reader which reads RFID ration card, RFID reader used to check user valid or not.
The biometrics will be used in this system. It works for an identification of user. It stores
fingerprints of users to database. This new produced system will cover the human efforts and
also the fraud is detected in that system and the forgery is also remove.

RFID:
Radio Frequency identification is a technology for non-contact and automated
identification. It is a concept in which unique items are identified by using radio waves.
RFID systems are built up of three components: 1. Readers (interrogators) 2. Antennas
and 3. Tags (transponders) that take the data on a small microchip. Now a day's RFID
technology is used in many applications, including security and access control,
transportation and supply chain tracking etc. Many types of RFID exist, but at the
highest level, The RFID devices are divided into two broad classes: Active and Passive. ·
Passive tags are not embedded with and its working distance can reach up to 1 mile. ·
Active tags are embedded with batteries its working range can reach as far as several
hundred miles. · The other one is called Semi-passive tag, and its working range can
extend up to 10 miles. Two types of chips are available on RFID tags, Read-Only and

7
Read-Write. Read only chips are fixed during the manufacturing process with unique
information stored on them. The information which is on read-only chips can never be
changed.

Aims of the project:


The aim of the project is to developing a better, efficient ration card system using RFID
technology and apriori algorithm. Our project gives active participation in Step towards Digital
India. E ration card is of distribution system at the ration shop as well as maintaining the
database at one main control station and updating the database so that the shopkeeper does not
cheat the poor people are what this project aims at achieving. The proposed system aids to
control malpractices which are present in ration shop by replacing manual work with automatic
system based on RFID. Every consumer i.e. family head provided RFID card which acts as
ration card.

OBJECTIVE:

The current Ration Allocation System is an offline one. Due to this, corruption is rampant.
Dealers often falsify records for personal benefit. They also provide the ration items of the poor
people at maximum rates which is not justified.There is a lack of transparency between the
dealer and consumer. Due to this problem of dealer the poor people do not get the items as stated
on their ration card. Moreover, there is no complaint system through which the consumers
interests can be protected. Using the Smart Ration Card Automation System which is RFID , we
wish to do away with all these problems and create a system which would be fair and just for all.

8
Chapter 2

LITERATURE
SURVEY

9
Sr No Name Of Paper Author and Publication year Abstract

1. For every Indian family a Ration Card is issued


E-RATION SMART C.Sunitha Ram1 , by Government of India and the families are
CARD FOR DISABLED D.Gayathri2 entitled to receive subsidized food grains as per
the card. Quantities of different items like rice,
PEOPLE wheat, dhal and sugar are fixed for every month
for the families depending upon their income.
Now the Government issued smart card to get
their items from Ration shop. But there is no
indulgence for disabled people. As a solution for
fore mentioned problem this work proposes a
transparent and highly scalable Ration
Distribution System (RDS) is coped with
authentication for Ration Card Holder for
disabled people. Through RDS family
information and ratio of disability provided by
Government is login and registered through
registration process into the RFID (smart) card.
Every time, the authorized disabled person needs
to go through the verification phase and once
verification is done, they can get concession to
collect their items. Therefore dummy smart card
can be avoided with proper log information and
also tracked through RFID. This architecture
replaces the conventional paper ration book by
RFID based smart card. . This paper implements
RFID tag used as an e-ration card in place of a
conventional ration card. This device is similar to
the ticketing machine used by bus conductor or
bank pigmy agent and the e - ration card is
similar to swipe card. Efforts are put together to
facilitate for disabled people to have enhanced
management of public distribution system.
Index Terms - GSM, RFID, Ration Distribution
System (RDS), Disabled people, Disability
Certificate or Identity card.

Internet
A Solution
Chat
to Application:
Reduce
2. Golden Bagul1, Brendon The Rationing distribution system also
Smart Ration Card Desouza2, Tejaswini called public distribution system distributes
Automation System Gaikwad3, Ankush
Panghanti4
food items to the poor. Major commodities
include rice, wheat, sugar and kerosene. In
1,2,3,4Student (UG), this system QR codes will be provided
Department of Computer
instead of current ration cards. Users
Engineering, A.I.S.S.M.S.
College of Engineering, Pune, database is stored which is provided by
S.P.P.U, India. Government. The Smart Card must be
scanned by the customer to show the details
of items allocated by government, and then it
checks customer details with stored data to

10
distribute material in ration shop. Biometric
i.e. Fingerprint scanning will be done for
security and authentication purpose. Key
Words: GSM, Public Distribution System,
QR Code, Smart Card

3. Automated Ration Jinali Goradiaa , Sarthak Ration Distribution System means distribution of
Distribution System Doshib essential commodities to a large number of
a Student at University of people. It is done by the government. Public
Texas, Dallas, distribution system is one of the widely
7825,McCallum Blvd, controversial officers that involves corruption
C00516,Dallas, TX 75252, and illegal smuggling of goods. All these happen
USA. b Technology Analyst,
J.P.Morgan Chase, 128/6, because every job in the ration shop involves
Laud Bhuvan, Road no-24A, manual work and there are no specific high-tech
Jain Society, Sion west, technologies to automate the job. Our main
Mumbai-400022, India. objective here is to automate the process of the
distribution. The classical method involves
customer to tell the person handling the ration
shop outlet, the amount of the commodity
he/she needs and the type too. The person
working then measures the commodity and
gives it to the customer. In our version of the
system, we will develop an embedded system
project where we will have the customer to
input the amount he requires and the system
made will automatically collect that much
amount in a container. It is a new concept which
takes into account the various social, economic
and general aspects relating to technical as well
as day to day disciplines. © 2015 The Authors.
Published by Elsevier B.V. Peer-review under
responsibility of scientific committee of
International Conference on Advanced
Computing Technologies and Applications
(ICACTA-2015).

Keywords: Automate; Embedded System;


Automatically Collect

11
Chapter 3

PROBLEM
DEFINITION

12
Problem Definition

To develop a system which can castomize the current offline ration system and establish
transparenc the aged who are lonely.
The system aids to control malpractices which are present in ration shop by replacing manual
work with automatic system based on RFID. Every consumer i.e. family head provided RFID
card which acts as ration card.

Existing System
In existing system, ration card ration details are insert manually.Lots of inaccuracy in
existing system. No algorithm used for calculation in support n confidence.
In existing system, lot of fraud happen in ration.

Proposed System

The proposed system replaces the manual work in ration shop. RFID means Radio
Frequency Identification technique is used to prevent the ration forgery. Now a day this process
is online which comes as blessing for the applicants who hate standing for long time in queues
for filling the application form and then go to the office again to know the status. In this each
user will be having RFID based ration card which contain user information including Bank
details. These cards having unique numbers. Whenever user want to buy some grocery he must
show his RFID based ration card to shopkeeper. Each ration shop contain RFID reader which
reads RFID ration card, RFID reader used to check user valid or not.

13
Advantages of Proposed system

• No information loss
• Efficiency
• Extendibility
• Structure and Properties
• Flexibility

 User Friendly.
 Access to authorized person only.
 Reduce Corruption
 Active contribution towards step towards digital India.

14
Chapter 4

HARDWARE &
SOFTWARE
REQUIREMENT

15
Hardware and Software requirements

Hardware specification:

Processor: Pentium 4

RAM: 4 GB or more

Hard disk: 16 GB or more

RFID reader

Software Specification:

JAVA JDK1.7

Net Beans IDE.

java

16
Technologies Used:-

JAVA:

Java is a computer programming language that is concurrent, class-based, object-


oriented, and specifically designed to have as few implementation dependencies as possible. It is
intended to let application developers "write once, run anywhere" (WORA), meaning that code
that runs on one platform does not need to be recompiled to run on another. Java uses
an automatic garbage collector to manage memory in the object lifecycle. The programmer
determines when objects are created, and the Java runtime is responsible for recovering the
memory once objects are no longer in use. Once no references to an object remain,
the unreachable memory becomes eligible to be freed automatically by the garbage collector.

MySQL:

MySQL is well known as world’s most widely used open-source database (back-end). It
is most supportive database for PHP as PHP-MySQL is most frequently used open-source
scripting database pair. The user-interface which WAMP, LAMP and XAMPP servers provide
for MySQL is easiest and reduces our work to a large extent.

Apriori algorithm

General Process Association rule generation is usually split up into two separate steps:

1. First, minimum support is applied to find all frequent item sets in a database.

2. Second, these frequent item sets and the minimum confidence constraint are used to form
rules.

While the second step is straight forward, the first step needs more attention.

Finding all frequent itemsets in a database is difficult since it involves searching all possible
itemsets (item combinations). The set of possible itemsets is the power set over I and has size 2n
− 1 (excluding the empty set which is not a valid itemset). Although the size of the powerset

17
grows exponentially in the number of items n in I, efficient search is possible using the
downward-closure property of support (also called anti-monotonicity) which guarantees that for
a frequent itemset, all its subsets are also frequent and thus for an infrequent itemset, all its
supersets must also be infrequent. Exploiting this property, efficient algorithms (e.g., Apriori and
Éclat) can find all frequent itemsets.

Apriori uses breadth-first search and a tree structure to count candidate item sets efficiently. It
generates candidate item sets of length k from item sets of length k − 1. Then it prunes the
candidates which have an infrequent sub pattern. According to the downward closure lemma, the
candidate set contains all frequent k-length item sets. After that, it scans the transaction database
to determine frequent item sets among the candidates. Apriori, while historically significant,
suffers from a number of inefficiencies or trade-offs, which have spawned other algorithms.
Candidate generation generates large numbers of subsets (the algorithm attempts to load up the
candidate set with as many as possible before each scan). Bottom-up subset exploration
(essentially a breadth-first traversal of the subset lattice) finds any maximal subset S only after
all 2 | S | − 1 of its proper subsets.

Sample usage of Apriori algorithm

A large supermarket tracks sales data by Stock-keeping unit (SKU) for each item, and thus is
able to know what items are typically purchased together. Apriori is a moderately efficient way
to build a list of frequent purchased item pairs from this data. Let the database of transactions
consist of the sets {1,2,3,4}, {1,2,3,4,5}, {2,3,4}, {2,3,5}, {1,2,4}, {1,3,4}, {2,3,4,5}, {1,3,4,5},
{3,4,5}, {1,2,3,5}. Each number corresponds to a product such as "butter" or "water". The first
step of Apriori is to count up the frequencies, called the supports, of each member item
separately:

18
We can define a minimum support level to qualify as "frequent," which depends on the context.
For this case, let min support = 4. Therefore, all are frequent. The next step is to generate a list of
all 2-pairs of the frequent items. Had any of the above items not been frequent, they wouldn't
have been included as a possible member of possible 2-item pairs. In this way, Apriori prunes the
tree of all possible sets. In next step we again select only these items (now 2-pairs are items)
which are frequent (the pairs written in bold text):

We generate the list of all 3-triples of the frequent items (by connecting frequent pair with
frequent single item).

The algorithm will end here because the pair {2,3,4,5} generated at the next step does not have
the desired support.

We will now apply the same algorithm on the same set of data considering that the min support
is 5. We get the following results:

19
The algorithm ends here because none of the 3-triples generated at Step 3 have de desired
support.

20
Using above data we can recommend new packages for user. Using naive bayes classification
algorithm we can find support and recommend to user for new packages
ex 1. In above example we can recommend 10,000 cost packages for u1.

21
Chapter 5

PLANNING AND
ESTIMATION

22
Software development Life Cycle

The entire proj ect spanned for duration of 6 months. In order to effectivel y
design and develop a cost -effective model the Waterfall model was practiced.

Requirement gathering and Analysis phase:

This phase started at the beginning of our proj ect, we had for med groups
and modularized the proj ect. Important point s of consideration were

23
1. Define and visuali ze all the obj ectives clearly.

2. Gather requirement s and evaluate them

Consider the technical requirements needed and then collect technical


specifications of various peripheral components (Hardware) required.

3. Anal yze the coding languages needed for t he proj ect.

4. Define coding strat egies.

5. Anal yze future r isks / problems.

6. Define strategies to avoid this risks else define alternate solutions to this risks.

7. Check financial feasibility.

8. Define Gantt charts and assi gn ti me span for each phase.

By studying the proj ect extensivel y we developed a Gantt c hart t o track and
schedule the proj ect. Below is the Gantt chart of our proj ect.

24
TimeLine
Please make changes as per your requirement
19/08/ 24/08/201 08/10 08/ 08/
To 5 To To 10 10
Task ID Start Date Finish Duratio 30/07/2015 26/08/ 27/08/2015 07/10/201 15/10 To To
Name Date n To 15 To 5 15/ 15/
19/08/2015 23/09/2015 10 10

Require 1 29/07/15 19/08/15 3 Weeks


ment
Gatheri
ng

Proble 2 12/08/15 26/08/15 1 Week


m
Definiti
on

Literatu 3 19/08/15 02/09/15 4 Weeks


re
Survey

Analysi 4 02/09/15 02/09/15 2 Week


s

Flow 5 16/09/15 02/09/15 1 Week


Chart

Block 6 30/09/15 07/10/15 2 weeks


Diagra
m

H/W 7 07/10/15 07/10/15 1 week


Specific
ation

S/W 8 07/10/15 07/10/15 1 week


Specific
ation

25
Cost Estimation

Cost estimation is done using cocomo model

cost Drivers Ratings


Very Low Nominal High Very Extra
Low High High
Product attributes
Required software reliability 0.75 0.88 1.00 1.15 1.40
Size of application database 0.94 1.00 1.08 1.16
Complexity of the product 0.70 0.85 1.00 1.15 1.30 1.65
Hardware attributes
Run-time performance constraints 1.00 1.11 1.30 1.66
Memory constraints 1.00 1.06 1.21 1.56
Volatility of the virtual machine environment 0.87 1.00 1.15 1.30
Required turnabout time 0.87 1.00 1.07 1.15

Personnel attributes
Analyst capability 1.46 1.19 1.00 0.86 0.71
Applications experience 1.29 1.13 1.00 0.91 0.82

26
Software engineer capability 1.42 1.17 1.00 0.86 0.70
Virtual machine experience 1.21 1.10 1.00 0.90
Programming language experience 1.14 1.07 1.00 0.95
Project attributes
Use of software tools 1.24 1.10 1.00 0.91 0.82
Application of software engineering methods 1.24 1.10 1.00 0.91 0.83
Required development schedule 1.23 1.08 1.00 1.04 1.10

The Intermediate Cocomo formula now takes the form:

E=ai(KLoC)(bi).EAF

Using above calculation we found that the total time period of the project is around 6
months, the per month cost comes out to be Rs.12, 000/- so the total comes to be Rs.72, 000/-

FEASIBILITY STUDY
:- Feasibility study is made to see if the project on completion will serve the purpose of
the organization for the amount of work, effort and the time that spend on it. Feasibility study
lets the developer foresee the future of the project and the usefulness. A feasibility study of a
system proposal is according to its workability, which is the impact on the organization, ability
to meet their user needs and effective use of resources. Thus when a new application is proposed
it normally goes through a feasibility study before it is approved for development.
The document provide the feasibility of the project that is being designed and lists
various areas that were considered very carefully during the feasibility study of this project such
as Technical, Economic and Operational feasibilities. The following are its features:

TECHNICAL FEASIBILITY
The system must be evaluated from the technical point of view first. The assessment of
this feasibility must be based on an outline design of the system requirement in the terms of
input, output, programs and procedures. Having identified an outline system, the investigation

27
must go on to suggest the type of equipment, required method developing the system, of running
the system once it has been designed.
 Technical issues raised during the investigation are:
 Does the existing technology sufficient for the suggested one?
 Can the system expand if developed?

The project should be developed such that the necessary functions and performance are
achieved within the constraints. The project is developed within latest technology. Through the
technology may become obsolete after some period of time, due to the fact that never version of
same software supports older versions, the system may still be used. So there are minimal
constraints involved with this project. The system has been developed using Java the project is
technically feasible for development.

ECONOMIC FEASIBILITY
The developing system must be justified by cost and benefit. Criteria to ensure that effort
is concentrated on project, which will give best, return at the earliest. One of the factors, which
affect the development of a new system, is the cost it would require.
The following are some of the important financial questions asked during preliminary
investigation:

 The costs conduct a full system investigation.


 The cost of the hardware and software.
 The benefits in the form of reduced costs or fewer costly errors.

Since the system is developed as part of project work, there is no manual cost to spend for the
proposed system. Also all the resources are already available, it give an indication of the system
is economically possible for development.

BEHAVIORAL FEASIBILITY
This includes the following questions:

28
 Is there sufficient support for the users?
 Will the proposed system cause harm?

The project would be beneficial because it satisfies the objectives when developed and
installed. All behavioral aspects are considered carefully and conclude that the project is
behaviorally feasible.

RISK ANALYSISPROCESS

Regardless of the prevention techniques employed, possible threats that could arise inside or
outside the organization need to be assessed. Although the exact nature of potential disasters or their
resulting consequences are difficult to determine, it is beneficial to perform a comprehensive risk
assessment of all threats that can realistically occur to the organization. Regardless of the type of threat,
the goals of business recovery planning are to ensure the safety of customers, employees and other
personnel during and following a disaster.

The relative probability of a disaster occurring should be determined. Items to consider in


determining the probability of a specific disaster should include, but not be limited to: geographic
location, topography of the area, proximity to major sources of power, bodies of water and airports,
degree of accessibility to facilities within the organization, history of local utility companies in providing
uninterrupted services, history of the area’s susceptibility to natural threats, proximity to major highways
which transport hazardous waste and combustible products. Potential exposures may be classified as
natural, technical, or human threats. Examples include:

 Natural Threats: internal flooding, external flooding, internal fire, external fire, seismic
activity, high winds, snow and ice storms, volcanic eruption, tornado, hurricane,
epidemic, tidal wave, typhoon.

 Technical Threats: power failure/fluctuation, heating, ventilation or air conditioning


failure, malfunction or failure of CPU, failure of system software, failure of application
software, telecommunications failure, gas leaks, communications failure, nuclear fallout.

29
 Human Threats: robbery, bomb threats, embezzlement, extortion, burglary, vandalism,
terrorism, civil disorder, chemical spill, sabotage, explosion, war, biological
contamination, radiation contamination, hazardous waste, vehicle crash, airport
proximity, work stoppage (Internal/External), computer crime.

All locations and facilities should be included in the risk analysis. Rather than attempting to
determine exact probabilities of each disaster, a general relational rating system of high, medium and low
can be used initially to identify the probability of the threat occurring. The risk analysis also should
determine the impact of each type of potential threat on various functions or departments within the
organization. A Risk Analysis Form, found here(PDF Format), can facilitate the process. The functions or
departments will vary by type of organization. The planning process should identify and measure the
likelihood of all potential risks and the impact on the organization if that threat occurred.

To do this, each department should be analyzed separately. Although the main computer system
may be the single greatest risk, it is not the only important concern. Even in the most automated
organizations, some departments may not be computerized or automated at all. In fully automated
departments, important records remain outside the system, such as legal files, PC data, software stored on
diskettes, or supporting documentation for data entry. The impact can be rated as: 0= No impact or
interruption in operations, 1= Noticeable impact, interruption in operations for up to 8 hours, 2= Damage
to equipment and/or facilities, interruption in operations for 8 - 48 hours, 3= Major damage to the
equipment and/or facilities, interruption in operations for more than 48 hours. All main office and/or
computer center functions must be relocated. Certain assumptions may be necessary to uniformly apply
ratings to each potential threat.

Following are typical assumptions that can be used during the risk assessment process:

1. Although impact ratings could range between 1 and 3 for any facility given a specific set of
circumstances, ratings applied should reflect anticipated, likely or expected impact on each area.

2. Each potential threat should be assumed to be “localized” to the facility being rated.

30
3. Although one potential threat could lead to another potential threat (e.g., a hurricane could spawn
tornados), no domino effect should be assumed.

4. If the result of the threat would not warrant movement to an alternate site(s), the impact should be rated
no higher than a “2.”

5. The risk assessment should be performed by facility. To measure the potential risks, a weighted point
rating system can be used.

Functional requirement

In software engineering, a functional requirement defines a function of a software system or its


component. A function is described as a set of inputs, the behavior, and outputs (see also software).
Functional requirements may be calculations, technical details, data manipulation and processing and
other specific functionality that define what a system is supposed to accomplish. Behavioral requirements
describing all the cases where the system uses the functional requirements are captured in use cases.

Functional requirements are supported by non-functional requirements (also known as quality


requirements), which impose constraints on the design or implementation (such as performance
requirements, security, or reliability). Generally, functional requirements are expressed in the form
"system must do <requirement>", while non-functional requirements are "system shall be
<requirement>". The plan for implementing functional requirements is detailed in the system design. The
plan for implementing non-functional requirements is detailed in the system architecture.

As defined in requirements engineering, functional requirements specify particular results of a


system. This should be contrasted with non-functional requirements which specify overall characteristics

31
such as cost and reliability. Functional requirements drive the application architecture of a system, while
non-functional requirements drive the technical architecture of a system.

Non-functional requirement

In systems engineering and requirements engineering, a non-functional requirement is


a requirement that specifies criteria that can be used to judge the operation of a system, rather than
specific behaviors. This should be contrasted with functional requirements that define specific behavior or
functions. The plan for implementing functional requirements is detailed in the system design. The plan
for implementing non-functional requirements is detailed in the system architecture.

In general, functional requirements define what a system is supposed to do whereas non-


functional requirements define how a system is supposed to be. Functional requirements are usually in the
form of "system shall do <requirement>", while non-functional requirements are "system shall be
<requirement>".

Non-functional requirements are often called qualities of a system. Other terms for non-functional
requirements are "constraints", "quality attributes", "quality goals", "quality of service requirements" and
"non-behavioral requirements".

32
Chapter 6

TESTING

33
Testing

Software testing methods are traditionally divided into black box testing and white box
testing. These two approaches are used to describe the point of view that a test engineer takes
when designing test cases.

Black box testing


Black box testing treats the software as a "black box"—without any knowledge of
internal implementation. Black box testing methods include: equivalence partitioning, boundary
value analysis, all-pairs testing, fuzz testing, model-based testing, traceability matrix, exploratory
testing and specification-based testing.

 Specification-based testing:

Specification-based testing aims to test the functionality of software according to the


applicable requirements. Thus, the tester inputs data into, and only sees the output from, the test
object. This level of testing usually requires thorough test cases to be provided to the tester, who
then can simply verify that for a given input, the output value (or behavior), either "is" or "is not"
the same as the expected value specified in the test case. Specification-based testing is necessary,
but it is insufficient to guard against certain risks.

 Advantages and disadvantages:

The black box tester has no "bonds" with the code, and a tester's perception is very
simple: a code must have bugs. Using the principle, "Ask and you shall receive," black box
testers find bugs where programmers do not. But, on the other hand, black box testing has been
said to be "like a walk in a dark labyrinth without a flashlight," because the tester doesn't know
how the software being tested was actually constructed. As a result, there are situations when (1)
a tester writes many test cases to check something that could have been tested by only one test
case, and/or (2) some parts of the back-end are not tested at all.

34
Therefore, black box testing has the advantage of "an unaffiliated opinion," on the
one hand, and the disadvantage of "blind exploring," on the other.

White box testing

White box testing is when the tester has access to the internal data structures and
algorithms including the code that implement these.

Types of white box testing

The following types of white box testing exist:

 API testing (application programming interface) - Testing of the application using Public
and Private APIs
 Code coverage - creating tests to satisfy some criteria of code coverage (e.g., the test
designer can create tests to cause all statements in the program to be executed at least
once)
 Fault injection methods - improving the coverage of a test by introducing faults to test
code paths
 Mutation testing methods
 Static testing - White box testing includes all static testing

Code completeness evaluation

White box testing methods can also be used to evaluate the completeness of a test suite that was
created with black box testing methods. This allows the software team to examine parts of a
system that are rarely tested and ensures that the most important function points have been tested.

Two common forms of code coverage are:

 Function coverage, which reports on functions executed


 Statement coverage, which reports on the number of lines executed to complete the test

They both return code coverage metric, measured as a percentage.

Integration testing
35
Integration testing is any type of software testing, which seeks to verify the interfaces
between components against a software design. Software components may be integrated in an
iterative way or all together ("big bang"). Normally the former is considered a better practice
since it allows interface issues to be localized more quickly and fixed.

Acceptance testing

Acceptance testing can mean one of two things:

1. A smoke test is used as an acceptance test prior to introducing a new build to the main testing
process, i.e. before integration or regression.
2. Acceptance testing performed by the customer, often in their lab environment on their own HW,
is known as user acceptance testing (UAT).

36
Chapter 7

Design &
Implementation

37
System flowchart:
A flowchart is a type of diagram that represents an algorithm or process, showing the steps as
boxes of various kinds, and their order by connecting them with arrows. This
diagrammatic representation illustrates a solution to a given problem. Process operations are represented
in these boxes, and arrows; rather, they are implied by the sequencing of operations. Flowcharts are used
in analyzing, designing, documenting or managing a process or program in various fields.

Start and end symbols

Represented as circles, ovals or rounded (fillet) rectangles, usually containing the word “Start” or
“End”, or another phrase signaling the start or end of a process, such as “submit inquiry” or “receive
product”.

Arrows
Showing “flow of control”. An arrow coming from one symbol and ending at another symbol
represents that control passes to the symbol the arrow points to. The line for the arrow can be solid or
dashed. The meaning of the arrow with dashed line may differ from one flowchart to another and can be
defined in the legend.

Generic processing steps


Represented as rectangles. Examples: “Add 1 to X”; “replace identified part”; “save changes” or
similar.

Subroutines

38
Represented as rectangles with double-struck vertical edges; these are used to show complex
processing steps which may be detailed in a separate flowchart. Example: PROCESS-FILES. One subroutine
may have multiple distinct entry points or exit flows (see coroutine); if so, these are shown as labeled
‘wells’ in the rectangle, and control arrows connect to these ‘wells’.

Input/output
Represented as a parallelogram. Examples: Get X from the user; display X. Prepare conditional
Represented as a hexagon. Shows operations which have no effect other than preparing a value for a
subsequent conditional or decision step (see below).

Conditional or decision
Represented as a diamond (rhombus) showing where a decision is necessary, commonly a
Yes/No question or True/False test. The conditional symbol is peculiar in that it has two arrows coming
out of it, usually from the bottom point and right point, one corresponding to Yes or True, and one
corresponding to No or False. (The arrows should always be labeled.) More than two arrows can be used,
but this is normally a clear indicator that a complex decision is being taken, in which case it may need to
be broken-down further or replaced with the “pre-defined process” symbol.

Junction symbol
Generally represented with a black blob, showing where multiple control flows converge in a
single exit flow. A junction symbol will have more than one arrow coming into it, but only one going out.
In simple cases, one may simply have an arrow point to another arrow instead. These are useful to
represent an iterative process (what in Computer Science is called a loop). A loop may, for example,
consist of a connector where control first enters, processing steps, a conditional with one arrow exiting the
loop, and one going back to the connector. For additional clarity, wherever two lines accidentally cross in

39
the drawing, one of them may be drawn with a small semicircle over the other, showing that no junction
is intended.

Labeled connectors
Represented by an identifying label inside a circle. Labeled connectors are used in complex or
multi-sheet diagrams to substitute for arrows. For each label, the “outflow” connector must always be
unique, but there may be any number of “inflow” connectors. In this case, a junction in control flow is
implied.

Concurrency symbol
Represented by a double transverse line with any number of entry and exit arrows. These symbols
are used whenever two or more control flows must operate simultaneously. The exit flows are activated
concurrently when all of the entry flows have reached the concurrency symbol. A concurrency symbol
with a single entry flow is a fork; one with a single exit flow is a join. It is important to remember to keep
these connections logical in order. All processes should flow from top to bottom and left to right.

40
Flowchart:

41
DFD
A data flow diagram (DFD) is a graphical representation of the flow of data through an
information system. A data flow diagram can also be used for the visualization of data processing
(structured design). It is common practice for a designer to draw a context-level DFD first which shows
the interaction between the system and outside entities. This context-level DFD is then exploded to show
more detail of the system being modeled.

Symbols:

The four components of a data flow diagram (DFD) are:

_ External Entities/Terminators are outside of the system being modeled. Terminators represent where
information comes from and where it goes. In designing a system, we have no idea about what these
terminators do or how they do it.

_ Processes modify the inputs in the process of generating the outputs

_ Data Stores represent a place in the process where data comes to rest. A DFD does not say anything
about the relative timing of the processes, so a data store might be a place to accumulate data over a year
for the annual accounting process.

42
0-Level DFD

43
1-Level DFD

44
Sequence Diagram

45
E-R diagram:

46
Use case Diagram:

47
Class diagram:

User

Name (string)
Password (string)
Emailid (string)
Phone no (string)

Register ()
Database
Login ()
Enter DNA ()
Enter diet ()

Get Predicted Result ()

48
Chapter 7

ADVANTAGES

49
Advantages:

 No information loss
 Efficiency
 Extendibility
 Structure and Properties
 Flexibility

50
Chapter 8

APPLICATION

51
 Person with disability may apply for issue of the IC to the appropriate authority. In the
case of persons with mental retardation, autism, cerebral palsy or multiple disabilities,
application can be made by the legal guardian.

 Ex-servicemen should apply for IC through the Rajya Sainik Board / Zila Sainik Board or
the Army formation HQs on the basis of disability certificate given by competent medical
authority in the defense forces

 Two passport size photographs and residence proof would be required.

52
Chapter 9

FUTURE
MODIFICATIONS

53
FUTURE MODIFICATION

For author/s of more We would like to add partial payment feature through credit cards
debit cards etc all transactions online for the ease of the customers because currently we are
using the cash payment feature only.In the present system we have used limited items in the
database so in the future new items can also be added in the databases.A mobile app can also be
developed so the the users need not every time visit the shop for knowing whether the items are
available at the shop or not

Conclusion:
The proposed system is more secure and transparent than the normal existing system.
Influence of fraud data entry in the ration database can be maintained simply with the use
of this smart ration card system. Only authorized person (shopkeeper) can maintain the
database. Customer can be authenticated using RFID swapping and thumb detection. In
the plan, it is expected that the proposed system will be more transparent, reliable than
the existing ration card system.

54
Chapter 10

BIBILIOGRAPHY

55
Bibliography

[1]. https://www.disabled-world.com/disability/types/
[2]. http://disabilityaffairs.gov.in/content/page/guidelines.php
[3]. Dhanojmohan, Rathikarani, Gopukumar, ”Automation in ration shop using PLC,”
International Journal of Modern Engineering Research,vol.3,Issue 5,Sep-oct 2014, pp2291-
2977,ISSN:2249-6645.

[4] Michelle M Howell, “Databackup and disaster Recovery planning”, CS 5780-System


Administrations,University of Missourie.

[5] Yu Gu, Dongsheg Wang,”DR cloud: Multicloud based disaster Recovery service, vol
19,February 2014.

[6] Yoichiro ueno, Noriharu Miyalo,Shuili Suzuki, “Performance Evaluation of a Disaster


recovery System & practical Application in Cloud Computing.

[7] Elias M. Awad „System Analysis & Design‟.

[8] www.google.com

[9] www.wiki.com

56
Chapter 11

SCREENSHOTS

57
Chapter 12

SOURCE CODE

58

Вам также может понравиться