SlideShare a Scribd company logo
1 of 73
Download to read offline
Page 1 of 73
Table of Contents
1. INTRODUCTION OF RFID PROCESS AND ITS FUNCTIONS W.R.T SOFTWARE. ...........6
1.1 ABSTRACT:..........................................................................................................................................6
1.2 INTRODUCTION....................................................................................................................................6
1.3RFID Technology in Libraries ..........................................................................................................6
1.4 COMPONENTS..................................................................................................................................7
1.4.1RFIDTags:.....................................................................................................................................7
1.4.2RFIDReaders:................................................................................................................................8
1.4.4 MICROCONTROLLER: ............................................................................................................10
1.5 DATABASE: .....................................................................................................................................10
2 Modules that are described as follows......................................................................................................11
2.1Module1...........................................................................................................................................11
2.1.1 The Initial Setup........................................................................................................................11
2.2 Module2..........................................................................................................................................11
2.2.1 The Login Process ......................................................................................................................11
2.2.2 The Issue Process........................................................................................................................11
D.2.3 Module 4......................................................................................................................................11
The Return Process ............................................................................................................................11
3.0 About Scope of RFID Technology........................................................................................................11
3.1 Auto-On............................................................................................................................................12
3.2 Features.............................................................................................................................................12
3.3 Differences between RFID and a simple barcode system...................................................................12
4.0 Introduction: .........................................................................................................................................13
4.1 Purpose & Scope..............................................................................................................................13
4.2 Time Management: ..........................................................................................................................14
4.3 Objective:.........................................................................................................................................14
5.0 Tools Used in the Project:.....................................................................................................................14
MYSQLI SERVER v.3.3.2: ....................................................................................................................14
Sublime and Notepad++ latest version: ...................................................................................................14
5.1 Languages used in Software:................................................................................................................14
PHP ........................................................................................................................................................15
SQL ........................................................................................................................................................15
Microsoft Word 2013 latest version.........................................................................................................15
RFID Reader Latest ZKTECO ................................................................................................................15
Existing System..........................................................................................................................................15
Improvements.............................................................................................................................................16
Advantages of RFID systems ..................................................................................................................16
Rapid check-out / check-in ..................................................................................................................16
Simplified patron self check-out / check-in..........................................................................................16
Page 2 of 73
High reliability ....................................................................................................................................16
High-speed inventorying......................................................................................................................17
Automated materials handling .............................................................................................................17
Long tag life........................................................................................................................................17
PROPOSED SYSTEM OF LIBRARY MANAGEMENT SYSTEM.......................................................18
6.1 User Module:.......................................................................................................................................18
6.2 New user register:.................................................................................................................................18
6.3 Student Login:..................................................................................................................................18
6.4 Search book: .....................................................................................................................................18
6.5 Issue Book: .......................................................................................................................................18
6.6 Return Book:.....................................................................................................................................18
Admin Module: ...................................................................................................................................18
Register user ...........................................................................................................................................19
6.7 Issue Book ........................................................................................................................................19
6.8 Librarian: ..........................................................................................................................................19
6.8 Software Requirements:........................................................................................................................20
Front End:...............................................................................................................................................20
Back End: ...............................................................................................................................................20
6.9 Books and its attirbutes:.................................................................................................................20
User:....................................................................................................................................................21
Issue Status:.........................................................................................................................................22
6.10 Return Status: ..............................................................................................................................23
Diagrams:...................................................................................................................................................23
7.0 Use Case Diagram:...........................................................................................................................24
7.1 Class Diagram..................................................................................................................................25
Use case 2 diagram .................................................................................................................................25
7.2 ER Diagrams.....................................................................................................................................27
7.4 Class Diagrams ................................................................................................................................28
7.4.1 Advance Class Diagram .................................................................................................................28
7.5 Activity diagramfor RFID Library Management System....................................................................29
7.6 Sequence diagram templates.............................................................................................................30
7.8 Entity Relationship Diagram advance for library ..............................................................................31
8.0 Phases of Software Development Life Cycle........................................................................................31
8. 1. Planning..........................................................................................................................................31
8.2. Systems Analysis and Requirements.................................................................................................32
8. 3. Systems Design...............................................................................................................................32
8.4. Development....................................................................................................................................32
8.5. Integration and Testing.....................................................................................................................33
8.6. Implementation ................................................................................................................................33
Page 3 of 73
8.7. Operations and Maintenance.............................................................................................................33
8.8 Importance of the SDLC....................................................................................................................33
9.0 Models in Software...............................................................................................................................34
9.1 Waterfall Model ................................................................................................................................34
Waterfall model Diagram ....................................................................................................................35
9.2 V-Shaped Model: ..............................................................................................................................35
V Model diagram.................................................................................................................................35
9.3 Prototype Model ...................................................................................................................................36
9.4 Spiral Model .....................................................................................................................................37
Spiral Model has four phases:..............................................................................................................37
9.5 Which model is use in RFID-LMS........................................................................................................38
9.6 What is Agile? .....................................................................................................................................38
Agile Model - Pros and Cons ..................................................................................................................42
10.0 Software Development Life Cycle ......................................................................................................42
10.1 Defining &Planning and Requirement Analysis...............................................................................42
10.2 Design:............................................................................................................................................43
10.3 Coding/Implimentation...................................................................................................................43
Code For RFID-LMS Dashboard and Sign in and sign Up page..................................................................44
Code for Book retrieve the book:................................................................................................................45
Coding Techniques.....................................................................................................................................46
STRUCTURED PROGRAMMING........................................................................................................46
PROGRAMMING STYLE .....................................................................................................................47
INTERNAL DOCUMENTATION..........................................................................................................47
CODING ................................................................................................................................................48
CODING STANDARD AND GUIDELINES .........................................................................................48
REPRESENTATIVE CODING STANDARDS ......................................................................................48
REPRESENTATIVE CODING GUIDELINES.......................................................................................48
NAMES..................................................................................................................................................49
VARIABLES..........................................................................................................................................49
Coding Walkthroughs .............................................................................................................................49
CODE INSPECTION..............................................................................................................................49
SUMMARY ...............................................................................................................................................50
11.1 Screen Short for RFID-LMS ...............................................................................................................51
Login & Signup: Introduction and code...................................................................................................51
Code For student Registration/login page....................................................................................................52
11.3 Dashboard with all related Features and Menu:..............................................................................54
Description..........................................................................................................................................54
11.4 Student Registered Page:....................................................................................................................54
11.4 Student Registration page Register students: .......................................................................................55
Page 4 of 73
11.5 Code For Student Registration Page:..................................................................................................56
11.6 Website Preview ................................................................................................................................58
This is my website for RFID-LMS System..............................................................................................58
Screen Shot for Books Register w.r.t rfid / isbn number that are unique for each book.........................60
Issue Books by RFID. .............................................................................................................................61
Returning the books by RFID .................................................................................................................62
Software Quality and software attributes.....................................................................................................63
What Are The Quality Attributes?...........................................................................................................63
Reliability............................................................................................................................................63
Maintainability........................................................................................................................................................63
Correctness:.........................................................................................................................................63
Learnability: Learnability of a software system depends on: ................................................................64
Robustness: Robustness reduces the impact of operational mistakes, erroneous input data, and hardware
errors...................................................................................................................................................64
Extensibility: .......................................................................................................................................65
TestingEstimationTechniques.......................................................................................................................66
PERT Software Testing Estimation Technique ....................................................................................66
Use-Case Point Method .......................................................................................................................66
Function Point / Testing Point Analysis ...............................................................................................67
Experience-based Testing Estimation Technique .................................................................................67
Software Testing Phase ...........................................................................................................................67
Software validation and verification........................................................................................................68
Advantages of Validation: ...................................................................................................................68
Verification makes sure that the product is designed to deliver all functionality to the customer..............68
Advantages of Software Verification :.....................................................................................................69
Challenges..................................................................................................................................................69
Poorly defined goal.................................................................................................................................69
Unrealistic Deadlines ..............................................................................................................................69
Solution: .................................................................................................................................................70
Conclusion and Summery:..........................................................................................................................72
Conclusion and Thanks...............................................................................................................................73
Page 5 of 73
RFID-SLMS:
A smart
library
system
based
On an RFID
Technology
Page 6 of 73
1. INTRODUCTION OF RFID PROCESS AND ITS FUNCTIONS W.R.T SOFTWARE.
---------------------------------------------------------------------***--------------------------------------------------------------
1.1 ABSTRACT:
Radio Frequency Identification (RFID) mean says that transfers the information
wirelessly, using radio frequency waves. It is automatic identification technology. This
paper is about RFID based Smart Library Management System (SLMS) that allows fast
transaction flow and will make easy to handle the activities like issue and return of books
from the library without much manual intervention. This system is based on RFID readers
and passive RFID tags that are able to store the information electronically which can be
read by the RFID readers.
This system will make users to issue and return of books via RFID tags very easy and also
calculate the corresponding fine associated with the period of time the absence of the book
from the library.
Keywords: RFID Readers; RFID Tags; Methodology; Anti- theft.
1.2 INTRODUCTION
In everyday life, we are using Library. In libraries, working is still done manually. Books
issue, reissue, return all this activities are done by librarian and it also increases the labor
cost. So instead of doing this manually we are creating the system named as Smart Library
Management System.
In this system we are going to design a system in which user can get all information about
name of the books he/she had issued. They will also get to know return date of the book. If
user is not registered then there is option for new registration (signup). The tag is attached
to the each book in the library. These tags have the unique code and because of this
uniqueness in code we are using it for different items. For this smart library management
system we used RFID instead of Bar code due to more advantages over bar code.
1.3RFID Technology in Libraries
A library is a growing system. The problems associated with the maintenance and
securities are used to identify, track, sort or detect library collections at the circulation
desk and in the daily maintenance. This system consists of smart RFID labels, hardware
and software, provides libraries with more effective way of managing their data while
providing greater service. The technology works through thin smart labels, which placed
on the inside cover of each book in a library’s collection. Manual interactions are not
needed for RFID-tag reading. It most care is taken to provide following features to the
Library using RFID technology to minimize the manual intervention and to minimize the
Page 7 of 73
manual errors and to provide fast issuing, reissuing and searching of books.
1.4 COMPONENTS
The RFID based Smart Library Management System consists of following components
A. RFID Tags
B. RFID Reader
C. Microcontroller
D. Database Software
Figure 2.1 RFID Components
1.4.1 RFID Tags:
Tags are thin labels which can be fixed inside a back cover of the book. RFID tags a
remade up of carbonic structure which contains a magnetic trip or coil layer inside the tag
which helps in sensing the tags. In the figure shown, the tag contains a unique serial
number like.
Page 8 of 73
“0600394791” which is used for the authentication of the user.
Figure 2.2 RFID Tags
When we bring the tag in front of the reader of the reader, the reader antenna senses the
tag and checks the unique serial number of the tag. If the tag is registered in the data base
then the reader authenticates the tag otherwise the reader shows an error and gives the
message that the tag is not registered or the tag is not authenticated.
Figure 2.3 RFID Tags Construction
1.4.2 RFID Readers:
RFID readers are used to interrogate data stored in tags. It contains a radio frequency
module, a control unit and an antenna to communicate with electronic tags via radio
signals. The antenna inside the reader generate select magnetic field. When at a passes
through the field, the information stored on the tag is interpreted by the reader and sent to
the database server, which in turn stores or retrieves information about the book’s issue or
return.
Page 9 of 73
Figure 2.4 RFID Reader
Different types of readers are available in market depending on their range and suitable
applications.
 Lowfrequencyreaders-125Khz
 High frequencyreaders-13.56Mhz
 Ultra High frequencyreaders-800-900Mhz
Features:

 -It is a 13.56MHZ non-contact IC reader which is easy and stable to use.
 -Fast in reading the RFID Tags.
 -Plug and play, needn't extra driver.
 -Widely used in many RFID application systems such as personnel identification, logistics, access control,
conference attendance system, anti-counterfeit and industrial production process control system.

Specification:

 Color: Black
 Net Weight: 39g
 Gross Weight: 100g
 Size: 104x70x11mm/4.09"x2.76"x0.43"
 Support MIFARE, 14443A protocol, S50, S70
 Power source: USB
 Interface: USB, 106Kbit/s , (RS232, 9600,N,8,1)
 Working distance: Up to 8 cm
 Frequency: 13.56MHz
 Temperature: -30 degrees Celsius to + 60 degrees Celsius
 Humidity: 5%-95%
 Audio/Visual Indication: LED and buzzer
 SDK: Communication Protocol

Package includes:

 1 x RIFD Card Reader
 1 x USB Cable

Page 10 of 73
1.4.4 MICROCONTROLLER:
In this project, we are going to design a system by which user can use the library smartly.
Major components in our system areas micro controller, Database, RFID readers and RFID
tags. Micro controller has the in built USART support and we will use it to obtain serial
communication for transmitting and receiving the data between RFID readers,
Microcontroller & the Database stored in PC. Also to achieve anti-theft we will interface a
Buzzer and one more RFID reader to the Microcontroller.
1.5 DATABASE:
A database is an organized collection of data. It is the collection of schemas, tables,
queries, reports, views, and other objects. The data are organized to model aspects of
reality in a way that supports processes requiring information
Page 11 of 73
2 Modules that are described as follows
2.1Module1
2.1.1 The Initial Setup
Whenever a book is acquired by the library, an RFID tags are placed into the books with the relevant
information like, call number, author name, and book number, etc. The detailed information
regarding the book is also stored in the computer database. The computer database also stores all
information for individual users (users) of the library. Each user is supplied with registered RFID
cards. These cards carry identification data and details like: address, roll number, and telephone no.
etc. for each user.
2.2 Module2
2.2.1 The Login Process
There is an administrator with special privileges who has a unique master password controlling the GUI of
the RFID SLMS system. As soon as he powers on the system, the first screen displays the LOGIN dialogue
box. First he will need to scan his ID card in front of the RFID reader and then entering the corresponding
password to enable the system for further usage.
2.2.2 The Issue Process
When a user needs to get a book issued , he can get it done without any manual intervention. He
simply needs to scan his RFID card in front of the RFID reader and it automatically opens
his/her login account page. The again he needs to scan the selected books to be issued, one by
one in front of the RFID reader. The computer records all these data against his name. Finally a
message is displayed informing the user that the ISSUE process has been successful. The user
takes the books for a specified time period from the library after which he has to return the books
to the library.
D.2.3 Module 4
The Return Process
When a user want store turn books, he simply places the books again in front of the RFID
connected with the controller and the books are automatically adjusted for return against the
user’s name.
3.0 About Scope of RFID Technology
RFID: What is it? The concept of RFID (Radio Frequency Identification) technology was
developed in 1948 but it has had to wait fifty years before it has been able to deliver on its
or signal promise. The advent of tiny integrated circuits (“chips”) allowed solution
designers to add intelligence to the movement of goods through the supply chain and when
a chip and an aerial were attached to a sticky label the RFID “Tag” was born. RFID was
then conceived, as the name suggests, as a means of enabling tags to identify themselves
Page 12 of 73
to a radio receiver. The tags now come in all shapes and sizes and are attached to a
staggering range of items with a wide range of applications from cars (electronic tolls) to
earrings (brand protection). For some time now they have also been attached to library
books. This document seeks to show how and why this has been done up to now, but more
importantly how it might be done even more effectively in the future. This is a step by step
guide, which will explain what RFID is, how it is used and the benefits which can accrue.
It will also provide a realistic view of the issues around RFID, it will look at how it is best
deployed and warn of any pitfalls so that libraries can access the necessary information to
have meaningful conversations with suppliers. Libraries will then be able to invest in
RFID technology appropriately to suit their needs and to maximize the available benefits.
3.1 Auto-On
It is an Automatic RF Detection technology that automatically checks for presence of a
book. When used with Auto-On –compatible software, the ZK RFID will turn on and scan
books as soon as we touch the device.
3.2 Features
 High-performance , maintenanace-free optical RF Sensor
 Sensor resistant to scratches, impact, vibration and
electrostatic shock
 Auto-On (Automatic Book Placement Detection)
 Smart Capture
 USB Connection
 Removable weighted Stand
3.3 Differences between RFID and a simple barcode system
Many libraries have already installed barcode systems where a barcode is placed in each book and the LMS
Page 13 of 73
(Library Management System) uniquely identifies the book by reading the barcode, using a barcode scanner.
This technology has enabled self service and self return to operate successfully for many years, functions
which have since come to be synonymous with RFID technology. The main differences between using
barcodes or RFID tags are the latter’s ability to issue multiple items simultaneously and to allow items to be
read without having to open them to find the bar codes. Libraries should consider the volumes of items
which will need to be processed either for self-service and self-return and aim for an RFID/ sortation
solution which can cope. A larger library with big volumes could justify a sortation solution perhaps using a
system of conveyors and sorting units etc. A smaller library probably could not justify this investment. RFID
tags and workstations can also identify multi-part sets to detect whether these are complete on return or
issue. This is a useful function of RFID assuming the LMS knows to look for all the parts which make up a
complete item. Another significant difference between barcode and RFID systems is that barcodes use
standards that can be read by most scanners. While RFID transmission protocols are well established tags
are, at present, not governed by similar standards, meaning that some tags may only be read by a specific
reader.
Another important difference between barcodes and RFID is that barcode data is uni-
directional (i.e. you can only read it, not write it). RFID not only reads from, but can also
write information to, the tag. RFID therefore requires an exchange of data.
System Overview: Literature
4.0 Introduction:
An intelligent Library Management System (LMS) based on Radio Frequency Identification (RFID) was
built as a pilot project for the university library. A Graphic al User Interface (GUI) was carefully designed to
support all necessary Library functionalities and user needs.
RFID technology finds a useful and potentially promising application in the field of library science
4.1 Purpose & Scope
RFID (Radio Frequency Identification) technology is an automatic identification system
consisting of a tag and a reader which can communicate with radio waves.
Page 14 of 73
Within the business processes it is possible to read and write the data from and into the
Microchip included tags from long distances. In this way, with lower costs more efficient
process management and monitoring is provided. Today, RFID technology can find a wide
range of application areas in many sectors such as automotive, logistics,
Retail, healthcare and libraries. RFID can provide long term benefits to libraries in Process,
traceability and security.
Radio Frequency Identification (RFID) means a system that transfers the
Information wirelessly, using radio frequency waves. It is automatic identification
technology.
4.2 Time Management:
RFID –SLMS Web Application covers the requirement of the day to day monitoring of the
Book. You can create customized all books reports daily.
4.3 Objective:
 Create a web application to be used in place on old paper based
