Barcode Final Report
Barcode Final Report
Barcode Final Report
On Client system:
Login as a Data Entry Operator. Enter Information about Student, Faculty, or Non-teaching staff database on server. View all the records or search for a particular record. and is stored in
On Server system:
Login as an Administrator. View all the records or search for a particular record. Update records on server. Print proper size I-card with barcode for enrollment number for employee Number for faculty and Non-teaching staff I-card.
student
I-card
and
Data Entry Operator can enter information of Student, Faculty or Non-teaching staff along with photo and is stored on server. Records can be viewed from Server machine as well as from client machine. One can get a particular record or set of records by specifying criteria for search. On server side, Administrator can update records. Proper size I-cards can be printed with barcode for security and unique identity. This software makes use of advance features of java such as Swing, Abstract Window Toolkit (AWT), Remote Method Invocation (RMI), and Java Database Connectivity (JDBC).
1.5] Solution:
Barcode devices use some measurable feature of an individual to locate their identity. The devices are built on the premise that student characteristics are unique and cannot be borrowed, misplaced, forged, stolen, duplicated, or forgotten. There are a number of different students characteristics that can be used in barcode .
contained in this document are numbered based on the section/subsection in which they appear. And also can easily maintain data. Our another is make a computerized all college system.
1.7]Objectives of Project:
Provide access to database through remote system Provide security to database Provide security and unique identification through the use of Barcode Provide user friendly interface Provide easy retrieval and updating facility
1.9] Functions:
The system shall work on following points: The flow of the system is started from Barcode. All information of student will store into Student Database. Then also store that all information on MS Access.
Feasibility and risk analysis are related in many ways. If project risk is great, the feasibility of producing quality software is required.
Types of Feasibility Study: 1) Technical Feasibility 2) Economical Feasibility 3) Operational Feasibility 4) Technology and System Feasibility 5) Legal Feasibility 6) Schedule Feasibility
Other feasibility factors:7) Market and real estate feasibility 8) Regional Feasibility 9) Cultural Feasibility 10) Financial Feasibility
Technical Feasibility: Technical analysis begins with an assessment of the technical viability of the proposed system. What technologies are required to accomplish system function and performance? Which other resources (hardware and software) are available to build the system? The system is developed using Core Java.
As this project is not hardware and software intensive so it can be considered as a tenhnically feasible.
Operational Feasibility:This compiler is very easy to operate for any C Programmer as it is made very user friendly by giving proper names to all actions to be performed on any program. This compiler is easy to handle since new programmer have to just click the right option to perform compilation or any other functions on that program. There is no need of special user training to work with this project as it is very user friendly. Hence, from operational point of view this project is much feasible.
Economic Feasibility:It includes an evaluation of development cost weighted against the ultimate income or benefit derived from the developed system or product. The approximate cost of this project will be definitely less than any other software with this kind of reliability, ease, functionality and feasibility since the application does not require any extra hardware or any supporting software. Software required for this project is just C and Java which is made freely available by Sun Microsystems, this project is definitely economically feasible.
Legal Feasibility:The C Compiler Generator comply with all the Legal requirements of this project ie. this system do not conflicts with any legal requirements. So, from legal point of view this project is much feasible.
Schedule Feasibility:A project will fail if it takes too long to be completed before it is useful. Typically this means estimating how long the system will take to develop, and if it can be completed in a given time period using some methods like payback period. The project of C Compiler completed within its time period as only three phases has to be designed like lexical analyzer, syntactic analyzer and parser. So, we can say this project as schedule feasible too.
Activity Diagram:
Library system:
This is our main window. Here two link labels first is goes to I card creation window. Second is Library management window.
After Clicking on the I card creation link label then above window is displayed Here, We provide some Menus like New Entry, Report, etc. We also provides some shortcuts like ctrl+s for student Entry Form.
10
After Clicking on the in Student Form or using shortcut i.e. ctrl + s above window is displayed. Here data entry is done related to student like Name, address, phone no, etc.
11
After saving the data if we want to some changes then we provides update menu. By using this update menu we can update all record of student, faculty and Non-Faculty staff.
Like update menu we provide report menu also using this we can easily find out any information about student, faculty and Non-Faculty staff.
12
We can update the information like here address is changed this is updated.
13
Printing I Card
If we want to print I card then click on to Print ID of menu bar and then select appropriate student, faculty and Non-Faculty staff to print id. Then click on OK button to print I card.
Final I card
14
When barcode is scanned then all fields are filled automatically only we need to give the book code and issue date. And store the details of book issue.
15
Books Database
This window shows the books available in library as well as we update new books.
CDs Database:
Intel Core2Duo Ram 1 GB Hard Disk 320 GB Barcode Reader Device Printer
B] SOFTWARE REQUIREMENTS:-
C] TECHNOLOGIES USED:
17
About Platform
Why Java?
Java is steadily becoming the language of choice for new enterprise-wide development projects. A number of factors have lead to this explosion in Javas popularity as a programming language and in particular as a language for large scale development projects.In the space of just a few years, Java grew from a concept into one of the world's dominant computer languages.
In this project we have used the Java as front end language. Java is platform independent with much more advanced features. The reason behind choosing java is its advanced features: Simple Object oriented Portable Distributed High performance Secure Robust Multithreaded and Dynamic language.
They eliminated the possibility of confusing an assignment with a test for equality in a conditional statement. They eliminated multiple inheritance, replacing it with a new notion of interface that they derived from Objective C. Interfaces give you most of what you want from multiple inheritance, without the complexity that comes with managing multiple inheritance hierarchies.
Back End:
Microsoft Access is one of the most flexible database creation and management software. It uses very compatible format for using databases with Java. The reason behind choosing Microsoft access is its features: Easy storage of data by giving validation criteria. High security of database with password. Easy retrieval and updating of data. Easy retrieval and updating of data.
19
Swing
Swing is a widget toolkit for Java. Swing is set of a class that provides more powerful and flexible component than are possible with the AWT. It is a platform-independent, ModelView-Controller GUI framework for Java. It follows a single-threaded programming model, and possesses the following traits: Platform independence Extensibility Component-oriented Customizable Configurable Lightweight UI Loosely-Coupled/MVC (Model/View/Controller)
20
JDBC driver:
A JDBC driver is a software component enabling a Java application to interact with a database. To connect with individual databases, JDBC (the Java Database Connectivity API) requires drivers for each database. The JDBC driver gives out the connection to the database and implements the protocol for transferring the query and result between client and database. Type 1 Driver - JDBC-ODBC Bridge Driver: Project makes use of Type 1 Driver - JDBC-ODBC Bridge. The JDBC type 1 driver, also known as the JDBC-ODBC Bridge, is a database driver implementation that employs the ODBC driver to connect to the database. The driver converts JDBC method calls into ODBC function calls. The bridge is usually used when there is no pure-Java driver available for a particular database. The JDBC-ODBC Bridge is platform-dependent. Sun provides a JDBC-ODBC Bridge driver. sun.jdbc.odbc.JdbcOdbcDriver. This driver is native code and not Java, and is closed source.
5.2] Barcode
A] What is Barcode?
A barcode is an optical machine-readable representation of data. Originally, bar codes represented data in the widths (lines) and the spacing of parallel lines and may be referred to as linear or 1D (1 dimensional) barcodes. Predefined bar and space patterns or "symbologies" are used to encode small strings of character data into a printed symbol.
The basic structure of barcode generated for enrollment number and employee number of a bar code consists of a leading and trailing quiet zone, a start pattern, one or more data characters, optionally one or two check characters and a stop pattern. It is framed by a start/stop character represented by an asterisk (*).It is variable length symbologies that can encode the following 44 characters:
1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%.
The primary purpose of a bar code is to identify something by labeling the item with a bar code containing a unique number or character string.
22
B] Implementation of Barcode
Barcode is generated according to the predefined table each for particular alphabet and numbers, which is given as below: 0 "000110100", 1 "100100001", 2 "001100001", 3 "101100000", 4 "000110001", 5 "100110000", 6 "001110000", 7 "000100101", 8 "100100100", 9 "001100100", A "100001001", B "001001001", C "101001000", D "000011001", E "100011000", F "001011000", G "000001101", H "100001100", I "001001100", J "000011100", K "100000011", L "001000011", M "101000010", N "000010011", O "100010010", P "001010010", Q "000000111", R "100000110", S "001000110", T "000010110", U "110000001", V "011000001", W "111000000", X "010010001", Y "110010000", Z "011010000", - "010000101", . "110000100", SPACE"011000100", $ "010101000", / "010100010", + "010001010", % "000101010", * "010010100" ; The above sequence of barcode is generated according to the input taken from the user for separate character or number. In this project when user click on the print button in printed window the barcode is generated for the field enrollment number in the student form and employee number for the faculty and non teaching staff form. Canvas class is used to display the Barcode.
23
C] How barcode work To understand how a barcode scanner work, it is important to first understand how barcodes are produced and being read. Each barcode has specific symbols defined as a series of bars in a barcode. The way to differentiate the barcode is by the height and width as well as the bar spacing. Each strip of bar can represent a number, character or alphanumeric character depending on which type of barcode symbology set is used. Usually a barcode contains a start and end bar to denote the starting and ending point of the barcode. Sometimes, there is an additional bar called the checksum bar. The purpose of the checksum bar is used to determine whether the barcode is correct after calculation and ensures the accuracy of the barcode. The barcode scanner's photosensors can then read the barcodes and convert them to electrical pulses. Since each strip of bar is equivalent to a character, the barcode software can easily convert these electrical pulses into readable text that can be displayed on a monitor. This process is actually very fast and only takes a few milliseconds. Nowadays there are many varieties of barcode scanners models. Their usage depends a lot on the type of industry and the work environment. Examples are desktop models, handheld and portable models. One of the most popular type is the wireless barcode scanner. They connect to the base station or workstations wirelessly and can transmit data back to the terminal as long as they are within the wireless range radius. Wireless barcode scanner are often used in the warehouse industry where workers can easily scan a barcode that can be placed in awkward positions or angles. It is also used in industries where goods are often moving from one location to another. Using a wireless barcode scanner allows freedom of movement and thus more efficient.
24
Calculation:Bar codes were created to help grocery stores speed up the checkout process. UPC bar codes,which stand for 'Universal Product Code' were first used in grocery stores. Every store item needs a different code so that it can be scanned correctly. The last digit of a UPC bar code is called the check digit and is calculated by the other 11 digits. For example, if you were to find the check digit for the UPC code 63938200039...: 1.) Add together all the digits in odd positions (1,3,5,7,9,11) 6 + 9 + 8 + 0 + 0 + 9 = 32 2.) Multiply the number by 3 32 x 3 = 96 3.) Add together all the digits in even positions (2,4,6,8,10) 3 + 3 + 2 + 0 + 3 = 11 4.) Add the sum to the value in Step 2 96 + 11 = 107 5.) Take the answer 107. To create the check digit, determine the number that, when added to the number 107, is a multiple of 107 107 + 3 = 110 So, the check digit is 3.
25
26
A] Introduction to RMI
Remote Method Invocation (RMI) enables programmers to create distributed Java-toJava applications, in which the methods of remote Java objects can be invoked from other Java virtual machines, possibly on different hosts. A Java program can make a call on a remote object once it obtains a reference to the remote object, either by looking up the remote object in the bootstrap naming service provided by RMI or by receiving the reference as an argument or a return value. A client can call a remote object in a server, and that server can also be a client of other remote objects.
Client
Server
Stub
Skeleton
Transport Layer
Fig: Java RMI Architecture
27
Initiates a connection with the remote JVM containing the remote object, Marshals (writes and transmits) the parameters to the remote JVM, Waits for the result of the method invocation, Unmarshals (reads) the return value or exception returned, and Returns the value to the caller.
Unmarshals (reads) the parameters for the remote method, Invokes the method on the actual remote object implementation, and
Marshals (writes and transmits) the result (return value or exception) to the caller.
28
D] RMI steps:
The server receives a request from client processes it and returns the result. It has following steps: 1. 2. 3. 4. 5. 6. Enter and compile source code. Generate stubs and skeletons. Install files on client and server machine. Start the RMI registry on the server machine. Start the server. Start the client. Client enters information from remote machine and is stored on database on server machine. Client can view all Records as well as Client can give criteria like branch, enrollment no, branch, admission year, designation, etc from client side for searching particular record from database and server provides that record.
29
java.awt.print package
The java.awt.print package contains following interfaces, classes, and exceptions. Interfaces: Pageable Printable PrinterGraphics Classes: Book PageFormat Paper PrinterJob Exceptions: PrinterAbortException PrinterException PrinterIOException
30
31
TESTING:
Testing is the process of executing the program with the intention of finding the errors .A good test case is one that has probability of detecting previously undiscovered defects following is the testing carried out validation of application for various input combinations.
TEST CASE:
Sr. No.
TEST CONDITION
EXPECTED RESULT
ACTUAL RESULT
Same as Expected
To test whether Proper connection the connection of with SQL is done properly
Same as Expected
32
each line is written properly according to the syntax of language 4 To test whether Action the code of Same as Expected
operations corresponding
done by user are production rule is running successfully when any function is working properly
called. 5 To test whether Administrator the screens & are /Student/Staff are interface screens are
working
Same as Expected
working
linked properly 6
To check whether All the external Same as Expected the support like external support features
Menus are running properly 7 To check for any The user name & Same as Expected type of login the password is shown user name and valid if it is unique is and is greater than than 6 6 characters and than 20 with
password greater
TEST CASE:
Sr. NO
TEST CONDITION
EXPECTED RESULT
is
ACTUAL RESULT
1.
To test whether all the Operation operation in a module properly. are working properly.
2.
are
working successfully.
3.
All
modules
desired web pages as the properly. user wants. 4. To check whether the The access to the system Same as expected. access to the system is as is per the access rights. according to the
34
TEST CASES:
Sr. NO
TEST CONDITION
EXPECTED RESULT
is
ACTUAL RESULT
1.
2.
To test whether whole Input input for the system is properly. properly specified.
is
3.
To test whether the Valid data is shown Same as expected data entries made in through the interface the data base are
35
It include the specific scenario condition including RIGHT or WRONG. B] Specify the Expected Result:
It include observable reaction when test condition are exercised including the system has properly handled the situation . C] Testing with Dummy Data: Inputting dummy data does unit and integrated testing. It Is tested whether each modular operation properly at boundary Condition.
36
APPLICATIONS:
37
FUTURE DEVELOPMENT
1. We can use smart card instead of barcode. 2. We can add Attendance details. 3. We can add Exam details.
38
CONCLUSION
Our aim is to develop an efficient and speedy service system by using Barcode system technique. So we developed such system to prevent many faults and to provide security.
So by using this feature security is provided to a great extent and hence we can reach out to have a far better and organized and protected life ahead. We aim to have a future as beautiful and functional as we ever dream of. So...do you too wish to have such a life..!?? Come and explore it with our technical yet handy and friendly designed service system..!
39
BIBLIOGRAPHY
Web Sites:
Books:
Software Engineering Pressman book The Complete Reference Java2 Herbert Schildt
40