Library’s Books Management.
 Use MYSQLI SERVER technology ot create strong and
 Secured database connectivity.
 Incorporate the server software within the code.
 Runtime package and deployment instructions are given.
 Latest technology of RFID Device.
5.0 Tools Used in the Project:
MYSQLI SERVER v.3.3.2:
Mysqli Server Management Studio is a software application that is used for configuring,
managing, and administering all components within Microsoft sql server.
The tool includes both script editors and graphical tools with work with objects and features of the
server.
Sublime and Notepad++ latest version:
Sublime Text, Atom, and Notepad++ are all general purpose text editors. They are suited to web
development, with features beyond those available in basic text applications like Notepad. But they
are not as complex or specialized as most IDEs. All three are cross-platform and support a variety of
languages.
5.1 Languages used in Software:
Page 15 of 73
PHP
PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-
purpose scripting language that is especially suited for web development and can be embedded into
HTML.
SQL
SQL is a domain-specific language used in programming and designed for managing data held in a
relational database management system, or for stream processing in a relational data stream
management system
Other languages are:
1. JavaScript
2. CSS
3. HTML
4. Objective C
Microsoft Word 2013 latest version
Microsoft Word 2013 latest version word processor, part of the Office 2013. It boasts improved performance
on the previous version, and more features.
RFID Reader Latest ZKTECO
RFID READER: It communicates with the tags through an RF channel to obtain identifying information.
Depending on the type of tag, this communication may be a simple ping or maybe a more complex multi-
round protocol. In environments with many tags, a reader may have to perform an anti-collision protocol to
ensure that communication conflicts don’t occur. Anti-collision protocols permit readers to rapidly
communicate with many tags in serial order.
ZKTeco is the leader of security and time management solutions, we strive to provide the best products and
services to our users.
Existing System
Page 16 of 73
We have visited GCUF Library.
All the Records are maintained is registers
The lock of consistency in register maintenance leads to both loss of work as well as money and time.
More manual work. In their system first take collect order from customer.
They give registration form from customer with personal and ordered books details.
Then they will ordered them to supplier, supplier supply book transport through and payment the supplier
banking through manual.
Improvements
Before this project, all the library was working by manual and very rare Universities use barcode. Manual
work was very time consumer and costly required people and hardware registers for student registrations.
Barcode system was also costly. Some time we required advance barcode machine that read barcode tag if it
became dim.
User Friendly and Less Paper work .
No manual Registration on Register.
So I through that Radio Frequency Based Identification Project should launched so that it work on waves
form and scan/capture all information of book and students.
This was the reason for development of New Version of RFID-LMS.
Advantages of RFID systems
Rapid check-out / check-in
The use of RFID reduces the amount of time required to perform circulation operations. The most
significant time savings are attributable to the facts that information can be read from RFID tags much faster
than from barcodes and that several items in a stack can be read at the same time. While initially unreliable,
the anti-collision algorithm that allows an entire stack to be check-out or check-in now appears to be
working well.
The other time savings realized by circulation staff are modest unless the RFID tags replace both the EM
security strips or RF tags of older theft detection systems and the barcodes of the library management
system - i.e., the system is a comprehensive RFID system that combines RFID security and the tracking of
materials throughout the library; or it is a hybrid system that uses EM for security and RFID for tracking, but
handles both simultaneously with a single piece of equipment. There can be as much as a 50 percent increase
in throughput. The time savings are less for check-out than for check-in because the time required for check-
out usually is extended by social interaction with patrons.
Simplified patron self check-out / check-in
For patrons using self check out, there is a marked improvement because they do not have to carefully place
materials within a designated template and they can check out several items at the same time.
Patron self check-in shifts that work from staff to patrons. Staff is relieved further when readers are installed
in book-drops.
High reliability
Page 17 of 73
1. The readers are highly reliable. RFID library systems claim an almost 100 percent detection rate
using RFID tags.
2. There is no false alarm than with older technologies once an RFID system is properly tuned.
3. RFID systems encode the circulation status on the RFID tag. This is done by designating a bit as the
"theft" (EAS) bit and turning it off at time of check-out and on at time of check-in. If the material
that has not been properly check-out is taken past the exit sensors, an immediate alarm is triggered.
High-speed inventorying
A unique advantage of RFID systems is their ability to scan books on the shelves without tipping them out
or removing them. A hand-held inventory reader can be moved rapidly across a shelf of books to read all of
the unique identification information. Using wireless technology, it is possible not only to update the
inventory, but also to identify items which are out of proper order.
Automated materials handling
Another application of RFID technology is automated materials handling. This includes conveyer and
sorting systems that can move library materials and sort them by category into separate bins or onto separate
carts. This significantly reduces the amount of staff time required to ready materials for re-shelving.
Long tag life
Finally, RFID tags last longer than barcodes because nothing comes into contact with them. Most RFID
vendors claim a minimum of 100,000 transactions before a tag may need to be replaced.
6.0 System Flow
Page 18 of 73
PROPOSED SYSTEM OF LIBRARY MANAGEMENT SYSTEM
The project Library Management System aims at developing a fully functional computerized system to
maintain all the day to day activity of a library
This project has many features which such as the facility of user login and teachers login. Also on the top of
all this, there is an admin who will be managing the entire application’s authorization and authentication, not
any intruder can login and modify the data, as a login for admin is also available.
The various modules of this system areas:
6.1 User Module:
This module is further divided into various sub-modules describing the user in a better way:
6.2 New user register:
To sign up a new user to this system
6.3 Student Login:
So as to confirm that only an authenticated user is using the project.
6.4 Search book:
The user can search book based on book id, book name, or by author name.
6.5 Issue Book:
To help the user get the required books issued.
6.6 Return Book:
To return the book before the last date without fine, or after the specified time duration with a late fine.
Admin Module:
Page 19 of 73
It is to be operated by the admin with unique id and password. The admin is the person who decides
authentication and authorization for all the different users of the application. It further can be subdivided as:
Register user
6.7 Issue Book
Maintain books in a stack, means record the availability at regular time interval.
6.8 Librarian:
Includes all the library staff who are required to enter the records in the system and keep an eye on the
various activities like the issue of the book, the return of the book, non-availability of books etc. through the
developed system.
Page 20 of 73
6.8 Software Requirements:
Front End:
- Client on Internet: Web Browser, Operating System(any).
- Client on Intranet: Web Brower, Operating System(any).
Back End:
- JavaScript
- PHP
- SQL
- MySQL
- Web Server
- Database Server Apache
- Operating System
6.9 Books and its attributes:
These are the basic building block of this system as well as any library. In other words the main purpose of
any library and the cause to develop systems like this.
Page 21 of 73
Book _Name:
The name of the book which is almost unique in some way.
Book_ Code:
A number to use for sorting and arranging the book, as well as identifying it in the library.
Author:
The one who has written the book. As sometimes the book’s series become more popular by the author’s
name rather than the book name.
Price:
The market value of the book is also required to maintain in the record, as sometimes it is needed to arrange
and sort based on this, secondly, it is also required for compensation in case of loss or damage, as fine
charges.
Quantity:
This is to indicate the availability of each book individually, so as to know whether last copy should be
issued or kept as a reference piece. Also to maintain the number of books.
Rack/addition No:
To get the exact location of the book, so as it becomes easy to search it and sort it at the time of binding up
work.
Published date:
As there are various further division and subcategories of any subject. So, in that case, this is the unique id
to distinguish the books, arrange them, and sort them. Like in computer science there are further many
specialties like core java, advanced java, HTML, html5 etc.
User:
The next is the beneficiary, by whom the library is being accessed and who serves as a purpose for this
system. Its attributes include:
CNIC Number
The name of the student or teacher, who will get the book issued, or who will return the book.
Page 22 of 73
Contact:
This refers to the user’s physical area of residence. It is a composite attribute. As it further contains the
house number and lane number.
Student Name/ Member ship name
To indicate the amount of fine he/she has to deposit and keep it up to date so that he/she is aware of the
payment to be made at the end of the year or session.
Issue Status:
It makes to the notice of the librarian as well as to the student or teacher that ow many books they have
already got issued and how much more can they get at the current point of time. It includes attributes as:
Issue ID
Roll number of Student Name
Book Name:
The name of the book which is almost unique in some way.
Member or student Name
Book Code:
A number to use for sorting and arranging the book, as well as identifying it in the library.
Id:
The user’s unique college or university roll number i.e. the id. The same is applicable to teachers also, with
their unique id. To know which user has been issued the book and for what time limit, that is what time the
user is supposed to return the book, and if not will be charged fine.
Date_Issue:
The date on which user got the book issued to read from it.
Return_Date:
It indicates the date on which user is supposed to be returning the book, that is it is the date after the duration
completed for which the user has been issued the book.
Page 23 of 73
6.10 Return Status:
This tells the library management authority about the status of returned books per user. Whether a particular
user has returned the book or not, on or before the last date. If not, in that case, the fine will be charged from
him/her as a penalty for late submission.
Book_Name:
The name of the book which is almost unique in some way.
Book_Code:
A number to use for sorting and arranging the book, as well as identifying it in the library.
Id:
The user’s unique college or university roll number i.e. the id. The same is applicable to teachers also, with
their unique id. To know which user has been issued the book and for what time limit, that is what time the
user is supposed to return the book, and if not will be charged fine.
Date_Issue:
The date on which user got the book issued to read from it.
Return_Date:
It indicates the date on which user is supposed to be returning the book, that is it is the date after the duration
completed for which the user has been issued the book.
Diagrams:
Page 24 of 73
7.0 Use Case Diagram:
RFID Use Case Diagram for Librarian Student
Use Case Diagram –RFID Library Management System The use case diagram are
usually referred to as behavior diagram used to describe the actions of all user in a
system. All user describe in use case are actors and the functionality as action of system.
Page 25 of 73
7.1 Class Diagram
Library Management System Class ( Class Diagram (UML)) Library management system class diagram
describes the structured class diagram of library management system, their attributes, methods and
relationships among objects.
Use case 2 diagram
Page 26 of 73
For Student, Teacher, Non Teacher and Librarian Use Case Diagram
Librarian register student, book, using RFID Card to publish.
Use Case Diagram – Library Management System
The use case diagram are usually referred to as behavior diagram used to describe the actions of all user in
a system. All user describe in use case are actors and the functionality as action of system.
Page 27 of 73
7.2 ER Diagrams
All Books, Magazines are Published, Returnand Issue withRFID.
Library management system class diagram describes the structured class diagram of library management
system, their attributes, methods and relationships among objects. Class uml teach software uml classless
diagram class diagram template library class library management class.
Page 28 of 73
7.4 Class Diagrams
7.4.1 Advance Class Diagram
Library domain model UML class diagram example describes main classes and for Integrated Library
System (ILS), aka Library Management System (RFID-LMS)
Page 29 of 73
7.5 Activity diagramfor RFID Library Management System.
The activity diagram used to describe flow of activity through a series of actions. Activity diagram is a
important diagram to describe the system
Page 30 of 73
7.6 Sequence diagram templates.
Many project managers and engineers use sequence diagrams in UML to get a better idea
of how tasks within a project will function, overlap, and move between objects or
components. Create sequence diagrams to display interactions between objects and the
order in which those interactions occur.
Page 31 of 73
7.8 Entity Relationship Diagram advance for library
This ER (Entity Relationship) Diagram represents the model of RFID Library Management System Entity.
The entity-relationship diagram of Library Management System shows all the visual instrument of database
tables and the relations between Books, Librarian, Student, Address etc
8.0 Phases of Software Development Life Cycle
Following are the seven phases of the SDLC (System analysis and Planning)
8. 1. Planning
This is the first phase in the systems development process. It identifies whether or not there is the need for a
new system to achieve a business’s strategic objectives. This is a preliminary plan (or a feasibility study) for
a company’s business initiative to acquire the resources to build on an infrastructure to modify or improve a
service. The company might be trying to meet or exceed expectations for their employees, customers and
stakeholders too. The purpose of this step is to find out the scope of the problem and determine solutions.
Resources, costs, time, benefits and other items should be considered at this stage.
Page 32 of 73
Requirement gathering and analysis: Business requirements are gathered in this phase. This phase is the
main focus of the project managers and stake holders. Meetings with managers, stake holders and users are
held in order to determine the requirements like; Who is going to use the system? How will they use the
system? What data should be input into the system? What data should be output by the system? These are
general questions that get answered during a requirements gathering phase. After requirement gathering
these requirements are analyzed for their validity and the possibility of incorporating the requirements in the
system to be development is also studied.
Finally, a Requirement Specification document is created which serves the purpose of guideline for the next
phase of the model. The testing team follows the Software Testing Life Cycle and starts the Test Planning
phase after the requirements analysis is completed.
8.2. Systems Analysis and Requirements
The second phase is where businesses will work on the source of their problem or the need for a change. In
the event of a problem, possible solutions are submitted and analyzed to identify the best fit for the ultimate
goal(s) of the project. This is where teams consider the functional requirements of the project or solution. It
is also where system analysis takes place—or analyzing the needs of the end users to ensure the new system
can meet their expectations. Systems analysis is vital in determining what a business"s needs are, as well as
how they can be met, who will be responsible for individual pieces of the project, and what sort of timeline
should be expected.
There are several tools businesses can use that are specific to the second phase. They include:
 CASE (Computer Aided Systems/Software Engineering)
 Requirements gathering
 Structured analysis
8. 3. Systems Design
The third phase describes, in detail, the necessary specifications, features and operations that will satisfy the
functional requirements of the proposed system which will be in place. This is the step for end users to
discuss and determine their specific business information needs for the proposed system. It"s during this
phase that they will consider the essential components (hardware and/or software) structure (networking
capabilities), processing and procedures for the system to accomplish its objectives.
On receiving system design documents, the work is divided in modules/units and actual coding is started.
Since, in this phase the code is produced so it is the main focus for the developer. This is the longest phase
of the software development life cycle.
8.4. Development
Deployment: After successful testing the product is delivered / deployed to the customer for their use.
Page 33 of 73
As soon as the product is given to the customers they will first do the beta testing. If any changes are
required or if any bugs are caught, then they will report it to the engineering team. Once those changes are
made or the bugs are fixed then the final deployment will happen.
The fourth phase is when the real work begins—in particular, when a programmer, network engineer and/or
database developer are brought on to do the major work on the project. This work includes using a flow
chart to ensure that the process of the system is properly organized. The development phase marks the end of
the initial section of the process. Additionally, this phase signifies the start of production. The development
stage is also characterized by instillation and change. Focusing on training can be a huge benefit during this
phase.
8.5. Integration and Testing
The fifth phase involves systems integration and system testing (of programs and procedures)—normally
carried out by a Quality Assurance (QA) professional—to determine if the proposed design meets the initial
set of business goals. Testing may be repeated, specifically to check for errors, bugs and interoperability.
This testing will be performed until the end user finds it acceptable. Another part of this phase is verification
and validation, both of which will help ensure the program"s successful completion.
8.6. Implementation
The sixth phase is when the majority of the code for the program is written. Additionally, this phase involves
the actual installation of the newly-developed system. This step puts the project into production by moving
the data and components from the old system and placing them in the new system via a direct cutover. While
this can be a risky (and complicated) move, the cutover typically happens during off-peak hours, thus
minimizing the risk. Both system analysts and end-users should now see the realization of the project that
has implemented changes.
8.7. Operations and Maintenance
The seventh and final phase involves maintenance and regular required updates. This step is when end users
can fine-tune the system, if they wish, to boost performance, add new capabilities or meet additional user
requirements.
8.8 Importance of the SDLC
If a business determines a change is needed during any phase of the SDLC, the company might have to
proceed through all the above life cycle phases again. The life cycle approach of any project is a time-
consuming process. Even though some steps are more difficult than others, none are to be overlooked. An
oversight could prevent the entire system from functioning as planned.
Page 34 of 73
Systems development specialists at Innovative Architects possess extensive experience in managing these
type of projects. If you have a situation at your organization and you think a customized software solution
may be what you need, contact us today. Consultants at Innovative Architects will be able to quickly guide
you through each of these steps, ensuring you can have your new system online as soon as possible.
9.0 Models in Software
9.1 Waterfall Model
Waterfall models the very first model that is used in SDLC. It is also known as the linear sequential model.
In this model, the outcome of one phase is the input for the next phase. Development of the next phase starts
only when the previous phase is complete.
 First, Requirement gathering and analysis is done. Once the requirement is freeze then only the
System Design can start. Here in, the SRS document created is the output for the Requirement phase
and it acts as an input for the System Design.
 In System Design Software architecture and Design, documents which act as an input for the next
phase are created i.e. Implementation and coding.
 In the Implementation phase, coding is done and the software developed is the input for next phase
i.e. testing.
 In the testing phase, the developed code is tested thoroughly to detect the defects in the software.
Defects are logged into the defect tracking tool and are retested once fixed. Bug logging, Retest,
Regression testing goes on until the time the software is in go-live state.
 In the Deployment phase, the developed code is moved into production after the sign off is given by
the customer.
 Any issues in the production environment are resolved by the developers which come under
maintenance.
Page 35 of 73
Waterfall model Diagram
9.2 V-Shaped Model:
V- Model is also known as Verification and Validation Model. In this model Verification & Validation goes
hand in hand i.e. development and testing goes parallel. V model and waterfall model are the same except
that the test planning and testing start at an early stage in V-Model.
V Model diagram
Page 36 of 73
9.3 Prototype Model
The prototype model is a model in which the prototype is developed prior to actual software.
Prototype models have limited functional capabilities and inefficient performance when compared to the
actual software. Dummy functions are used to create prototypes. This is a valuable mechanism for
understanding the customers’ needs.
Software prototypes are built prior to the actual software to get valuable feedback from the customer.
Feedbacks are implemented and the proOnce the requirement gathering is done, the quick design is created
and the prototype which is presented to the customer for evaluation is built.
Page 37 of 73
Customer feedback and the refined requirement is used to modify the prototype and is again presented to the
customer for evaluation. Once the customer approves the prototype, it is used as a requirement for building
the actual software. The actual software is build using the Waterfall model approach.
Prototype is again reviewed by the customer for any change. This process goes on till the model is accepted
by the customer.
9.4 Spiral Model
The Spiral Model includes iterative and prototype approach.
Spiral model phases are followed in the iterations. The loops in the model represent the phase of the SDLC
process i.e. the innermost loop is of requirement gathering & analysis which follows the Planning, Risk
analysis, development, and evaluation. Next loop is Designing followed by Implementation & then testing.
Spiral Model has four phases:
 Planning
 Risk Analysis
 Engineering
 Evaluation

(i) Planning:
The planning phase includes requirement gathering wherein all the required information is gathered from the
customer and is documented. Software requirement specification document is created for the next phase.
(ii) Risk Analysis:
Page 38 of 73
In this phase, the best solution is selected for the risks involved and analysis is done by building the
prototype.
For Example, the risk involved in accessing the data from a remote database can be that the data access rate
might be too slow. The risk can be resolved by building a prototype of the data access subsystem.
(iii) Engineering: Once the risk analysis is done, coding and testing are done.
9.5 Which model is use in RFID-LMS
Agile Model: Agile SDLC model separates the product into cycles and delivers a working
product very quickly. This methodology produces a succession of releases. Testing of each
release feeds back info that’s incorporated into the next version. According to Robert Half,
the drawback of this model is that the heavy emphasis on customer interaction can lead the
project in the wrong direction in some cases
Agile SDLC model is a combination of iterative and incremental process models with focus on process
adaptability and customer satisfaction by rapid delivery of working software product. Agile Methods break
the product into small incremental builds. These builds are provided in iterations. Each iteration typically
lasts from about one to three weeks. Every iteration involves cross functional teams working simultaneously
on various areas like −
 Planning
 Requirements Analysis
 Design
 Coding
 Unit Testing and
 Acceptance Testing.
At the end of the iteration, a working product is displayed to the customer and important stakeholders.
9.6 What is Agile?
Agile model believes that every project needs to be handled differently and the existing methods need to be
tailored to best suit the project requirements. In Agile, the tasks are divided to time boxes (small time
frames) to deliver specific features for a release.
Iterative approach is taken and working software build is delivered after each iteration. Each build is
incremental in terms of features; the final build holds all the features required by the customer.
How an Agile team works
Agile project management was developed as an alternative to traditional project management, which is
directed towards a major final deliverable. Agile instead breaks goals down into several independent
products that can be developed, released, and iterated upon quickly.
The two main styles of Agile project management are Scrum and Kanban, which both utilize a board to
visualize tasks in columns of to-do, in progress, and done.
Page 39 of 73
There are a few defining characteristics of an Agile workflow:
 Daily standup – A daily meeting in which contributors and managers discuss what work was done
yesterday, what they’re working on today, and any questions that come up.
 Sprints – Short spans in which products are planned, developed, reviewed, and released. They are
projects within the projects.
 Regular reviews and retrospectives – An Agile team manages itself, but there are built-in measures
to make sure work is being delivered at a consistent quality. Peer review and reviews by managers
occur before tasks get completed and after the sprint is over.
With short task spans and demanding schedules, an Agile workflow requires a coordinated team. Roles have
to be circumscribed enough so that people know what they ought to be doing at all times, yet flexible
enough to allow people to take the initiative and exceed expectations.
A Scrum team is small, lean, and results-driven. The ideal Scrum team is 5-6 people. An Agile team
working in Scrum has three roles:
 The Product Owner – Often an executive or key stakeholder, the Product Owner has a vision for the
end product and a sense of how it will fit into the company’s long-term goals. This person will need
to direct communication efforts, alerting the team to major developments and stepping in to course-
correct and implement high-level changes as necessary.
 The Scrum Master – The Scrum Master is most akin to a project manager. They are guardians of
process, givers of feedback, and mentors to junior team members. They oversee day-to-day
functions, maintain the Scrum board, check in with team members, and make sure tasks are being
completed on target.
 The Team Member – Team members are the makers: front- and back-end engineers, copywriters,
designers, videographers, you name it. Team members have varied roles and skills but all are
responsible for getting stuff done on time and in excellent quality.
9.7 Rules in Agile Model
From Beck, Kent et al. (2001), below are the twelve core principles of the Agile Manifesto:
1. Customer satisfaction through early and continuous delivery of useful software
Customer satisfaction is obtained through early delivery of products to customer for testing and feedback,
through continuous delivery to let customer know the progress and through delivery of values to the
customers by fulfilling the top priority requirements first. The output of each iteration is working code
that can be used to evaluate and respond to changing and evolving user requirements.
2. Welcome changing requirements, even late in development
This places emphasis on responsiveness to change as opposed to tight alignment to approved plans. The
change control process is simplified and no formal documentation and approval required. This is harness
change for the customer’s competitive advantage because it allow fast response to latest changes in
external environment to enhance competitive advantage to emerging opportunities.
3. Frequently Delivered Software(weeks rather than months)
This provides immediate values to the customers by delivering working features. Each iteration or Sprint
should lead to a release of a product. The teams make sure that each feature is fully developed, tested, styled,
Page 40 of 73
and accepted by the product owner before counting it as delivered. The project team activities can be better
structured with the fixed delivery timeframe to focus on delivery of value.
4. Close, daily cooperation between business people and developers
Agile development principles include keeping requirements and documentation lightweight, and
acknowledging that change is a normal and acceptable reality in software development. This makes close
collaboration particularly important to clarify requirements just-in-time and to keep all team members ‘on
the same page’ throughout the development.
5. Projects are built around motivated individuals, who should be trusted
Projects are built around motivated individuals who are given the environment and support they need, and
trusted to get the job done. Team members choose the jobs they are most interested in through self-
organization and not through external management influence. Micromanagement and top-down approach
to management are shunned.
6. Face-to-face conversation is the best form of communication
Obtain direct feedback by going to the source of problem or confusion and use oral communication at the
workplace for the benefit of osmotic communication. Virtual team conversations are facilitated via video
conferencing.
7. Collocation and pair programming
This principle is practiced via colocation and pair programming. Collocation involves collocating a number
of teams in the same open area and pair programming, which entails two programmers sharing a single
workstation (one screen, keyboard and mouse). The programmer at the keyboard is usually called the
"driver", the other, also actively involved in the programming task but focusing more on overall direction is
the "navigator"; it is expected that the programmers swap roles every few minutes or so.
This leads to increase in code quality because "programming out loud" leads to clearer articulation of the
complexities and hidden details in coding tasks, reducing the risk of error or going down blind alleys. It also
yields better diffusion of knowledge among the team. Other benefits include better transfer of skills, large
reduction in coordination efforts, and improved resiliency of a pair to interruptions.
8. Sustainable development, able to maintain a constant pace
Agile methodologies seek work-life balance among the team members and promote happiness by avoiding
burnout or exhaustion. Through close collaboration and by being alert and creative, these
methodologies avoid long nights and weekends, during which people try to undo the errors of unresponsive
planning. The sponsors, developers, and users are able to maintain a constant pace indefinitely.
9. Excellence through Reflection
The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals,
the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. These
retrospective meetings ensure that the lessons learned during the project are put back into the next
iteration.
10. Simplicity—the art of maximizing the amount of work not done—is essential
Page 41 of 73
The Pareto principle or the 80/20 rule is applied. It means that typically 80% of your results may actually
come from only 20% of your efforts! The idea is to focus on the important 20% of effort that gets the
majority of the results. If you have control over the scope, and if speed-to-market is of primary importance,
why not seek to deliver the important 80% of your product in just 20% of the time?
Focus on what are essential to create value to the project and customer not on distractors that do not add
values like components, process, etc.
11. Self-organizing teams
The team is utterly self-managing under the Scrum methodology. It has autonomy and responsibility to meet
the goals of the sprint and is responsible for determining how it will accomplish the work to be completed.
The basic principle is that the team knows best how to carry out the work, not the project manager or human
resources department.
12. Regular adaptation to changing circumstance
This is in contrast to capturing all known requirements and baseline the scope so that any other changes are
subject to change control. Agile Development holds that that requirements emerge and evolve, and that
however much analysis and design you do, this will always be the case because you cannot really know for
sure what you want until you see and use the software. And in the time you would have spent analyzing and
reviewing requirements and designing a solution, external conditions could also have changed.
Page 42 of 73
Agile Model - Pros and Cons
Agile methods are being widely accepted in the software world recently. However, this method may not
always be suitable for all products. Here are some pros and cons of the Agile model.
The advantages of the Agile Model are as follows −
 Is a very realistic approach to software development
 Promotes teamwork and cross training.
 Functionality can be developed rapidly and demonstrated.
 Resource requirements are minimum.
 Suitable for fixed or changing requirements
 Delivers early partial working solutions.
 Good model for environments that change steadily.
 Minimal rules, documentation easily employed.
 Enables concurrent development and delivery within an overall planned context.
 Little or no planning required.
 Easy to manage.
 Gives flexibility to developers.
The disadvantages of the Agile Model are as follows −
 Not suitable for handling complex dependencies.
 More risk of sustainability, maintainability and extensibility.
 An overall plan, an agile leader and agile PM practice is a must without which it will not work.
 Strict delivery management dictates the scope, functionality to be delivered, and adjustments to meet
the deadlines.
 Depends heavily on customer interaction, so if customer is not clear, team can be driven in the wrong
direction.
 There is a very high individual dependency, since there is minimum documentation generated.
 Transfer of technology to new team members may be quite challenging due to lack of
documentation.
10.0 Software Development Life Cycle
10.1 Defining &Planning and Requirement Analysis
Requirement analysis is the most important and fundamental stage in SDLC. It is performed by the senior
members of the team with inputs from the customer, the sales department, market surveys and domain
experts in the industry. This information is then used to plan the basic project approach and to conduct
product feasibility study in the economical, operational and technical areas.
Planning for the quality assurance requirements and identification of the risks associated with the project is
also done in the planning stage. The outcome of the technical feasibility study is to define the various
technical approaches that can be followed to implement the project successfully with minimum risks.
Page 43 of 73
10.2 Design:
In this third phase, the system and software design documents are prepared as per the requirement
specification document.
High-Level Design (HLD)
 Brief description and name of each module
 An outline about the functionality of every module
 Interface relationship and dependencies between modules
 Database tables identified along with their key elements
 Complete architecture diagrams along with technology details
Low-Level Design(LLD)
 Functional logic of the modules
 Database tables, which include type and size
 Complete detail of the interface
 Addresses all types of dependency issues
 Listing of error messages
 Complete input and outputs for every module
10.3 Coding/Implimentation.
Once the system design phase is over, the next phase is coding. In this phase, developers start build the
entire system by writing code using the chosen programming language. In the coding phase, tasks are
divided into units or modules and assigned to the various developers. It is the longest phase of the Software
Development Life Cycle process.
In this phase, Developer needs to follow certain predefined coding guidelines. They also need to use
programming tools like compiler, interpreters, debugger to generate and implement the code.
Example:
Page 44 of 73
Code For RFID-LMS Dashboard and Sign in and sign Up page.
<?php
error_reporting(E_ERROR | E_WARNING | E_PARSE);
$currDir = dirname(__FILE__);
include("{$currDir}/defaultLang.php");
include("{$currDir}/language.php");
include("{$currDir}/lib.php");
$x = new DataList;
$x->TableTitle = $Translation['homepage'];
$tablesPerRow = 2;
$arrTables = getTableList();
// according to provided GET parameters, either log out, show login form (possibly with a failed login
message), or show homepage
if(isset($_GET['signOut'])){
logOutUser();
redirect("index.php?signIn=1");
}elseif(isset($_GET['loginFailed']) || isset($_GET['signIn'])){
if(!headers_sent() && isset($_GET['loginFailed'])) header('HTTP/1.0 403 Forbidden');
include("{$currDir}/login.php");
}else{
include("{$currDir}/main.php")}
Page 45 of 73
Code for Book retrieve the book:
<?php
/* accessible tables */
$arrTables = get_tables_info();
if(is_array($arrTables) && count($arrTables)){
/* how many table groups do we have? */
$groups = get_table_groups();
$multiple_groups = (count($groups) > 1 ? true : false);
/* construct $tg: table list grouped by table group */
$tg = array();
if(count($groups)){
foreach($groups as $grp => $tables){
foreach($tables as $tn){
$tg[$tn] = $grp;
}
}
}
$i = 0; $current_group = '';
foreach($tg as $tn => $tgroup){
$tc = $arrTables[$tn];
/* is the current table filter-first? */
$tChkFF = array_search($tn, array());
/* hide current table in homepage? */
$tChkHL = array_search($tn,
array('books','NewsPapers','Magazines','Users','Book_Issue','Return_Book','Types'));
/* allow homepage 'add new' for current table? */
$tChkAHAN = array_search($tn, array());
/* homepageShowCount for current table? */
$count_badge = '';
if($tc['homepageShowCount']){
$sql_from = get_sql_from($tn);
$count_records = ($sql_from ? sqlValue("select count(1) from " . $sql_from) : 0);
$count_badge = '<span class="badge hspacer-lg text-bold">' .
number_format($count_records) . '</span>';
}
$t_perm = getTablePermissions($tn);
$can_insert = $t_perm['insert'];
Page 46 of 73
$searchFirst = (($tChkFF !== false && $tChkFF !== null) ? '?Filter_x=1' : '');
?>
<?php if(!$i && !$multiple_groups){ /* no grouping, begin row */ ?>
<div class="row table_links">
<?php } ?>
Coding Techniques
STRUCTURED PROGRAMMING
Dijkstra recognized that the go to statement was an inherently error-response programming construct. It
made it difficult to localized state changes. This observation led to the development of so-called structured
programming. Moreover, structured programming means programming without using go to statements,
programming using only while loop and if statements as control constructs and designing using top-down
approach. The adoption of structured programming was an important milestone in the development of
software engineering because it was the first step away from an undisciplined approach to software
development. The problems with structured programming are as follows:
• Only a limited number of control and data abstraction constructs are used. The program development
process is a process of stepwise refinement of the specification.
• A limited number of constructs are used and the aim is to apply correctness-preserving transformation
to the specification to create the program code.
• A computer program is said to be structured if it has a modular design and uses only the three types of
logical structures, sequences, decisions and loops.
• Sequences: Statements are executed one after another.
• Decisions: One of two blocks of program code is executed based on a test for some condition.
• Loops (Iteration): One or more statements are executed repeatedly as long as a specified condition is
true
Advantages of Structured programming
The goal of structured programming is to create correct programs that are easy to write, understand and
change. They are easy to write programs by modular design. Moreover, modular design increases the
programmer’s productivity by allowing them to look at the big picture first and focus on details later. In
addition, several programmers can work on a single, large program, each working on a different module
Studies show structured programs take less time to write than standard programs. Procedures written for one
Page 47 of 73
program can be reused in other programs requiring the same task. A procedure that can be used in many
programs is said to be reusable.
It is easy to debug the programs written using structured programming languages since each procedure is
specialized to perform just one task, a procedure can be checked individually. In addition, older unstructured
programs consist of a sequence of instructions that are not grouped for specific tasks. The logic of such
programs is cluttered with details and therefore difficult to follow. Moreover, such programs are easy to
understand. Here, the relationship between the procedures shows the modular design of the program.
Moreover, meaningful procedure names and clear documentation identify the task performed by each
module and meaningful variable names help the programmer identify the purpose of each variable. Finally,
the modular programming provides flexibility in modification since it is easy to change one module at a
time. A correctly written structured program is self-documenting and hence it can be easily understood by
another programmer.
PROGRAMMING STYLE
The following are the programming styles that are followed while writing programs.
• It is necessary to use internal documentation inside the programs. These notes provide guidelines for
internal program documentation and style. Although they are intended for beginners in programming, style
skills will carry over into professional life later.
• In fact, most professional programmers would consider these standards to be less than minimum
requirements for commercial-quality software documentation. While geared mainly for a block structured
language such as Pascal or C, most of the points discussed are applicable to any programming language.
• The essence of good programming style is communication. Good style in programming is roughly as
difficult to learn as good style in English.
 In both cases, the document has no value if it does not convey its meaning to the reader. Any
program that will be used must be maintained by somebody – and that somebody must be able to
understand the code by reading it.
 Any program that needs debugging will be easier to debug if the creator carefully explains what’s
going on.
INTERNAL DOCUMENTATION
Page 48 of 73
Internal documentation comprises the code comprehension features provided as part of the source code
itself. Internal documentation is provided through appropriate module header and comments embedded in
the source code. Internal documentation is provided through the use of meaningful variable names, module
and function headers, code indentation, code structuring, use of enumerated types and constant identifiers,
use of user-defined data types, etc. Good software development organizations usually ensure good internal
documentation by appropriately formulating their coding standards and coding guidelines.
CODING
Coding is undertaken once the design phase is complete and the design documents have been successfully
reviewed. In this coding phase, every module identified and specified in the design document is
independently coded. Good software development organizations require their programmers to adhere to
some well-defined and standard style of coding is called coding standards.
CODING STANDARD AND GUIDELINES
Good software development organizations usually develop their own coding standards and guidelines
depending on what best suits their needs and the steps of products they develop. Here, some general coding
standards and guidelines which are commonly adopted by many software development organizations are
provided rather than trying to provide an exhaustive list of representative coding standards and
representative coding guidelines.
REPRESENTATIVE CODING STANDARDS
The use of global variables must be limited in a program. Contents of headers preceding codes for different
modules. Naming convention for global variables, local variables and constant identifiers. Error return
conventions and exception handling mechanisms.
REPRESENTATIVE CODING GUIDELINES
Page 49 of 73
 Do not use a coding style that is too clever or too difficult to understand.
 Avoid obscure side effect and don’t use go-to statements.
 Do not use an identifier for multiple purposes.
 The code should be well-documented.
 The length of any function should not exceed 10 source lines unless it is necessary.
NAMES
The naming scheme is one of the most influential aids to understanding the logical flow of an application. A
name should tell “what” rather than “how.” By avoiding names that expose the underlying implementation,
which can change, the programmers can preserve a layer of abstraction that simplifies the complexity. For
example, they can use GetNextStudent() instead of GetNextArrayElement(). A problem of naming is the
difficulty in selecting a proper name which may indicate that the programmers need to further analyze or
define the purpose of an item. It makes names long enough to be meaningful but short enough to avoid
verbosity. Programmatically, a unique name serves only to differentiate one item from another.
Expressive names function as an aid to a human reader; therefore, it makes sense to provide a name that a
human reader can comprehend. However, be certain that the chosen names are in compliance with the
applicable language’s rules and standards.
VARIABLES
The following rules must be followed to provide names in programming for variables.Append computation
qualifiers (Avg, Sum, Min, Max, Index) to the end of a variable name where appropriate.Do not use literal
numbers or literal strings, such as For i = 1 To 7. Instead, use named constants, such as For i = 1 To
NUM_DAYS_IN_WEEK for ease of maintenance and understanding.
CODING REVIEW
The code review for a module is carried out after the module is successfully compiled and all the syntax
errors eliminated. Code reviews are extremely cost-effective strategies for reduction in coding error in order
to produce high quality code. Normally two types of code reviews are carried out on the code of module-
code walk through and code inspection.
Coding Walkthroughs
Code walk-through is a an informal code of analysis technique. In this technique after a module has been
coded, it is successfully compiled and all syntax errors are eliminated. Some member of the development
team are given the code a few days before the walkthrough meeting to read and understand the code. Each
member selects some test cases and simulates execution of the code by hand. Objective of walk-through is to
discover the algorithmic and logical error in the code. The team performing the code walk-through should
not be either too big or too small. Ideally, it should consist of three to seven members. The discussion should
focus on discovery of errors and not on how to fix the discovered errors. In order to foster cooperation and
to avoid the feeling among the engineers that they are being evaluated in the code walk through meeting,
managers should not attend the walk through meetings.
CODE INSPECTION
Page 50 of 73
Fagan Inspection is a method to find defects. It is a structured process that involves
detecting defects in development documents like programming code, specifications, designs etc.,
during the various phases of software development process
Software maintenance is the general process of changing a system after it has been diverted. The change
may be simple changes to correct coding errors, more extensive changes to correct design errors or
significant enhancement to correct specification error or
Accommodate new requirements. The maintenance activities include the checking of use of uninitialized
variables, jumps into loops and non-terminating loops, incompatible assignments, array indices out of
bounds, improper storage allocation and de-allocation, mismatches between actual and formal parameters in
procedure calls, use of incorrect logical operators or incorrect precedence among operators, improper
modification of loops and comparison of equality of floating point values, etc.
SUMMARY
Coding is an important activity in software engineering process. Software size is optimized using coding.
Selection of a programming language is important for good coding. Good coding practices, enhances the
quality of software.
Page 51 of 73
11.1 Screen Short for RFID-LMS
Login & Signup: Introduction and code
Today I’m going to connect login & Signup Webservices using Login & Signup HTML page. You can use
any HTML page, I’m using This because it has a really beautiful design and has Form for both Login &
Signup.
11.2 Login Page for Student and Admin/Librarian.
Page 52 of 73
Username:Admin
Password : admin
Code For student Registration/login page
if($_POST['signUp'] != ''){
// receive data
$memberID = is_allowed_username($_POST['newUsername']);
$email = isEmail($_POST['email']);
$password = $_POST['password'];
$confirmPassword = $_POST['confirmPassword'];
$groupID = intval($_POST['groupID']);
$custom1 = makeSafe($_POST['custom1']);
$custom2 = makeSafe($_POST['custom2']);
$custom3 = makeSafe($_POST['custom3']);
$custom4 = makeSafe($_POST['custom4']);
// validate data
if(!$memberID){
echo error_message($Translation['username invalid']);
exit;
}
if(strlen($password) < 4 || trim($password) != $password){
echo error_message($Translation['password invalid']);
exit;
}
if($password != $confirmPassword){
echo error_message($Translation['password no match']);
exit;
}
if(!$email){
echo error_message($Translation['email invalid']);
exit;
}
if(!sqlValue("select count(1) from membership_groups where
groupID='$groupID' and allowSignup=1")){
echo error_message($Translation['group invalid']);
exit;
}
// save member data
$needsApproval = sqlValue("select needsApproval from
membership_groups where groupID='$groupID'");
sql("INSERT INTO `membership_users` set memberID='$memberID',
passMD5='".md5($password)."', email='$email', signupDate='".@date('Y-m-d')."',
groupID='$groupID', isBanned='0', isApproved='".($needsApproval==1 ? '0' : '1')."',
custom1='$custom1', custom2='$custom2', custom3='$custom3', custom4='$custom4',
Page 53 of 73
comments='member signed up through the registration form.'", $eo);
// admin mail notification
/* ---- application name as provided in AppGini is used here ---- */
$message = nl2br(
"A new member has signed up for {$app_name}.nn" .
"Member name: {$memberID}n" .
"Member group: " . sqlValue("select name from
membership_groups where groupID='{$groupID}'") . "n" .
"Member email: {$email}n" .
"IP address: {$_SERVER['REMOTE_ADDR']}n" .
"Custom fields:n" .
($adminConfig['custom1'] ? "{$adminConfig['custom1']}:
{$custom1}n" : '') .
($adminConfig['custom2'] ? "{$adminConfig['custom2']}:
{$custom2}n" : '') .
($adminConfig['custom3'] ? "{$adminConfig['custom3']}:
{$custom3}n" : '') .
($adminConfig['custom4'] ? "{$adminConfig['custom4']}:
{$custom4}n" : '')
);
if($adminConfig['notifyAdminNewMembers'] == 2 &&
!$needsApproval){
sendmail(array(
'to' => $adminConfig['senderEmail'],
'subject' => "[{$app_name}] New member signup",
'message' => $message
));
}elseif($adminConfig['notifyAdminNewMembers'] >= 1 &&
$needsApproval){
sendmail(array(
'to' => $adminConfig['senderEmail'],
'subject' => "[{$app_name}] New member awaiting
approval",
'message' => $message
));
}
Page 54 of 73
11.3 Dashboard with all related Features and Menu:
A dashboard has three parts: a header, a sidebar, and a body. Here's the most minimal possible UI
for a dashboard page.DashboardHeader(), dashboardSidebar(), dashboardBody().
Description
After login to software admin panel the home page looks like this. You can set a specific page to display in
dashboard from settings .
the projects we are building (especially web apps and web software) are also going to integrate countless
aspects of modern web development; analytics, dynamic forms data, UI and UX elements, and much more.
11.4 Student Registered Page:
Page 55 of 73
11.4 Student Registration page Register students By Student Name Roll No and Cnic and Contact ID:
Page 56 of 73
11.5 Code For Student Registration Page:
<?php
// This script and data application were generated by AppGini 5.70
// Download AppGini for free from https://bigprof.com/appgini/download/
$currDir=dirname(__FILE__);
Page 57 of 73
include("$currDir/defaultLang.php");
include("$currDir/language.php");
include("$currDir/lib.php");
@include("$currDir/hooks/Users.php");
include("$currDir/Users_dml.php");
// mm: can the current member access this page?
$perm=getTablePermissions('Users');
if(!$perm[0]){
echo error_message($Translation['tableAccessDenied'], false);
echo '<script>setTimeout("window.location='index.php?signOut=1'",
2000);</script>';
exit;
}
$x = new DataList;
$x->TableName = "Users";
// Fields that can be displayed in the table view
$x->QueryFieldsTV = array(
"`Users`.`id`" => "id",
"`Users`.`Membership_Number`" => "Membership_Number",
"`Users`.`Name`" => "Name",
"`Users`.`Contact`" => "Contact",
"`Users`.`ID_Number`" => "ID_Number"
);
// mapping incoming sort by requests to actual query fields
$x->SortFields = array(
1 => '`Users`.`id`',
2 => 2,
3 => 3,
4 => 4,
5 => '`Users`.`ID_Number`'
);
// Fields that can be displayed in the csv file
$x->QueryFieldsCSV = array(
"`Users`.`id`" => "id",
"`Users`.`Membership_Number`" => "Membership_Number",
"`Users`.`Name`" => "Name",
"`Users`.`Contact`" => "Contact",
"`Users`.`ID_Number`" => "ID_Number"
);
// Fields that can be filtered
$x->QueryFieldsFilters = array(
"`Users`.`id`" => "ID",
"`Users`.`Membership_Number`" => "CNIC Number",
"`Users`.`Name`" => "Name",
"`Users`.`Contact`" => "Contact",
"`Users`.`ID_Number`" => " Roll Number ID "
);
// Fields that can be quick searched
Page 58 of 73
$x->QueryFieldsQS = array(
"`Users`.`id`" => "id",
"`Users`.`Membership_Number`" => "Membership_Number",
"`Users`.`Name`" => "Name",
"`Users`.`Contact`" => "Contact",
"`Users`.`ID_Number`" => "ID_Number"
);
11.6 Website Preview
This is my website for RFID-LMS System
Page 59 of 73
11.5 Advance Book Scan on RFID Machine to Publish and issue the Books
Page 60 of 73
Screen Shot for Books Register w.r.t rfid / isbn number that are unique for each book.
Page 61 of 73
Issue Books by RFID.
Page 62 of 73
Returning the books by RFID .
Page 63 of 73
Software Quality and software attributes
What Are The Quality Attributes?
To start with, let us briefly understand Quality can be defined in a different manner.
The quality definition may differ from person to person. But finally, there should be some standards. So
Quality can be defined as
 Degree of excellence – Oxford dictionary
 Fitness for purpose – Edward Deming
 Best for the customer’s use and selling price – Feigenbaum
 The totality of characteristics of an entity that bear on its ability to satisfy stated or implied needs –
ISO
How a Product developer will define quality – The product which meets the customer requirements.
How Customer will define Quality – Required functionality is provided with user friendly manner.
These are some quality definitions from different perspective. Now lets see how can one measure some
quality attributes of product or application.
Following factors are used to measure software development quality. Each attribute can be used to
measure the product performance. These attributes can be used for Quality assurance as well as Quality
control.
Quality Assurance activities are oriented towards prevention of introduction of defects and Quality
control activities are aimed at detecting defects in products and services.
Reliability
Measure if product is reliable enough to sustain in any condition. Should give consistently correct results.
Product reliability is measured in terms of working of project under different working environment and
different conditions.
Maintainability
Different versions of the product should be easy to maintain. For development it should be easy to add code
to existing system, should be easy to upgrade for new features and new technologies time to time.
Maintenance should be cost effective and easy. System be easy to maintain and correcting defects or making
a change in the software.
.
Correctness:
The correctness of a software system refers to:
Page 64 of 73
- Agreement of program code with specifications
- Independence of the actual application of the software system.
The correctness of a program becomes especially critical when it is embedded in a complex software
system.
Reliability of a software system is defined as the probability that this system fulfills a
function (determined by the specifications) for a specified number of input trials under
specified input conditions in a specified time interval (assuming that hardware and input
are free of errors).
A software system can be seen as reliable if this test produces a low error rate (i.e., the
probability that an error will occur in a specified time interval.)
The error rate depends on the frequency of inputs and on the probability that an individual
input will lead to an error.
Adequacy: Factors for the requirement of Adequacy:
- The input required of the user should be limited to only what is necessary. The software
system should expect information only if it is necessary for the functions that the user
wishes to carry out. The software system should enable flexible data input on the part of
the user and should carry out plausibility checks on the input. In dialog-driven software
systems, we vest particular importance in the uniformity, clarity and simplicity of the
dialogs.
- The performance offered by the software system should be adapted to the wishes of the
user with the consideration given to extensibility; i.e., the functions should be limited to
these in the specification.
- The results produced by the software system: The results that a software system delivers should be
output in a clear and wellstructured form and be easy to interpret. The software system should afford the
user flexibility with respect to the scope, the degree of detail, and the form of presentation of the results.
Error messages must be provided in a form that is comprehensible for the user.
Learnability: Learnability of a software system depends on:
- The design of user interfaces
- The clarity and the simplicity of the user instructions (tutorial or user manual).
The user interface should present information as close to reality as possible and permit efficient utilization of
the software’s failures.
The user manual should be structured clearly and simply and be free of all dead weight. It should explain to
the user what the software system should do, how the individual functions are activated, what relationships
exist between functions, and which exceptions might arise and how they can be corrected. In addition, the
user manual should serve as a reference that supports the user in quickly and comfortably finding the correct
answers to questions.
Robustness: Robustness reduces the impact of operational mistakes, erroneous input data, and
hardware errors.
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK
MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK

More Related Content

What's hot

Software engineering II
Software engineering IISoftware engineering II
Software engineering IIAnit Thapaliya
 
Siem &amp; log management
Siem &amp; log managementSiem &amp; log management
Siem &amp; log managementRafel Ivgi
 
Schmuzzi User Manual
Schmuzzi User ManualSchmuzzi User Manual
Schmuzzi User ManualFrank Lobe
 
Soa In The Real World
Soa In The Real WorldSoa In The Real World
Soa In The Real Worldssiliveri
 
Orion instruments magnetic level gauge & instrument selection guide
Orion instruments magnetic level gauge & instrument selection guideOrion instruments magnetic level gauge & instrument selection guide
Orion instruments magnetic level gauge & instrument selection guideMiller Energy, Inc.
 
Algorithms notesforprofessionals
Algorithms notesforprofessionalsAlgorithms notesforprofessionals
Algorithms notesforprofessionalsdesi2907
 
Link SDVOSB Past Performance Summaries
Link SDVOSB Past Performance SummariesLink SDVOSB Past Performance Summaries
Link SDVOSB Past Performance Summariesgasanden
 
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...jchung6133
 
Derivatives basic module
Derivatives basic moduleDerivatives basic module
Derivatives basic modulepranjalbajaj30
 
Money Laundering in Bangladesh
Money Laundering in Bangladesh Money Laundering in Bangladesh
Money Laundering in Bangladesh Pantho Sarker
 
Capstone jordan new award metrics for sustainability_final
Capstone jordan new award metrics for sustainability_finalCapstone jordan new award metrics for sustainability_final
Capstone jordan new award metrics for sustainability_finalLuke Statz
 

What's hot (16)

e4auditor Information_V6
e4auditor Information_V6e4auditor Information_V6
e4auditor Information_V6
 
Software engineering II
Software engineering IISoftware engineering II
Software engineering II
 
Siem &amp; log management
Siem &amp; log managementSiem &amp; log management
Siem &amp; log management
 
Algorithm.pdf
Algorithm.pdfAlgorithm.pdf
Algorithm.pdf
 
Schmuzzi User Manual
Schmuzzi User ManualSchmuzzi User Manual
Schmuzzi User Manual
 
Soa In The Real World
Soa In The Real WorldSoa In The Real World
Soa In The Real World
 
Orion instruments magnetic level gauge & instrument selection guide
Orion instruments magnetic level gauge & instrument selection guideOrion instruments magnetic level gauge & instrument selection guide
Orion instruments magnetic level gauge & instrument selection guide
 
Fr a200
Fr a200Fr a200
Fr a200
 
Algorithms notesforprofessionals
Algorithms notesforprofessionalsAlgorithms notesforprofessionals
Algorithms notesforprofessionals
 
Link SDVOSB Past Performance Summaries
Link SDVOSB Past Performance SummariesLink SDVOSB Past Performance Summaries
Link SDVOSB Past Performance Summaries
 
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...
3 kc18039acaatqzza v1_alcatel-lucent 1646 synchronous multiplexer compact rel...
 
Derivatives basic module
Derivatives basic moduleDerivatives basic module
Derivatives basic module
 
Sample training manual
Sample training manualSample training manual
Sample training manual
 
Money Laundering in Bangladesh
Money Laundering in Bangladesh Money Laundering in Bangladesh
Money Laundering in Bangladesh
 
YieldCos in the U.S. Final AN
YieldCos in the U.S. Final ANYieldCos in the U.S. Final AN
YieldCos in the U.S. Final AN
 
Capstone jordan new award metrics for sustainability_final
Capstone jordan new award metrics for sustainability_finalCapstone jordan new award metrics for sustainability_final
Capstone jordan new award metrics for sustainability_final
 

Similar to MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK

FCC Interop Board Final Report 05 22 12
FCC Interop Board Final Report 05 22 12FCC Interop Board Final Report 05 22 12
FCC Interop Board Final Report 05 22 12Claudio Lucente
 
Rapid programmering start
Rapid programmering startRapid programmering start
Rapid programmering startZiaul Haque
 
Team Omni L2 Requirements Revised
Team Omni L2 Requirements RevisedTeam Omni L2 Requirements Revised
Team Omni L2 Requirements RevisedAndrew Daws
 
Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Banking at Ho Chi Minh city
 
60950106 basis-latest-till-interview-questions
60950106 basis-latest-till-interview-questions60950106 basis-latest-till-interview-questions
60950106 basis-latest-till-interview-questionsRavic Kumar
 
Product description vital qip next generation v7 2_en_feb09(1)
Product description vital qip next generation v7 2_en_feb09(1)Product description vital qip next generation v7 2_en_feb09(1)
Product description vital qip next generation v7 2_en_feb09(1)Roy Muy Golfo
 
Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Piyush Mittal
 
Seminar Report on RFID Based Trackin System
Seminar Report on RFID Based Trackin SystemSeminar Report on RFID Based Trackin System
Seminar Report on RFID Based Trackin SystemShahrikh Khan
 
Windump
WindumpWindump
Windumpjk847
 
Digital Heart Beat Sensor
Digital Heart Beat SensorDigital Heart Beat Sensor
Digital Heart Beat SensorRaghav Shetty
 
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATION
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATIONE-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATION
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATIONPIYUSH Dubey
 
Report on e-Notice App (An Android Application)
Report on e-Notice App (An Android Application)Report on e-Notice App (An Android Application)
Report on e-Notice App (An Android Application)Priyanka Kapoor
 
Developing workflows and automation packages for ibm tivoli intelligent orche...
Developing workflows and automation packages for ibm tivoli intelligent orche...Developing workflows and automation packages for ibm tivoli intelligent orche...
Developing workflows and automation packages for ibm tivoli intelligent orche...Banking at Ho Chi Minh city
 

Similar to MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK (20)

FCC Interop Board Final Report 05 22 12
FCC Interop Board Final Report 05 22 12FCC Interop Board Final Report 05 22 12
FCC Interop Board Final Report 05 22 12
 
E participation study
E participation study E participation study
E participation study
 
Rapid programmering start
Rapid programmering startRapid programmering start
Rapid programmering start
 
Team Omni L2 Requirements Revised
Team Omni L2 Requirements RevisedTeam Omni L2 Requirements Revised
Team Omni L2 Requirements Revised
 
Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...
 
Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...Deployment guide series ibm tivoli application dependency discovery manager v...
Deployment guide series ibm tivoli application dependency discovery manager v...
 
60950106 basis-latest-till-interview-questions
60950106 basis-latest-till-interview-questions60950106 basis-latest-till-interview-questions
60950106 basis-latest-till-interview-questions
 
Gemini Manual
Gemini ManualGemini Manual
Gemini Manual
 
Product description vital qip next generation v7 2_en_feb09(1)
Product description vital qip next generation v7 2_en_feb09(1)Product description vital qip next generation v7 2_en_feb09(1)
Product description vital qip next generation v7 2_en_feb09(1)
 
Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2
 
Seminar Report on RFID Based Trackin System
Seminar Report on RFID Based Trackin SystemSeminar Report on RFID Based Trackin System
Seminar Report on RFID Based Trackin System
 
Utt go ip-manual
Utt go ip-manualUtt go ip-manual
Utt go ip-manual
 
Phasor series operating_manual
Phasor series operating_manualPhasor series operating_manual
Phasor series operating_manual
 
Windump
WindumpWindump
Windump
 
Sap
SapSap
Sap
 
Digital Heart Beat Sensor
Digital Heart Beat SensorDigital Heart Beat Sensor
Digital Heart Beat Sensor
 
2D ROBOTIC PLOTTER
2D ROBOTIC PLOTTER2D ROBOTIC PLOTTER
2D ROBOTIC PLOTTER
 
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATION
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATIONE-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATION
E-FREELANCING - MAJOR/FINAL YEAR PROJECT DOCUMENTATION
 
Report on e-Notice App (An Android Application)
Report on e-Notice App (An Android Application)Report on e-Notice App (An Android Application)
Report on e-Notice App (An Android Application)
 
Developing workflows and automation packages for ibm tivoli intelligent orche...
Developing workflows and automation packages for ibm tivoli intelligent orche...Developing workflows and automation packages for ibm tivoli intelligent orche...
Developing workflows and automation packages for ibm tivoli intelligent orche...
 

More from Bahria University Islamabad, Pakistan

DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...
DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...
DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...Bahria University Islamabad, Pakistan
 
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdfBahria University Islamabad, Pakistan
 
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdfBahria University Islamabad, Pakistan
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Bahria University Islamabad, Pakistan
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Bahria University Islamabad, Pakistan
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Bahria University Islamabad, Pakistan
 
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdf
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdfComplete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdf
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdfBahria University Islamabad, Pakistan
 

More from Bahria University Islamabad, Pakistan (20)

Database systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdfDatabase systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdf
 
Database systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdfDatabase systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdf
 
Database systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdfDatabase systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdf
 
Database systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdfDatabase systems handbook dbms rdbms.pdf
Database systems handbook dbms rdbms.pdf
 
Database systems handbook.pdf
Database systems handbook.pdfDatabase systems handbook.pdf
Database systems handbook.pdf
 
Database system Handbook 4th muhammad sharif.pdf
Database system Handbook 4th muhammad sharif.pdfDatabase system Handbook 4th muhammad sharif.pdf
Database system Handbook 4th muhammad sharif.pdf
 
Database system Handbook 4th muhammad sharif.pdf
Database system Handbook 4th muhammad sharif.pdfDatabase system Handbook 4th muhammad sharif.pdf
Database system Handbook 4th muhammad sharif.pdf
 
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
Database systems Handbook 4th  dbms by Muhammad Sharif.pdfDatabase systems Handbook 4th  dbms by Muhammad Sharif.pdf
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
 
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
Database systems Handbook 4th  dbms by Muhammad Sharif.pdfDatabase systems Handbook 4th  dbms by Muhammad Sharif.pdf
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
 
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
Database systems Handbook 4th  dbms by Muhammad Sharif.pdfDatabase systems Handbook 4th  dbms by Muhammad Sharif.pdf
Database systems Handbook 4th dbms by Muhammad Sharif.pdf
 
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdfDatabase system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
 
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdfDatabase system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
 
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdfDatabase system Handbook 3rd DONE Complete DBMS book Full book.pdf
Database system Handbook 3rd DONE Complete DBMS book Full book.pdf
 
DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...
DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...
DBA book sql rdbms 4rth Complete book Database systems Handbook dbms rdbms by...
 
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
 
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
4rth Complete book Database systems Handbook dbms rdbms by Muhammad Sharif.pdf
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
 
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
Complete book Database management systems Handbook 3rd edition by Muhammad Sh...
 
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdf
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdfComplete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdf
Complete Full book Database system Handbook 3rd edition by Muhammad Sharif.pdf
 

Recently uploaded

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxShobhayan Kirtania
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 

Recently uploaded (20)

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 

MUHAMMAD SHARIF | TECHNOITSCHOOL BOOK

  • 1. Page 1 of 73 Table of Contents 1. INTRODUCTION OF RFID PROCESS AND ITS FUNCTIONS W.R.T SOFTWARE. ...........6 1.1 ABSTRACT:..........................................................................................................................................6 1.2 INTRODUCTION....................................................................................................................................6 1.3RFID Technology in Libraries ..........................................................................................................6 1.4 COMPONENTS..................................................................................................................................7 1.4.1RFIDTags:.....................................................................................................................................7 1.4.2RFIDReaders:................................................................................................................................8 1.4.4 MICROCONTROLLER: ............................................................................................................10 1.5 DATABASE: .....................................................................................................................................10 2 Modules that are described as follows......................................................................................................11 2.1Module1...........................................................................................................................................11 2.1.1 The Initial Setup........................................................................................................................11 2.2 Module2..........................................................................................................................................11 2.2.1 The Login Process ......................................................................................................................11 2.2.2 The Issue Process........................................................................................................................11 D.2.3 Module 4......................................................................................................................................11 The Return Process ............................................................................................................................11 3.0 About Scope of RFID Technology........................................................................................................11 3.1 Auto-On............................................................................................................................................12 3.2 Features.............................................................................................................................................12 3.3 Differences between RFID and a simple barcode system...................................................................12 4.0 Introduction: .........................................................................................................................................13 4.1 Purpose & Scope..............................................................................................................................13 4.2 Time Management: ..........................................................................................................................14 4.3 Objective:.........................................................................................................................................14 5.0 Tools Used in the Project:.....................................................................................................................14 MYSQLI SERVER v.3.3.2: ....................................................................................................................14 Sublime and Notepad++ latest version: ...................................................................................................14 5.1 Languages used in Software:................................................................................................................14 PHP ........................................................................................................................................................15 SQL ........................................................................................................................................................15 Microsoft Word 2013 latest version.........................................................................................................15 RFID Reader Latest ZKTECO ................................................................................................................15 Existing System..........................................................................................................................................15 Improvements.............................................................................................................................................16 Advantages of RFID systems ..................................................................................................................16 Rapid check-out / check-in ..................................................................................................................16 Simplified patron self check-out / check-in..........................................................................................16
  • 2. Page 2 of 73 High reliability ....................................................................................................................................16 High-speed inventorying......................................................................................................................17 Automated materials handling .............................................................................................................17 Long tag life........................................................................................................................................17 PROPOSED SYSTEM OF LIBRARY MANAGEMENT SYSTEM.......................................................18 6.1 User Module:.......................................................................................................................................18 6.2 New user register:.................................................................................................................................18 6.3 Student Login:..................................................................................................................................18 6.4 Search book: .....................................................................................................................................18 6.5 Issue Book: .......................................................................................................................................18 6.6 Return Book:.....................................................................................................................................18 Admin Module: ...................................................................................................................................18 Register user ...........................................................................................................................................19 6.7 Issue Book ........................................................................................................................................19 6.8 Librarian: ..........................................................................................................................................19 6.8 Software Requirements:........................................................................................................................20 Front End:...............................................................................................................................................20 Back End: ...............................................................................................................................................20 6.9 Books and its attirbutes:.................................................................................................................20 User:....................................................................................................................................................21 Issue Status:.........................................................................................................................................22 6.10 Return Status: ..............................................................................................................................23 Diagrams:...................................................................................................................................................23 7.0 Use Case Diagram:...........................................................................................................................24 7.1 Class Diagram..................................................................................................................................25 Use case 2 diagram .................................................................................................................................25 7.2 ER Diagrams.....................................................................................................................................27 7.4 Class Diagrams ................................................................................................................................28 7.4.1 Advance Class Diagram .................................................................................................................28 7.5 Activity diagramfor RFID Library Management System....................................................................29 7.6 Sequence diagram templates.............................................................................................................30 7.8 Entity Relationship Diagram advance for library ..............................................................................31 8.0 Phases of Software Development Life Cycle........................................................................................31 8. 1. Planning..........................................................................................................................................31 8.2. Systems Analysis and Requirements.................................................................................................32 8. 3. Systems Design...............................................................................................................................32 8.4. Development....................................................................................................................................32 8.5. Integration and Testing.....................................................................................................................33 8.6. Implementation ................................................................................................................................33
  • 3. Page 3 of 73 8.7. Operations and Maintenance.............................................................................................................33 8.8 Importance of the SDLC....................................................................................................................33 9.0 Models in Software...............................................................................................................................34 9.1 Waterfall Model ................................................................................................................................34 Waterfall model Diagram ....................................................................................................................35 9.2 V-Shaped Model: ..............................................................................................................................35 V Model diagram.................................................................................................................................35 9.3 Prototype Model ...................................................................................................................................36 9.4 Spiral Model .....................................................................................................................................37 Spiral Model has four phases:..............................................................................................................37 9.5 Which model is use in RFID-LMS........................................................................................................38 9.6 What is Agile? .....................................................................................................................................38 Agile Model - Pros and Cons ..................................................................................................................42 10.0 Software Development Life Cycle ......................................................................................................42 10.1 Defining &Planning and Requirement Analysis...............................................................................42 10.2 Design:............................................................................................................................................43 10.3 Coding/Implimentation...................................................................................................................43 Code For RFID-LMS Dashboard and Sign in and sign Up page..................................................................44 Code for Book retrieve the book:................................................................................................................45 Coding Techniques.....................................................................................................................................46 STRUCTURED PROGRAMMING........................................................................................................46 PROGRAMMING STYLE .....................................................................................................................47 INTERNAL DOCUMENTATION..........................................................................................................47 CODING ................................................................................................................................................48 CODING STANDARD AND GUIDELINES .........................................................................................48 REPRESENTATIVE CODING STANDARDS ......................................................................................48 REPRESENTATIVE CODING GUIDELINES.......................................................................................48 NAMES..................................................................................................................................................49 VARIABLES..........................................................................................................................................49 Coding Walkthroughs .............................................................................................................................49 CODE INSPECTION..............................................................................................................................49 SUMMARY ...............................................................................................................................................50 11.1 Screen Short for RFID-LMS ...............................................................................................................51 Login & Signup: Introduction and code...................................................................................................51 Code For student Registration/login page....................................................................................................52 11.3 Dashboard with all related Features and Menu:..............................................................................54 Description..........................................................................................................................................54 11.4 Student Registered Page:....................................................................................................................54 11.4 Student Registration page Register students: .......................................................................................55
  • 4. Page 4 of 73 11.5 Code For Student Registration Page:..................................................................................................56 11.6 Website Preview ................................................................................................................................58 This is my website for RFID-LMS System..............................................................................................58 Screen Shot for Books Register w.r.t rfid / isbn number that are unique for each book.........................60 Issue Books by RFID. .............................................................................................................................61 Returning the books by RFID .................................................................................................................62 Software Quality and software attributes.....................................................................................................63 What Are The Quality Attributes?...........................................................................................................63 Reliability............................................................................................................................................63 Maintainability........................................................................................................................................................63 Correctness:.........................................................................................................................................63 Learnability: Learnability of a software system depends on: ................................................................64 Robustness: Robustness reduces the impact of operational mistakes, erroneous input data, and hardware errors...................................................................................................................................................64 Extensibility: .......................................................................................................................................65 TestingEstimationTechniques.......................................................................................................................66 PERT Software Testing Estimation Technique ....................................................................................66 Use-Case Point Method .......................................................................................................................66 Function Point / Testing Point Analysis ...............................................................................................67 Experience-based Testing Estimation Technique .................................................................................67 Software Testing Phase ...........................................................................................................................67 Software validation and verification........................................................................................................68 Advantages of Validation: ...................................................................................................................68 Verification makes sure that the product is designed to deliver all functionality to the customer..............68 Advantages of Software Verification :.....................................................................................................69 Challenges..................................................................................................................................................69 Poorly defined goal.................................................................................................................................69 Unrealistic Deadlines ..............................................................................................................................69 Solution: .................................................................................................................................................70 Conclusion and Summery:..........................................................................................................................72 Conclusion and Thanks...............................................................................................................................73
  • 5. Page 5 of 73 RFID-SLMS: A smart library system based On an RFID Technology
  • 6. Page 6 of 73 1. INTRODUCTION OF RFID PROCESS AND ITS FUNCTIONS W.R.T SOFTWARE. ---------------------------------------------------------------------***-------------------------------------------------------------- 1.1 ABSTRACT: Radio Frequency Identification (RFID) mean says that transfers the information wirelessly, using radio frequency waves. It is automatic identification technology. This paper is about RFID based Smart Library Management System (SLMS) that allows fast transaction flow and will make easy to handle the activities like issue and return of books from the library without much manual intervention. This system is based on RFID readers and passive RFID tags that are able to store the information electronically which can be read by the RFID readers. This system will make users to issue and return of books via RFID tags very easy and also calculate the corresponding fine associated with the period of time the absence of the book from the library. Keywords: RFID Readers; RFID Tags; Methodology; Anti- theft. 1.2 INTRODUCTION In everyday life, we are using Library. In libraries, working is still done manually. Books issue, reissue, return all this activities are done by librarian and it also increases the labor cost. So instead of doing this manually we are creating the system named as Smart Library Management System. In this system we are going to design a system in which user can get all information about name of the books he/she had issued. They will also get to know return date of the book. If user is not registered then there is option for new registration (signup). The tag is attached to the each book in the library. These tags have the unique code and because of this uniqueness in code we are using it for different items. For this smart library management system we used RFID instead of Bar code due to more advantages over bar code. 1.3RFID Technology in Libraries A library is a growing system. The problems associated with the maintenance and securities are used to identify, track, sort or detect library collections at the circulation desk and in the daily maintenance. This system consists of smart RFID labels, hardware and software, provides libraries with more effective way of managing their data while providing greater service. The technology works through thin smart labels, which placed on the inside cover of each book in a library’s collection. Manual interactions are not needed for RFID-tag reading. It most care is taken to provide following features to the Library using RFID technology to minimize the manual intervention and to minimize the
  • 7. Page 7 of 73 manual errors and to provide fast issuing, reissuing and searching of books. 1.4 COMPONENTS The RFID based Smart Library Management System consists of following components A. RFID Tags B. RFID Reader C. Microcontroller D. Database Software Figure 2.1 RFID Components 1.4.1 RFID Tags: Tags are thin labels which can be fixed inside a back cover of the book. RFID tags a remade up of carbonic structure which contains a magnetic trip or coil layer inside the tag which helps in sensing the tags. In the figure shown, the tag contains a unique serial number like.
  • 8. Page 8 of 73 “0600394791” which is used for the authentication of the user. Figure 2.2 RFID Tags When we bring the tag in front of the reader of the reader, the reader antenna senses the tag and checks the unique serial number of the tag. If the tag is registered in the data base then the reader authenticates the tag otherwise the reader shows an error and gives the message that the tag is not registered or the tag is not authenticated. Figure 2.3 RFID Tags Construction 1.4.2 RFID Readers: RFID readers are used to interrogate data stored in tags. It contains a radio frequency module, a control unit and an antenna to communicate with electronic tags via radio signals. The antenna inside the reader generate select magnetic field. When at a passes through the field, the information stored on the tag is interpreted by the reader and sent to the database server, which in turn stores or retrieves information about the book’s issue or return.
  • 9. Page 9 of 73 Figure 2.4 RFID Reader Different types of readers are available in market depending on their range and suitable applications.  Lowfrequencyreaders-125Khz  High frequencyreaders-13.56Mhz  Ultra High frequencyreaders-800-900Mhz Features:   -It is a 13.56MHZ non-contact IC reader which is easy and stable to use.  -Fast in reading the RFID Tags.  -Plug and play, needn't extra driver.  -Widely used in many RFID application systems such as personnel identification, logistics, access control, conference attendance system, anti-counterfeit and industrial production process control system.  Specification:   Color: Black  Net Weight: 39g  Gross Weight: 100g  Size: 104x70x11mm/4.09"x2.76"x0.43"  Support MIFARE, 14443A protocol, S50, S70  Power source: USB  Interface: USB, 106Kbit/s , (RS232, 9600,N,8,1)  Working distance: Up to 8 cm  Frequency: 13.56MHz  Temperature: -30 degrees Celsius to + 60 degrees Celsius  Humidity: 5%-95%  Audio/Visual Indication: LED and buzzer  SDK: Communication Protocol  Package includes:   1 x RIFD Card Reader  1 x USB Cable 
  • 10. Page 10 of 73 1.4.4 MICROCONTROLLER: In this project, we are going to design a system by which user can use the library smartly. Major components in our system areas micro controller, Database, RFID readers and RFID tags. Micro controller has the in built USART support and we will use it to obtain serial communication for transmitting and receiving the data between RFID readers, Microcontroller & the Database stored in PC. Also to achieve anti-theft we will interface a Buzzer and one more RFID reader to the Microcontroller. 1.5 DATABASE: A database is an organized collection of data. It is the collection of schemas, tables, queries, reports, views, and other objects. The data are organized to model aspects of reality in a way that supports processes requiring information
  • 11. Page 11 of 73 2 Modules that are described as follows 2.1Module1 2.1.1 The Initial Setup Whenever a book is acquired by the library, an RFID tags are placed into the books with the relevant information like, call number, author name, and book number, etc. The detailed information regarding the book is also stored in the computer database. The computer database also stores all information for individual users (users) of the library. Each user is supplied with registered RFID cards. These cards carry identification data and details like: address, roll number, and telephone no. etc. for each user. 2.2 Module2 2.2.1 The Login Process There is an administrator with special privileges who has a unique master password controlling the GUI of the RFID SLMS system. As soon as he powers on the system, the first screen displays the LOGIN dialogue box. First he will need to scan his ID card in front of the RFID reader and then entering the corresponding password to enable the system for further usage. 2.2.2 The Issue Process When a user needs to get a book issued , he can get it done without any manual intervention. He simply needs to scan his RFID card in front of the RFID reader and it automatically opens his/her login account page. The again he needs to scan the selected books to be issued, one by one in front of the RFID reader. The computer records all these data against his name. Finally a message is displayed informing the user that the ISSUE process has been successful. The user takes the books for a specified time period from the library after which he has to return the books to the library. D.2.3 Module 4 The Return Process When a user want store turn books, he simply places the books again in front of the RFID connected with the controller and the books are automatically adjusted for return against the user’s name. 3.0 About Scope of RFID Technology RFID: What is it? The concept of RFID (Radio Frequency Identification) technology was developed in 1948 but it has had to wait fifty years before it has been able to deliver on its or signal promise. The advent of tiny integrated circuits (“chips”) allowed solution designers to add intelligence to the movement of goods through the supply chain and when a chip and an aerial were attached to a sticky label the RFID “Tag” was born. RFID was then conceived, as the name suggests, as a means of enabling tags to identify themselves
  • 12. Page 12 of 73 to a radio receiver. The tags now come in all shapes and sizes and are attached to a staggering range of items with a wide range of applications from cars (electronic tolls) to earrings (brand protection). For some time now they have also been attached to library books. This document seeks to show how and why this has been done up to now, but more importantly how it might be done even more effectively in the future. This is a step by step guide, which will explain what RFID is, how it is used and the benefits which can accrue. It will also provide a realistic view of the issues around RFID, it will look at how it is best deployed and warn of any pitfalls so that libraries can access the necessary information to have meaningful conversations with suppliers. Libraries will then be able to invest in RFID technology appropriately to suit their needs and to maximize the available benefits. 3.1 Auto-On It is an Automatic RF Detection technology that automatically checks for presence of a book. When used with Auto-On –compatible software, the ZK RFID will turn on and scan books as soon as we touch the device. 3.2 Features  High-performance , maintenanace-free optical RF Sensor  Sensor resistant to scratches, impact, vibration and electrostatic shock  Auto-On (Automatic Book Placement Detection)  Smart Capture  USB Connection  Removable weighted Stand 3.3 Differences between RFID and a simple barcode system Many libraries have already installed barcode systems where a barcode is placed in each book and the LMS
  • 13. Page 13 of 73 (Library Management System) uniquely identifies the book by reading the barcode, using a barcode scanner. This technology has enabled self service and self return to operate successfully for many years, functions which have since come to be synonymous with RFID technology. The main differences between using barcodes or RFID tags are the latter’s ability to issue multiple items simultaneously and to allow items to be read without having to open them to find the bar codes. Libraries should consider the volumes of items which will need to be processed either for self-service and self-return and aim for an RFID/ sortation solution which can cope. A larger library with big volumes could justify a sortation solution perhaps using a system of conveyors and sorting units etc. A smaller library probably could not justify this investment. RFID tags and workstations can also identify multi-part sets to detect whether these are complete on return or issue. This is a useful function of RFID assuming the LMS knows to look for all the parts which make up a complete item. Another significant difference between barcode and RFID systems is that barcodes use standards that can be read by most scanners. While RFID transmission protocols are well established tags are, at present, not governed by similar standards, meaning that some tags may only be read by a specific reader. Another important difference between barcodes and RFID is that barcode data is uni- directional (i.e. you can only read it, not write it). RFID not only reads from, but can also write information to, the tag. RFID therefore requires an exchange of data. System Overview: Literature 4.0 Introduction: An intelligent Library Management System (LMS) based on Radio Frequency Identification (RFID) was built as a pilot project for the university library. A Graphic al User Interface (GUI) was carefully designed to support all necessary Library functionalities and user needs. RFID technology finds a useful and potentially promising application in the field of library science 4.1 Purpose & Scope RFID (Radio Frequency Identification) technology is an automatic identification system consisting of a tag and a reader which can communicate with radio waves.
  • 14. Page 14 of 73 Within the business processes it is possible to read and write the data from and into the Microchip included tags from long distances. In this way, with lower costs more efficient process management and monitoring is provided. Today, RFID technology can find a wide range of application areas in many sectors such as automotive, logistics, Retail, healthcare and libraries. RFID can provide long term benefits to libraries in Process, traceability and security. Radio Frequency Identification (RFID) means a system that transfers the Information wirelessly, using radio frequency waves. It is automatic identification technology. 4.2 Time Management: RFID –SLMS Web Application covers the requirement of the day to day monitoring of the Book. You can create customized all books reports daily. 4.3 Objective:  Create a web application to be used in place on old paper based Library’s Books Management.  Use MYSQLI SERVER technology ot create strong and  Secured database connectivity.  Incorporate the server software within the code.  Runtime package and deployment instructions are given.  Latest technology of RFID Device. 5.0 Tools Used in the Project: MYSQLI SERVER v.3.3.2: Mysqli Server Management Studio is a software application that is used for configuring, managing, and administering all components within Microsoft sql server. The tool includes both script editors and graphical tools with work with objects and features of the server. Sublime and Notepad++ latest version: Sublime Text, Atom, and Notepad++ are all general purpose text editors. They are suited to web development, with features beyond those available in basic text applications like Notepad. But they are not as complex or specialized as most IDEs. All three are cross-platform and support a variety of languages. 5.1 Languages used in Software:
  • 15. Page 15 of 73 PHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general- purpose scripting language that is especially suited for web development and can be embedded into HTML. SQL SQL is a domain-specific language used in programming and designed for managing data held in a relational database management system, or for stream processing in a relational data stream management system Other languages are: 1. JavaScript 2. CSS 3. HTML 4. Objective C Microsoft Word 2013 latest version Microsoft Word 2013 latest version word processor, part of the Office 2013. It boasts improved performance on the previous version, and more features. RFID Reader Latest ZKTECO RFID READER: It communicates with the tags through an RF channel to obtain identifying information. Depending on the type of tag, this communication may be a simple ping or maybe a more complex multi- round protocol. In environments with many tags, a reader may have to perform an anti-collision protocol to ensure that communication conflicts don’t occur. Anti-collision protocols permit readers to rapidly communicate with many tags in serial order. ZKTeco is the leader of security and time management solutions, we strive to provide the best products and services to our users. Existing System
  • 16. Page 16 of 73 We have visited GCUF Library. All the Records are maintained is registers The lock of consistency in register maintenance leads to both loss of work as well as money and time. More manual work. In their system first take collect order from customer. They give registration form from customer with personal and ordered books details. Then they will ordered them to supplier, supplier supply book transport through and payment the supplier banking through manual. Improvements Before this project, all the library was working by manual and very rare Universities use barcode. Manual work was very time consumer and costly required people and hardware registers for student registrations. Barcode system was also costly. Some time we required advance barcode machine that read barcode tag if it became dim. User Friendly and Less Paper work . No manual Registration on Register. So I through that Radio Frequency Based Identification Project should launched so that it work on waves form and scan/capture all information of book and students. This was the reason for development of New Version of RFID-LMS. Advantages of RFID systems Rapid check-out / check-in The use of RFID reduces the amount of time required to perform circulation operations. The most significant time savings are attributable to the facts that information can be read from RFID tags much faster than from barcodes and that several items in a stack can be read at the same time. While initially unreliable, the anti-collision algorithm that allows an entire stack to be check-out or check-in now appears to be working well. The other time savings realized by circulation staff are modest unless the RFID tags replace both the EM security strips or RF tags of older theft detection systems and the barcodes of the library management system - i.e., the system is a comprehensive RFID system that combines RFID security and the tracking of materials throughout the library; or it is a hybrid system that uses EM for security and RFID for tracking, but handles both simultaneously with a single piece of equipment. There can be as much as a 50 percent increase in throughput. The time savings are less for check-out than for check-in because the time required for check- out usually is extended by social interaction with patrons. Simplified patron self check-out / check-in For patrons using self check out, there is a marked improvement because they do not have to carefully place materials within a designated template and they can check out several items at the same time. Patron self check-in shifts that work from staff to patrons. Staff is relieved further when readers are installed in book-drops. High reliability
  • 17. Page 17 of 73 1. The readers are highly reliable. RFID library systems claim an almost 100 percent detection rate using RFID tags. 2. There is no false alarm than with older technologies once an RFID system is properly tuned. 3. RFID systems encode the circulation status on the RFID tag. This is done by designating a bit as the "theft" (EAS) bit and turning it off at time of check-out and on at time of check-in. If the material that has not been properly check-out is taken past the exit sensors, an immediate alarm is triggered. High-speed inventorying A unique advantage of RFID systems is their ability to scan books on the shelves without tipping them out or removing them. A hand-held inventory reader can be moved rapidly across a shelf of books to read all of the unique identification information. Using wireless technology, it is possible not only to update the inventory, but also to identify items which are out of proper order. Automated materials handling Another application of RFID technology is automated materials handling. This includes conveyer and sorting systems that can move library materials and sort them by category into separate bins or onto separate carts. This significantly reduces the amount of staff time required to ready materials for re-shelving. Long tag life Finally, RFID tags last longer than barcodes because nothing comes into contact with them. Most RFID vendors claim a minimum of 100,000 transactions before a tag may need to be replaced. 6.0 System Flow
  • 18. Page 18 of 73 PROPOSED SYSTEM OF LIBRARY MANAGEMENT SYSTEM The project Library Management System aims at developing a fully functional computerized system to maintain all the day to day activity of a library This project has many features which such as the facility of user login and teachers login. Also on the top of all this, there is an admin who will be managing the entire application’s authorization and authentication, not any intruder can login and modify the data, as a login for admin is also available. The various modules of this system areas: 6.1 User Module: This module is further divided into various sub-modules describing the user in a better way: 6.2 New user register: To sign up a new user to this system 6.3 Student Login: So as to confirm that only an authenticated user is using the project. 6.4 Search book: The user can search book based on book id, book name, or by author name. 6.5 Issue Book: To help the user get the required books issued. 6.6 Return Book: To return the book before the last date without fine, or after the specified time duration with a late fine. Admin Module:
  • 19. Page 19 of 73 It is to be operated by the admin with unique id and password. The admin is the person who decides authentication and authorization for all the different users of the application. It further can be subdivided as: Register user 6.7 Issue Book Maintain books in a stack, means record the availability at regular time interval. 6.8 Librarian: Includes all the library staff who are required to enter the records in the system and keep an eye on the various activities like the issue of the book, the return of the book, non-availability of books etc. through the developed system.
  • 20. Page 20 of 73 6.8 Software Requirements: Front End: - Client on Internet: Web Browser, Operating System(any). - Client on Intranet: Web Brower, Operating System(any). Back End: - JavaScript - PHP - SQL - MySQL - Web Server - Database Server Apache - Operating System 6.9 Books and its attributes: These are the basic building block of this system as well as any library. In other words the main purpose of any library and the cause to develop systems like this.
  • 21. Page 21 of 73 Book _Name: The name of the book which is almost unique in some way. Book_ Code: A number to use for sorting and arranging the book, as well as identifying it in the library. Author: The one who has written the book. As sometimes the book’s series become more popular by the author’s name rather than the book name. Price: The market value of the book is also required to maintain in the record, as sometimes it is needed to arrange and sort based on this, secondly, it is also required for compensation in case of loss or damage, as fine charges. Quantity: This is to indicate the availability of each book individually, so as to know whether last copy should be issued or kept as a reference piece. Also to maintain the number of books. Rack/addition No: To get the exact location of the book, so as it becomes easy to search it and sort it at the time of binding up work. Published date: As there are various further division and subcategories of any subject. So, in that case, this is the unique id to distinguish the books, arrange them, and sort them. Like in computer science there are further many specialties like core java, advanced java, HTML, html5 etc. User: The next is the beneficiary, by whom the library is being accessed and who serves as a purpose for this system. Its attributes include: CNIC Number The name of the student or teacher, who will get the book issued, or who will return the book.
  • 22. Page 22 of 73 Contact: This refers to the user’s physical area of residence. It is a composite attribute. As it further contains the house number and lane number. Student Name/ Member ship name To indicate the amount of fine he/she has to deposit and keep it up to date so that he/she is aware of the payment to be made at the end of the year or session. Issue Status: It makes to the notice of the librarian as well as to the student or teacher that ow many books they have already got issued and how much more can they get at the current point of time. It includes attributes as: Issue ID Roll number of Student Name Book Name: The name of the book which is almost unique in some way. Member or student Name Book Code: A number to use for sorting and arranging the book, as well as identifying it in the library. Id: The user’s unique college or university roll number i.e. the id. The same is applicable to teachers also, with their unique id. To know which user has been issued the book and for what time limit, that is what time the user is supposed to return the book, and if not will be charged fine. Date_Issue: The date on which user got the book issued to read from it. Return_Date: It indicates the date on which user is supposed to be returning the book, that is it is the date after the duration completed for which the user has been issued the book.
  • 23. Page 23 of 73 6.10 Return Status: This tells the library management authority about the status of returned books per user. Whether a particular user has returned the book or not, on or before the last date. If not, in that case, the fine will be charged from him/her as a penalty for late submission. Book_Name: The name of the book which is almost unique in some way. Book_Code: A number to use for sorting and arranging the book, as well as identifying it in the library. Id: The user’s unique college or university roll number i.e. the id. The same is applicable to teachers also, with their unique id. To know which user has been issued the book and for what time limit, that is what time the user is supposed to return the book, and if not will be charged fine. Date_Issue: The date on which user got the book issued to read from it. Return_Date: It indicates the date on which user is supposed to be returning the book, that is it is the date after the duration completed for which the user has been issued the book. Diagrams:
  • 24. Page 24 of 73 7.0 Use Case Diagram: RFID Use Case Diagram for Librarian Student Use Case Diagram –RFID Library Management System The use case diagram are usually referred to as behavior diagram used to describe the actions of all user in a system. All user describe in use case are actors and the functionality as action of system.
  • 25. Page 25 of 73 7.1 Class Diagram Library Management System Class ( Class Diagram (UML)) Library management system class diagram describes the structured class diagram of library management system, their attributes, methods and relationships among objects. Use case 2 diagram
  • 26. Page 26 of 73 For Student, Teacher, Non Teacher and Librarian Use Case Diagram Librarian register student, book, using RFID Card to publish. Use Case Diagram – Library Management System The use case diagram are usually referred to as behavior diagram used to describe the actions of all user in a system. All user describe in use case are actors and the functionality as action of system.
  • 27. Page 27 of 73 7.2 ER Diagrams All Books, Magazines are Published, Returnand Issue withRFID. Library management system class diagram describes the structured class diagram of library management system, their attributes, methods and relationships among objects. Class uml teach software uml classless diagram class diagram template library class library management class.
  • 28. Page 28 of 73 7.4 Class Diagrams 7.4.1 Advance Class Diagram Library domain model UML class diagram example describes main classes and for Integrated Library System (ILS), aka Library Management System (RFID-LMS)
  • 29. Page 29 of 73 7.5 Activity diagramfor RFID Library Management System. The activity diagram used to describe flow of activity through a series of actions. Activity diagram is a important diagram to describe the system
  • 30. Page 30 of 73 7.6 Sequence diagram templates. Many project managers and engineers use sequence diagrams in UML to get a better idea of how tasks within a project will function, overlap, and move between objects or components. Create sequence diagrams to display interactions between objects and the order in which those interactions occur.
  • 31. Page 31 of 73 7.8 Entity Relationship Diagram advance for library This ER (Entity Relationship) Diagram represents the model of RFID Library Management System Entity. The entity-relationship diagram of Library Management System shows all the visual instrument of database tables and the relations between Books, Librarian, Student, Address etc 8.0 Phases of Software Development Life Cycle Following are the seven phases of the SDLC (System analysis and Planning) 8. 1. Planning This is the first phase in the systems development process. It identifies whether or not there is the need for a new system to achieve a business’s strategic objectives. This is a preliminary plan (or a feasibility study) for a company’s business initiative to acquire the resources to build on an infrastructure to modify or improve a service. The company might be trying to meet or exceed expectations for their employees, customers and stakeholders too. The purpose of this step is to find out the scope of the problem and determine solutions. Resources, costs, time, benefits and other items should be considered at this stage.
  • 32. Page 32 of 73 Requirement gathering and analysis: Business requirements are gathered in this phase. This phase is the main focus of the project managers and stake holders. Meetings with managers, stake holders and users are held in order to determine the requirements like; Who is going to use the system? How will they use the system? What data should be input into the system? What data should be output by the system? These are general questions that get answered during a requirements gathering phase. After requirement gathering these requirements are analyzed for their validity and the possibility of incorporating the requirements in the system to be development is also studied. Finally, a Requirement Specification document is created which serves the purpose of guideline for the next phase of the model. The testing team follows the Software Testing Life Cycle and starts the Test Planning phase after the requirements analysis is completed. 8.2. Systems Analysis and Requirements The second phase is where businesses will work on the source of their problem or the need for a change. In the event of a problem, possible solutions are submitted and analyzed to identify the best fit for the ultimate goal(s) of the project. This is where teams consider the functional requirements of the project or solution. It is also where system analysis takes place—or analyzing the needs of the end users to ensure the new system can meet their expectations. Systems analysis is vital in determining what a business"s needs are, as well as how they can be met, who will be responsible for individual pieces of the project, and what sort of timeline should be expected. There are several tools businesses can use that are specific to the second phase. They include:  CASE (Computer Aided Systems/Software Engineering)  Requirements gathering  Structured analysis 8. 3. Systems Design The third phase describes, in detail, the necessary specifications, features and operations that will satisfy the functional requirements of the proposed system which will be in place. This is the step for end users to discuss and determine their specific business information needs for the proposed system. It"s during this phase that they will consider the essential components (hardware and/or software) structure (networking capabilities), processing and procedures for the system to accomplish its objectives. On receiving system design documents, the work is divided in modules/units and actual coding is started. Since, in this phase the code is produced so it is the main focus for the developer. This is the longest phase of the software development life cycle. 8.4. Development Deployment: After successful testing the product is delivered / deployed to the customer for their use.
  • 33. Page 33 of 73 As soon as the product is given to the customers they will first do the beta testing. If any changes are required or if any bugs are caught, then they will report it to the engineering team. Once those changes are made or the bugs are fixed then the final deployment will happen. The fourth phase is when the real work begins—in particular, when a programmer, network engineer and/or database developer are brought on to do the major work on the project. This work includes using a flow chart to ensure that the process of the system is properly organized. The development phase marks the end of the initial section of the process. Additionally, this phase signifies the start of production. The development stage is also characterized by instillation and change. Focusing on training can be a huge benefit during this phase. 8.5. Integration and Testing The fifth phase involves systems integration and system testing (of programs and procedures)—normally carried out by a Quality Assurance (QA) professional—to determine if the proposed design meets the initial set of business goals. Testing may be repeated, specifically to check for errors, bugs and interoperability. This testing will be performed until the end user finds it acceptable. Another part of this phase is verification and validation, both of which will help ensure the program"s successful completion. 8.6. Implementation The sixth phase is when the majority of the code for the program is written. Additionally, this phase involves the actual installation of the newly-developed system. This step puts the project into production by moving the data and components from the old system and placing them in the new system via a direct cutover. While this can be a risky (and complicated) move, the cutover typically happens during off-peak hours, thus minimizing the risk. Both system analysts and end-users should now see the realization of the project that has implemented changes. 8.7. Operations and Maintenance The seventh and final phase involves maintenance and regular required updates. This step is when end users can fine-tune the system, if they wish, to boost performance, add new capabilities or meet additional user requirements. 8.8 Importance of the SDLC If a business determines a change is needed during any phase of the SDLC, the company might have to proceed through all the above life cycle phases again. The life cycle approach of any project is a time- consuming process. Even though some steps are more difficult than others, none are to be overlooked. An oversight could prevent the entire system from functioning as planned.
  • 34. Page 34 of 73 Systems development specialists at Innovative Architects possess extensive experience in managing these type of projects. If you have a situation at your organization and you think a customized software solution may be what you need, contact us today. Consultants at Innovative Architects will be able to quickly guide you through each of these steps, ensuring you can have your new system online as soon as possible. 9.0 Models in Software 9.1 Waterfall Model Waterfall models the very first model that is used in SDLC. It is also known as the linear sequential model. In this model, the outcome of one phase is the input for the next phase. Development of the next phase starts only when the previous phase is complete.  First, Requirement gathering and analysis is done. Once the requirement is freeze then only the System Design can start. Here in, the SRS document created is the output for the Requirement phase and it acts as an input for the System Design.  In System Design Software architecture and Design, documents which act as an input for the next phase are created i.e. Implementation and coding.  In the Implementation phase, coding is done and the software developed is the input for next phase i.e. testing.  In the testing phase, the developed code is tested thoroughly to detect the defects in the software. Defects are logged into the defect tracking tool and are retested once fixed. Bug logging, Retest, Regression testing goes on until the time the software is in go-live state.  In the Deployment phase, the developed code is moved into production after the sign off is given by the customer.  Any issues in the production environment are resolved by the developers which come under maintenance.
  • 35. Page 35 of 73 Waterfall model Diagram 9.2 V-Shaped Model: V- Model is also known as Verification and Validation Model. In this model Verification & Validation goes hand in hand i.e. development and testing goes parallel. V model and waterfall model are the same except that the test planning and testing start at an early stage in V-Model. V Model diagram
  • 36. Page 36 of 73 9.3 Prototype Model The prototype model is a model in which the prototype is developed prior to actual software. Prototype models have limited functional capabilities and inefficient performance when compared to the actual software. Dummy functions are used to create prototypes. This is a valuable mechanism for understanding the customers’ needs. Software prototypes are built prior to the actual software to get valuable feedback from the customer. Feedbacks are implemented and the proOnce the requirement gathering is done, the quick design is created and the prototype which is presented to the customer for evaluation is built.
  • 37. Page 37 of 73 Customer feedback and the refined requirement is used to modify the prototype and is again presented to the customer for evaluation. Once the customer approves the prototype, it is used as a requirement for building the actual software. The actual software is build using the Waterfall model approach. Prototype is again reviewed by the customer for any change. This process goes on till the model is accepted by the customer. 9.4 Spiral Model The Spiral Model includes iterative and prototype approach. Spiral model phases are followed in the iterations. The loops in the model represent the phase of the SDLC process i.e. the innermost loop is of requirement gathering & analysis which follows the Planning, Risk analysis, development, and evaluation. Next loop is Designing followed by Implementation & then testing. Spiral Model has four phases:  Planning  Risk Analysis  Engineering  Evaluation  (i) Planning: The planning phase includes requirement gathering wherein all the required information is gathered from the customer and is documented. Software requirement specification document is created for the next phase. (ii) Risk Analysis:
  • 38. Page 38 of 73 In this phase, the best solution is selected for the risks involved and analysis is done by building the prototype. For Example, the risk involved in accessing the data from a remote database can be that the data access rate might be too slow. The risk can be resolved by building a prototype of the data access subsystem. (iii) Engineering: Once the risk analysis is done, coding and testing are done. 9.5 Which model is use in RFID-LMS Agile Model: Agile SDLC model separates the product into cycles and delivers a working product very quickly. This methodology produces a succession of releases. Testing of each release feeds back info that’s incorporated into the next version. According to Robert Half, the drawback of this model is that the heavy emphasis on customer interaction can lead the project in the wrong direction in some cases Agile SDLC model is a combination of iterative and incremental process models with focus on process adaptability and customer satisfaction by rapid delivery of working software product. Agile Methods break the product into small incremental builds. These builds are provided in iterations. Each iteration typically lasts from about one to three weeks. Every iteration involves cross functional teams working simultaneously on various areas like −  Planning  Requirements Analysis  Design  Coding  Unit Testing and  Acceptance Testing. At the end of the iteration, a working product is displayed to the customer and important stakeholders. 9.6 What is Agile? Agile model believes that every project needs to be handled differently and the existing methods need to be tailored to best suit the project requirements. In Agile, the tasks are divided to time boxes (small time frames) to deliver specific features for a release. Iterative approach is taken and working software build is delivered after each iteration. Each build is incremental in terms of features; the final build holds all the features required by the customer. How an Agile team works Agile project management was developed as an alternative to traditional project management, which is directed towards a major final deliverable. Agile instead breaks goals down into several independent products that can be developed, released, and iterated upon quickly. The two main styles of Agile project management are Scrum and Kanban, which both utilize a board to visualize tasks in columns of to-do, in progress, and done.
  • 39. Page 39 of 73 There are a few defining characteristics of an Agile workflow:  Daily standup – A daily meeting in which contributors and managers discuss what work was done yesterday, what they’re working on today, and any questions that come up.  Sprints – Short spans in which products are planned, developed, reviewed, and released. They are projects within the projects.  Regular reviews and retrospectives – An Agile team manages itself, but there are built-in measures to make sure work is being delivered at a consistent quality. Peer review and reviews by managers occur before tasks get completed and after the sprint is over. With short task spans and demanding schedules, an Agile workflow requires a coordinated team. Roles have to be circumscribed enough so that people know what they ought to be doing at all times, yet flexible enough to allow people to take the initiative and exceed expectations. A Scrum team is small, lean, and results-driven. The ideal Scrum team is 5-6 people. An Agile team working in Scrum has three roles:  The Product Owner – Often an executive or key stakeholder, the Product Owner has a vision for the end product and a sense of how it will fit into the company’s long-term goals. This person will need to direct communication efforts, alerting the team to major developments and stepping in to course- correct and implement high-level changes as necessary.  The Scrum Master – The Scrum Master is most akin to a project manager. They are guardians of process, givers of feedback, and mentors to junior team members. They oversee day-to-day functions, maintain the Scrum board, check in with team members, and make sure tasks are being completed on target.  The Team Member – Team members are the makers: front- and back-end engineers, copywriters, designers, videographers, you name it. Team members have varied roles and skills but all are responsible for getting stuff done on time and in excellent quality. 9.7 Rules in Agile Model From Beck, Kent et al. (2001), below are the twelve core principles of the Agile Manifesto: 1. Customer satisfaction through early and continuous delivery of useful software Customer satisfaction is obtained through early delivery of products to customer for testing and feedback, through continuous delivery to let customer know the progress and through delivery of values to the customers by fulfilling the top priority requirements first. The output of each iteration is working code that can be used to evaluate and respond to changing and evolving user requirements. 2. Welcome changing requirements, even late in development This places emphasis on responsiveness to change as opposed to tight alignment to approved plans. The change control process is simplified and no formal documentation and approval required. This is harness change for the customer’s competitive advantage because it allow fast response to latest changes in external environment to enhance competitive advantage to emerging opportunities. 3. Frequently Delivered Software(weeks rather than months) This provides immediate values to the customers by delivering working features. Each iteration or Sprint should lead to a release of a product. The teams make sure that each feature is fully developed, tested, styled,
  • 40. Page 40 of 73 and accepted by the product owner before counting it as delivered. The project team activities can be better structured with the fixed delivery timeframe to focus on delivery of value. 4. Close, daily cooperation between business people and developers Agile development principles include keeping requirements and documentation lightweight, and acknowledging that change is a normal and acceptable reality in software development. This makes close collaboration particularly important to clarify requirements just-in-time and to keep all team members ‘on the same page’ throughout the development. 5. Projects are built around motivated individuals, who should be trusted Projects are built around motivated individuals who are given the environment and support they need, and trusted to get the job done. Team members choose the jobs they are most interested in through self- organization and not through external management influence. Micromanagement and top-down approach to management are shunned. 6. Face-to-face conversation is the best form of communication Obtain direct feedback by going to the source of problem or confusion and use oral communication at the workplace for the benefit of osmotic communication. Virtual team conversations are facilitated via video conferencing. 7. Collocation and pair programming This principle is practiced via colocation and pair programming. Collocation involves collocating a number of teams in the same open area and pair programming, which entails two programmers sharing a single workstation (one screen, keyboard and mouse). The programmer at the keyboard is usually called the "driver", the other, also actively involved in the programming task but focusing more on overall direction is the "navigator"; it is expected that the programmers swap roles every few minutes or so. This leads to increase in code quality because "programming out loud" leads to clearer articulation of the complexities and hidden details in coding tasks, reducing the risk of error or going down blind alleys. It also yields better diffusion of knowledge among the team. Other benefits include better transfer of skills, large reduction in coordination efforts, and improved resiliency of a pair to interruptions. 8. Sustainable development, able to maintain a constant pace Agile methodologies seek work-life balance among the team members and promote happiness by avoiding burnout or exhaustion. Through close collaboration and by being alert and creative, these methodologies avoid long nights and weekends, during which people try to undo the errors of unresponsive planning. The sponsors, developers, and users are able to maintain a constant pace indefinitely. 9. Excellence through Reflection The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. These retrospective meetings ensure that the lessons learned during the project are put back into the next iteration. 10. Simplicity—the art of maximizing the amount of work not done—is essential
  • 41. Page 41 of 73 The Pareto principle or the 80/20 rule is applied. It means that typically 80% of your results may actually come from only 20% of your efforts! The idea is to focus on the important 20% of effort that gets the majority of the results. If you have control over the scope, and if speed-to-market is of primary importance, why not seek to deliver the important 80% of your product in just 20% of the time? Focus on what are essential to create value to the project and customer not on distractors that do not add values like components, process, etc. 11. Self-organizing teams The team is utterly self-managing under the Scrum methodology. It has autonomy and responsibility to meet the goals of the sprint and is responsible for determining how it will accomplish the work to be completed. The basic principle is that the team knows best how to carry out the work, not the project manager or human resources department. 12. Regular adaptation to changing circumstance This is in contrast to capturing all known requirements and baseline the scope so that any other changes are subject to change control. Agile Development holds that that requirements emerge and evolve, and that however much analysis and design you do, this will always be the case because you cannot really know for sure what you want until you see and use the software. And in the time you would have spent analyzing and reviewing requirements and designing a solution, external conditions could also have changed.
  • 42. Page 42 of 73 Agile Model - Pros and Cons Agile methods are being widely accepted in the software world recently. However, this method may not always be suitable for all products. Here are some pros and cons of the Agile model. The advantages of the Agile Model are as follows −  Is a very realistic approach to software development  Promotes teamwork and cross training.  Functionality can be developed rapidly and demonstrated.  Resource requirements are minimum.  Suitable for fixed or changing requirements  Delivers early partial working solutions.  Good model for environments that change steadily.  Minimal rules, documentation easily employed.  Enables concurrent development and delivery within an overall planned context.  Little or no planning required.  Easy to manage.  Gives flexibility to developers. The disadvantages of the Agile Model are as follows −  Not suitable for handling complex dependencies.  More risk of sustainability, maintainability and extensibility.  An overall plan, an agile leader and agile PM practice is a must without which it will not work.  Strict delivery management dictates the scope, functionality to be delivered, and adjustments to meet the deadlines.  Depends heavily on customer interaction, so if customer is not clear, team can be driven in the wrong direction.  There is a very high individual dependency, since there is minimum documentation generated.  Transfer of technology to new team members may be quite challenging due to lack of documentation. 10.0 Software Development Life Cycle 10.1 Defining &Planning and Requirement Analysis Requirement analysis is the most important and fundamental stage in SDLC. It is performed by the senior members of the team with inputs from the customer, the sales department, market surveys and domain experts in the industry. This information is then used to plan the basic project approach and to conduct product feasibility study in the economical, operational and technical areas. Planning for the quality assurance requirements and identification of the risks associated with the project is also done in the planning stage. The outcome of the technical feasibility study is to define the various technical approaches that can be followed to implement the project successfully with minimum risks.
  • 43. Page 43 of 73 10.2 Design: In this third phase, the system and software design documents are prepared as per the requirement specification document. High-Level Design (HLD)  Brief description and name of each module  An outline about the functionality of every module  Interface relationship and dependencies between modules  Database tables identified along with their key elements  Complete architecture diagrams along with technology details Low-Level Design(LLD)  Functional logic of the modules  Database tables, which include type and size  Complete detail of the interface  Addresses all types of dependency issues  Listing of error messages  Complete input and outputs for every module 10.3 Coding/Implimentation. Once the system design phase is over, the next phase is coding. In this phase, developers start build the entire system by writing code using the chosen programming language. In the coding phase, tasks are divided into units or modules and assigned to the various developers. It is the longest phase of the Software Development Life Cycle process. In this phase, Developer needs to follow certain predefined coding guidelines. They also need to use programming tools like compiler, interpreters, debugger to generate and implement the code. Example:
  • 44. Page 44 of 73 Code For RFID-LMS Dashboard and Sign in and sign Up page. <?php error_reporting(E_ERROR | E_WARNING | E_PARSE); $currDir = dirname(__FILE__); include("{$currDir}/defaultLang.php"); include("{$currDir}/language.php"); include("{$currDir}/lib.php"); $x = new DataList; $x->TableTitle = $Translation['homepage']; $tablesPerRow = 2; $arrTables = getTableList(); // according to provided GET parameters, either log out, show login form (possibly with a failed login message), or show homepage if(isset($_GET['signOut'])){ logOutUser(); redirect("index.php?signIn=1"); }elseif(isset($_GET['loginFailed']) || isset($_GET['signIn'])){ if(!headers_sent() && isset($_GET['loginFailed'])) header('HTTP/1.0 403 Forbidden'); include("{$currDir}/login.php"); }else{ include("{$currDir}/main.php")}
  • 45. Page 45 of 73 Code for Book retrieve the book: <?php /* accessible tables */ $arrTables = get_tables_info(); if(is_array($arrTables) && count($arrTables)){ /* how many table groups do we have? */ $groups = get_table_groups(); $multiple_groups = (count($groups) > 1 ? true : false); /* construct $tg: table list grouped by table group */ $tg = array(); if(count($groups)){ foreach($groups as $grp => $tables){ foreach($tables as $tn){ $tg[$tn] = $grp; } } } $i = 0; $current_group = ''; foreach($tg as $tn => $tgroup){ $tc = $arrTables[$tn]; /* is the current table filter-first? */ $tChkFF = array_search($tn, array()); /* hide current table in homepage? */ $tChkHL = array_search($tn, array('books','NewsPapers','Magazines','Users','Book_Issue','Return_Book','Types')); /* allow homepage 'add new' for current table? */ $tChkAHAN = array_search($tn, array()); /* homepageShowCount for current table? */ $count_badge = ''; if($tc['homepageShowCount']){ $sql_from = get_sql_from($tn); $count_records = ($sql_from ? sqlValue("select count(1) from " . $sql_from) : 0); $count_badge = '<span class="badge hspacer-lg text-bold">' . number_format($count_records) . '</span>'; } $t_perm = getTablePermissions($tn); $can_insert = $t_perm['insert'];
  • 46. Page 46 of 73 $searchFirst = (($tChkFF !== false && $tChkFF !== null) ? '?Filter_x=1' : ''); ?> <?php if(!$i && !$multiple_groups){ /* no grouping, begin row */ ?> <div class="row table_links"> <?php } ?> Coding Techniques STRUCTURED PROGRAMMING Dijkstra recognized that the go to statement was an inherently error-response programming construct. It made it difficult to localized state changes. This observation led to the development of so-called structured programming. Moreover, structured programming means programming without using go to statements, programming using only while loop and if statements as control constructs and designing using top-down approach. The adoption of structured programming was an important milestone in the development of software engineering because it was the first step away from an undisciplined approach to software development. The problems with structured programming are as follows: • Only a limited number of control and data abstraction constructs are used. The program development process is a process of stepwise refinement of the specification. • A limited number of constructs are used and the aim is to apply correctness-preserving transformation to the specification to create the program code. • A computer program is said to be structured if it has a modular design and uses only the three types of logical structures, sequences, decisions and loops. • Sequences: Statements are executed one after another. • Decisions: One of two blocks of program code is executed based on a test for some condition. • Loops (Iteration): One or more statements are executed repeatedly as long as a specified condition is true Advantages of Structured programming The goal of structured programming is to create correct programs that are easy to write, understand and change. They are easy to write programs by modular design. Moreover, modular design increases the programmer’s productivity by allowing them to look at the big picture first and focus on details later. In addition, several programmers can work on a single, large program, each working on a different module Studies show structured programs take less time to write than standard programs. Procedures written for one
  • 47. Page 47 of 73 program can be reused in other programs requiring the same task. A procedure that can be used in many programs is said to be reusable. It is easy to debug the programs written using structured programming languages since each procedure is specialized to perform just one task, a procedure can be checked individually. In addition, older unstructured programs consist of a sequence of instructions that are not grouped for specific tasks. The logic of such programs is cluttered with details and therefore difficult to follow. Moreover, such programs are easy to understand. Here, the relationship between the procedures shows the modular design of the program. Moreover, meaningful procedure names and clear documentation identify the task performed by each module and meaningful variable names help the programmer identify the purpose of each variable. Finally, the modular programming provides flexibility in modification since it is easy to change one module at a time. A correctly written structured program is self-documenting and hence it can be easily understood by another programmer. PROGRAMMING STYLE The following are the programming styles that are followed while writing programs. • It is necessary to use internal documentation inside the programs. These notes provide guidelines for internal program documentation and style. Although they are intended for beginners in programming, style skills will carry over into professional life later. • In fact, most professional programmers would consider these standards to be less than minimum requirements for commercial-quality software documentation. While geared mainly for a block structured language such as Pascal or C, most of the points discussed are applicable to any programming language. • The essence of good programming style is communication. Good style in programming is roughly as difficult to learn as good style in English.  In both cases, the document has no value if it does not convey its meaning to the reader. Any program that will be used must be maintained by somebody – and that somebody must be able to understand the code by reading it.  Any program that needs debugging will be easier to debug if the creator carefully explains what’s going on. INTERNAL DOCUMENTATION
  • 48. Page 48 of 73 Internal documentation comprises the code comprehension features provided as part of the source code itself. Internal documentation is provided through appropriate module header and comments embedded in the source code. Internal documentation is provided through the use of meaningful variable names, module and function headers, code indentation, code structuring, use of enumerated types and constant identifiers, use of user-defined data types, etc. Good software development organizations usually ensure good internal documentation by appropriately formulating their coding standards and coding guidelines. CODING Coding is undertaken once the design phase is complete and the design documents have been successfully reviewed. In this coding phase, every module identified and specified in the design document is independently coded. Good software development organizations require their programmers to adhere to some well-defined and standard style of coding is called coding standards. CODING STANDARD AND GUIDELINES Good software development organizations usually develop their own coding standards and guidelines depending on what best suits their needs and the steps of products they develop. Here, some general coding standards and guidelines which are commonly adopted by many software development organizations are provided rather than trying to provide an exhaustive list of representative coding standards and representative coding guidelines. REPRESENTATIVE CODING STANDARDS The use of global variables must be limited in a program. Contents of headers preceding codes for different modules. Naming convention for global variables, local variables and constant identifiers. Error return conventions and exception handling mechanisms. REPRESENTATIVE CODING GUIDELINES
  • 49. Page 49 of 73  Do not use a coding style that is too clever or too difficult to understand.  Avoid obscure side effect and don’t use go-to statements.  Do not use an identifier for multiple purposes.  The code should be well-documented.  The length of any function should not exceed 10 source lines unless it is necessary. NAMES The naming scheme is one of the most influential aids to understanding the logical flow of an application. A name should tell “what” rather than “how.” By avoiding names that expose the underlying implementation, which can change, the programmers can preserve a layer of abstraction that simplifies the complexity. For example, they can use GetNextStudent() instead of GetNextArrayElement(). A problem of naming is the difficulty in selecting a proper name which may indicate that the programmers need to further analyze or define the purpose of an item. It makes names long enough to be meaningful but short enough to avoid verbosity. Programmatically, a unique name serves only to differentiate one item from another. Expressive names function as an aid to a human reader; therefore, it makes sense to provide a name that a human reader can comprehend. However, be certain that the chosen names are in compliance with the applicable language’s rules and standards. VARIABLES The following rules must be followed to provide names in programming for variables.Append computation qualifiers (Avg, Sum, Min, Max, Index) to the end of a variable name where appropriate.Do not use literal numbers or literal strings, such as For i = 1 To 7. Instead, use named constants, such as For i = 1 To NUM_DAYS_IN_WEEK for ease of maintenance and understanding. CODING REVIEW The code review for a module is carried out after the module is successfully compiled and all the syntax errors eliminated. Code reviews are extremely cost-effective strategies for reduction in coding error in order to produce high quality code. Normally two types of code reviews are carried out on the code of module- code walk through and code inspection. Coding Walkthroughs Code walk-through is a an informal code of analysis technique. In this technique after a module has been coded, it is successfully compiled and all syntax errors are eliminated. Some member of the development team are given the code a few days before the walkthrough meeting to read and understand the code. Each member selects some test cases and simulates execution of the code by hand. Objective of walk-through is to discover the algorithmic and logical error in the code. The team performing the code walk-through should not be either too big or too small. Ideally, it should consist of three to seven members. The discussion should focus on discovery of errors and not on how to fix the discovered errors. In order to foster cooperation and to avoid the feeling among the engineers that they are being evaluated in the code walk through meeting, managers should not attend the walk through meetings. CODE INSPECTION
  • 50. Page 50 of 73 Fagan Inspection is a method to find defects. It is a structured process that involves detecting defects in development documents like programming code, specifications, designs etc., during the various phases of software development process Software maintenance is the general process of changing a system after it has been diverted. The change may be simple changes to correct coding errors, more extensive changes to correct design errors or significant enhancement to correct specification error or Accommodate new requirements. The maintenance activities include the checking of use of uninitialized variables, jumps into loops and non-terminating loops, incompatible assignments, array indices out of bounds, improper storage allocation and de-allocation, mismatches between actual and formal parameters in procedure calls, use of incorrect logical operators or incorrect precedence among operators, improper modification of loops and comparison of equality of floating point values, etc. SUMMARY Coding is an important activity in software engineering process. Software size is optimized using coding. Selection of a programming language is important for good coding. Good coding practices, enhances the quality of software.
  • 51. Page 51 of 73 11.1 Screen Short for RFID-LMS Login & Signup: Introduction and code Today I’m going to connect login & Signup Webservices using Login & Signup HTML page. You can use any HTML page, I’m using This because it has a really beautiful design and has Form for both Login & Signup. 11.2 Login Page for Student and Admin/Librarian.
  • 52. Page 52 of 73 Username:Admin Password : admin Code For student Registration/login page if($_POST['signUp'] != ''){ // receive data $memberID = is_allowed_username($_POST['newUsername']); $email = isEmail($_POST['email']); $password = $_POST['password']; $confirmPassword = $_POST['confirmPassword']; $groupID = intval($_POST['groupID']); $custom1 = makeSafe($_POST['custom1']); $custom2 = makeSafe($_POST['custom2']); $custom3 = makeSafe($_POST['custom3']); $custom4 = makeSafe($_POST['custom4']); // validate data if(!$memberID){ echo error_message($Translation['username invalid']); exit; } if(strlen($password) < 4 || trim($password) != $password){ echo error_message($Translation['password invalid']); exit; } if($password != $confirmPassword){ echo error_message($Translation['password no match']); exit; } if(!$email){ echo error_message($Translation['email invalid']); exit; } if(!sqlValue("select count(1) from membership_groups where groupID='$groupID' and allowSignup=1")){ echo error_message($Translation['group invalid']); exit; } // save member data $needsApproval = sqlValue("select needsApproval from membership_groups where groupID='$groupID'"); sql("INSERT INTO `membership_users` set memberID='$memberID', passMD5='".md5($password)."', email='$email', signupDate='".@date('Y-m-d')."', groupID='$groupID', isBanned='0', isApproved='".($needsApproval==1 ? '0' : '1')."', custom1='$custom1', custom2='$custom2', custom3='$custom3', custom4='$custom4',
  • 53. Page 53 of 73 comments='member signed up through the registration form.'", $eo); // admin mail notification /* ---- application name as provided in AppGini is used here ---- */ $message = nl2br( "A new member has signed up for {$app_name}.nn" . "Member name: {$memberID}n" . "Member group: " . sqlValue("select name from membership_groups where groupID='{$groupID}'") . "n" . "Member email: {$email}n" . "IP address: {$_SERVER['REMOTE_ADDR']}n" . "Custom fields:n" . ($adminConfig['custom1'] ? "{$adminConfig['custom1']}: {$custom1}n" : '') . ($adminConfig['custom2'] ? "{$adminConfig['custom2']}: {$custom2}n" : '') . ($adminConfig['custom3'] ? "{$adminConfig['custom3']}: {$custom3}n" : '') . ($adminConfig['custom4'] ? "{$adminConfig['custom4']}: {$custom4}n" : '') ); if($adminConfig['notifyAdminNewMembers'] == 2 && !$needsApproval){ sendmail(array( 'to' => $adminConfig['senderEmail'], 'subject' => "[{$app_name}] New member signup", 'message' => $message )); }elseif($adminConfig['notifyAdminNewMembers'] >= 1 && $needsApproval){ sendmail(array( 'to' => $adminConfig['senderEmail'], 'subject' => "[{$app_name}] New member awaiting approval", 'message' => $message )); }
  • 54. Page 54 of 73 11.3 Dashboard with all related Features and Menu: A dashboard has three parts: a header, a sidebar, and a body. Here's the most minimal possible UI for a dashboard page.DashboardHeader(), dashboardSidebar(), dashboardBody(). Description After login to software admin panel the home page looks like this. You can set a specific page to display in dashboard from settings . the projects we are building (especially web apps and web software) are also going to integrate countless aspects of modern web development; analytics, dynamic forms data, UI and UX elements, and much more. 11.4 Student Registered Page:
  • 55. Page 55 of 73 11.4 Student Registration page Register students By Student Name Roll No and Cnic and Contact ID:
  • 56. Page 56 of 73 11.5 Code For Student Registration Page: <?php // This script and data application were generated by AppGini 5.70 // Download AppGini for free from https://bigprof.com/appgini/download/ $currDir=dirname(__FILE__);
  • 57. Page 57 of 73 include("$currDir/defaultLang.php"); include("$currDir/language.php"); include("$currDir/lib.php"); @include("$currDir/hooks/Users.php"); include("$currDir/Users_dml.php"); // mm: can the current member access this page? $perm=getTablePermissions('Users'); if(!$perm[0]){ echo error_message($Translation['tableAccessDenied'], false); echo '<script>setTimeout("window.location='index.php?signOut=1'", 2000);</script>'; exit; } $x = new DataList; $x->TableName = "Users"; // Fields that can be displayed in the table view $x->QueryFieldsTV = array( "`Users`.`id`" => "id", "`Users`.`Membership_Number`" => "Membership_Number", "`Users`.`Name`" => "Name", "`Users`.`Contact`" => "Contact", "`Users`.`ID_Number`" => "ID_Number" ); // mapping incoming sort by requests to actual query fields $x->SortFields = array( 1 => '`Users`.`id`', 2 => 2, 3 => 3, 4 => 4, 5 => '`Users`.`ID_Number`' ); // Fields that can be displayed in the csv file $x->QueryFieldsCSV = array( "`Users`.`id`" => "id", "`Users`.`Membership_Number`" => "Membership_Number", "`Users`.`Name`" => "Name", "`Users`.`Contact`" => "Contact", "`Users`.`ID_Number`" => "ID_Number" ); // Fields that can be filtered $x->QueryFieldsFilters = array( "`Users`.`id`" => "ID", "`Users`.`Membership_Number`" => "CNIC Number", "`Users`.`Name`" => "Name", "`Users`.`Contact`" => "Contact", "`Users`.`ID_Number`" => " Roll Number ID " ); // Fields that can be quick searched
  • 58. Page 58 of 73 $x->QueryFieldsQS = array( "`Users`.`id`" => "id", "`Users`.`Membership_Number`" => "Membership_Number", "`Users`.`Name`" => "Name", "`Users`.`Contact`" => "Contact", "`Users`.`ID_Number`" => "ID_Number" ); 11.6 Website Preview This is my website for RFID-LMS System
  • 59. Page 59 of 73 11.5 Advance Book Scan on RFID Machine to Publish and issue the Books
  • 60. Page 60 of 73 Screen Shot for Books Register w.r.t rfid / isbn number that are unique for each book.
  • 61. Page 61 of 73 Issue Books by RFID.
  • 62. Page 62 of 73 Returning the books by RFID .
  • 63. Page 63 of 73 Software Quality and software attributes What Are The Quality Attributes? To start with, let us briefly understand Quality can be defined in a different manner. The quality definition may differ from person to person. But finally, there should be some standards. So Quality can be defined as  Degree of excellence – Oxford dictionary  Fitness for purpose – Edward Deming  Best for the customer’s use and selling price – Feigenbaum  The totality of characteristics of an entity that bear on its ability to satisfy stated or implied needs – ISO How a Product developer will define quality – The product which meets the customer requirements. How Customer will define Quality – Required functionality is provided with user friendly manner. These are some quality definitions from different perspective. Now lets see how can one measure some quality attributes of product or application. Following factors are used to measure software development quality. Each attribute can be used to measure the product performance. These attributes can be used for Quality assurance as well as Quality control. Quality Assurance activities are oriented towards prevention of introduction of defects and Quality control activities are aimed at detecting defects in products and services. Reliability Measure if product is reliable enough to sustain in any condition. Should give consistently correct results. Product reliability is measured in terms of working of project under different working environment and different conditions. Maintainability Different versions of the product should be easy to maintain. For development it should be easy to add code to existing system, should be easy to upgrade for new features and new technologies time to time. Maintenance should be cost effective and easy. System be easy to maintain and correcting defects or making a change in the software. . Correctness: The correctness of a software system refers to:
  • 64. Page 64 of 73 - Agreement of program code with specifications - Independence of the actual application of the software system. The correctness of a program becomes especially critical when it is embedded in a complex software system. Reliability of a software system is defined as the probability that this system fulfills a function (determined by the specifications) for a specified number of input trials under specified input conditions in a specified time interval (assuming that hardware and input are free of errors). A software system can be seen as reliable if this test produces a low error rate (i.e., the probability that an error will occur in a specified time interval.) The error rate depends on the frequency of inputs and on the probability that an individual input will lead to an error. Adequacy: Factors for the requirement of Adequacy: - The input required of the user should be limited to only what is necessary. The software system should expect information only if it is necessary for the functions that the user wishes to carry out. The software system should enable flexible data input on the part of the user and should carry out plausibility checks on the input. In dialog-driven software systems, we vest particular importance in the uniformity, clarity and simplicity of the dialogs. - The performance offered by the software system should be adapted to the wishes of the user with the consideration given to extensibility; i.e., the functions should be limited to these in the specification. - The results produced by the software system: The results that a software system delivers should be output in a clear and wellstructured form and be easy to interpret. The software system should afford the user flexibility with respect to the scope, the degree of detail, and the form of presentation of the results. Error messages must be provided in a form that is comprehensible for the user. Learnability: Learnability of a software system depends on: - The design of user interfaces - The clarity and the simplicity of the user instructions (tutorial or user manual). The user interface should present information as close to reality as possible and permit efficient utilization of the software’s failures. The user manual should be structured clearly and simply and be free of all dead weight. It should explain to the user what the software system should do, how the individual functions are activated, what relationships exist between functions, and which exceptions might arise and how they can be corrected. In addition, the user manual should serve as a reference that supports the user in quickly and comfortably finding the correct answers to questions. Robustness: Robustness reduces the impact of operational mistakes, erroneous input data, and hardware errors.