Barcode 1
-
Upload
bhagathchethan -
Category
Documents
-
view
212 -
download
0
Transcript of Barcode 1
1. INTRODUCTIONCargo services are one of the busy businesses where daily many customers sends
goods from one county, state to other county. In order to deliver goods in given time
management system must be computerized and reduce manual work and provide
better quality.
1.1 PURPOSEThe main purpose of the project is too easily tracking the cargoes with help of a
barcode which is attached to the cargoes. The customer is provided with the bar code
number through which he can check for the status of the package sent.
1.2 SCOPEThe proposed ‘Barcode Labeler’ System includes all the factors of the existing system
but in more efficient way. Proposed system is developed in C#.NET under MS SQL
SERVER 2005 as back end and 2D barcode algorithm is used for the
implementation .Only authorized users can enter in to the system on entering the correct
User name and Password. So unauthorized users cannot access system.
1.3 OVERVIEWThe barcode label system allows users to read barcode labels as input through barcode
scanner ,the software allows administrator to permit authorised users only . The users
needs to log in to the software to use the software.
The barcode printing is another feature of the software ,which prints out and stores the
barcode for future use.
Processes Involves
Access Management process to allow access to users of various courier
services.
Courier company information setup and maintenance process.
Routes Information setup and maintenance process.
Packages tracking number setup process.
Discrepancy notification process.
Customer package tracking process.
Data Archiving and backup Process.
Barcode Based Cargo 1Tracking System
2. TECHNOLOGIES USEDTechnologies used are .NET technology and structure is the ASP.NET set of
technologies. These web development technologies are used in the making of
websites and net services working on the .NET infrastructure.
2.1 INTRODUCTION TO .NET FRAMEWORKThe .NET Framework is a new computing platform that simplifies application
development in the highly distributed environment of the Internet. The .NET
Framework is designed to fulfill the following objectives: To provide a consistent
object-oriented programming environment whether object code is stored and executed
locally, executed locally but Internet-distributed, or executed remotely.
To provide a code-execution environment that minimizes software deployment
and versioning conflicts.
To provide a code-execution environment that guarantees safe execution of
code, including code created by an unknown or semi-trusted third party.
To provide a code-execution environment that eliminates the performance
problems of scripted or interpreted environments.
To make the developer experience consistent across widely varying types of
applications, such as Windows-based applications and Web-based
applications.
To build all communication on industry standards to ensure that code based on
the .NET Framework can integrate with any other code.
The .NET Framework has two main components:
The common language runtime.
The .NET Framework class library.
The common language runtime is the foundation of the .NET Framework. You can
think of the runtime as an agent that manages code at execution time, providing core
services such as memory management, thread management, and Remoting, while also
enforcing strict type safety and other forms of code accuracy that ensure security and
robustness. In fact, the concept of code management is a fundamental principle of the
runtime. Code that targets the runtime is known as managed code, while code that
does not target the runtime is known as unmanaged code. The class library, the other
main component of the .NET Framework, is a comprehensive, object-oriented
collection of reusable types that you can use to develop applications ranging from
Barcode Based Cargo 2Tracking System
traditional command-line or graphical user interface (GUI) applications to
applications based on the latest innovations provided by ASP.NET.
2.2ASP.NET2.2.1 Server Application DevelopmentServer-side applications in the managed world are implemented through runtime
hosts. Unmanaged applications host the common language runtime, which allows
your custom managed code to control the behavior of the server. This model provides
you with all the features of the common language runtime and class library while
gaining the performance and scalability of the host server.
The following illustration shows a basic network schema with managed code running
in different server environments. Servers such as IIS and SQL Server can perform
standard operations while your application logic executes through the managed code.
2.2.2Server-Side Managed CodeASP.NET is the hosting environment that enables developers to use the .NET
Framework to target Web-based applications. However, ASP.NET is more than just a
runtime host; it is a complete architecture for developing Web sites and Internet-
distributed objects using managed code. Both Web Forms and XML Web services use
IIS and ASP.NET as the publishing mechanism for applications, and both have a
collection of supporting classes in the .NET Framework.
XML Web services, an important evolution in Web-based technology, are distributed,
server-side application components similar to common Web sites. However, unlike
Web-based applications, XML Web services components have no UI and are not
targeted for browsers such as Internet Explorer and Netscape Navigator. Instead,
XML Web services consist of reusable software components designed to be
consumed by other applications, such as traditional client applications, Web-based
applications, or even other XML Web services. As a result, XML Web services
technology is rapidly moving application development and deployment into the highly
distributed environment of the Internet.
If you have used earlier versions of ASP technology, you will immediately notice the
improvements that ASP.NET and Web Forms offers. For example, you can develop
Web Forms pages in any language that supports the .NET Framework. In addition,
your code no longer needs to share the same file with your HTTP text (although it can
continue to do so if you prefer). Web Forms pages execute in native machine
Barcode Based Cargo 3Tracking System
language because, like any other managed application, they take full advantage of the
runtime. In contrast, unmanaged ASP pages are always scripted and interpreted.
ASP.NET pages are faster, more functional, and easier to develop than unmanaged
ASP pages because they interact with the runtime like any managed application.
The .NET Framework also provides a collection of classes and tools to aid in
development and consumption of XML Web services applications. XML Web
services are built on standards such as SOAP (a remote procedure-call protocol),
XML (an extensible data format), and WSDL ( the Web Services Description
Language). The .NET Framework is built on these standards to promote
interoperability with non-Microsoft solutions.
For example, the Web Services Description Language tool included with the .NET
Framework SDK can query an XML Web service published on the Web, parse its
WSDL description, and produce C# or Visual Basic source code that your application
can use to become a client of the XML Web service. The source code can create
classes derived from classes in the class library that handle all the underlying
communication using SOAP and XML parsing. Although you can use the class
library to consume XML Web services directly, the Web Services Description
Language tool and the other tools contained in the SDK facilitate your development
efforts with the .NET Framework.
If you develop and publish your own XML Web service, the .NET Framework
provides a set of classes that conform to all the underlying communication standards,
such as SOAP, WSDL, and XML. Using those classes enables you to focus on the
logic of your service, without concerning yourself with the communications
infrastructure required by distributed software development.
Finally, like Web Forms pages in the managed environment, your XML Web
service will run with the speed of native machine language using the scalable
communication of IIS.
2.2.3Active Server Pages.NETASP.NET is a programming framework built on the common language runtime that
can be used on a server to build powerful Web applications. ASP.NET offers several
important advantages over previous Web development models:
Enhanced Performance.
World-Class Tool Support.
Barcode Based Cargo 4Tracking System
Power and Flexibility.
Simplicity.
Manageability.
Scalability and Availability.
Customizability and Extensibility.
Security.
2.3 ADO.NET ADO.NET is an evolution of the ADO data access model that directly addresses user
requirements for developing scalable applications. It was designed specifically for the
web with scalability, statelessness, and XML in mind.
ADO.NET uses some ADO objects, such as the Connection and Commandobjects,
and also introduces new objects. Key new ADO.NET objects include the DataSet,
DataReader, and DataAdapter.
The important distinction between this evolved stage of ADO.NET and previous data
architectures is that there exists an object -- the DataSet-- that is separate and distinct
from any data stores. Because of that, the DataSetfunctions as a standalone entity.
You can think of the Data Set as an always disconnected record set that knows
nothing about the source or destination of the data it contains. Inside a DataSet, much
like in a database, there are tables, columns, relationships, constraints, views, and so
forth.
A Data Adapter is the object that connects to the database to fill the DataSet. Then, it
connects back to the database to update the data there, based on operations performed
while the DataSetheld the data. In the past, data processing has been primarily
connection-based. Now, in an effort to make multi-tiered apps more efficient, data
processing is turning to a message-based approach that revolves around chunks of
information. At the center of this approach is the DataAdapter, which provides a
bridge to retrieve and save data between a DataSet and its source data store. It
accomplishes this by means of requests to the appropriate SQL commands made
against the data store.
The XML-based DataSet object provides a consistent programming model that works
with all models of data storage: flat, relational, and hierarchical. It does this by having
no 'knowledge' of the source of its data, and by representing the data that it holds as
collections and data types. No matter what the source of the data within the DataSet
Barcode Based Cargo 5Tracking System
is, it is manipulated through the same set of standard APIs exposed through the
DataSetand its subordinate objects.
While the DataSethas no knowledge of the source of its data, the managed
provider has detailed and specific information. The role of the managed provider is to
connect, fill, and persist the DataSetto and from data stores. The OLE DB and SQL
Server .NET Data Providers (System.Data.OleDb and System.Data.SqlClient) that are
part of the .Net Framework provide four basic objects: the Command,Connection,
DataReader and DataAdapter. In the remaining sections of this document, we'll walk
through each part of the DataSet and the OLE DB/SQL Server .NET Data Providers
explaining what they are, and how to program against them.
The following sections will introduce you to some objects that have evolved,
and some that are new. These objects are:
Connections:For connection to and managing transactions against a database.
Commands: For issuing SQL commands against a database.
Data Readers: For reading a forward-only stream of data records from a SQL
Server data source.
Data Sets: For storing, Remoting and programming against flat data, XML
data and relational data.
Data Adapters: For pushing data into a Data Set, and reconciling data against a
database.
When dealing with connections to a database, there are two different options: SQL
Server .NET Data Provider (System.Data.SqlClient) and OLE DB .NET Data
Provider (System.Data.OleDb). In these samples we will use the SQL Server .NET
Data Provider. These are written to talk directly to Microsoft SQL Server. The OLE
DB .NET Data Provider is used to talk to any OLE DB provider (as it uses OLE DB
underneath).
2.4 C# .NETC#, pronounced c sharp, is a computer language used to give instructions that tell the
computer what to do, how to do it, and when to do it. This is a universal language that
is used on many operating systems, including Microsoft Windows. C# is one of the
languages used in the Microsoft .NET Framework.
The Microsoft .NET Framework is a library of objects that create or draw things on
the computer.
Barcode Based Cargo 6Tracking System
The programs we will write are meant to give instructions to the computer about what
to do, when to do something, and how to do it. You write these instructions in an easy
to understand English format, using words we will study. This means that a regular
instruction uses normal text with alphabetic characters, numbers, and non-readable
symbols. Normally, you can write your instructions using any text editor such as
Notepad, WordPad, WordPerfect, or Microsoft Word, etc. When writing your
instructions, there are rules your must follow and suggestions you should observe.
The group of instructions used by your program is also referred to as code. To assist
you with writing code, Microsoft Visual C# 2008 includes a text editor referred to as
the Code Editor. This is the window that displays when you have just created a
console application. Besides the Code Editor, the integrated development interface
(IDE) of the Microsoft Visual C# 2008 is made of various parts, which we will review
when necessary.
2.5 SQL SERVERA database management, or DBMS, gives the user access to their data and
helps them transform the data into information. Such database management systems
include dBase, paradox, IMS, SQL Server and SQL Server. These systems allow
users to create, update and extract information from their database.
A database is a structured collection of data. Data refers to the characteristics
of people, things and events. SQL Server stores each data item in its own fields. In
SQL Server, the fields relating to a particular person, thing or event are bundled
together to form a single complete unit of data, called a record (it can also be referred
to as raw or an occurrence). Each record is made up of a number of fields. No two
fields in a record can have the same field name.
3. SYSTEM ANALYSIS
Barcode Based Cargo 7Tracking System
Understanding the properties and requirements of a new system is more
difficult and requires creative thinking and understanding of existing running system
is also difficult, improper understanding of present system can lead diversion from
solution.
3.1 SECTION OVERVIEW After analyzing the requirements of the task to be performed, the next step is
to analyze the problem and understand its context. The first activity in the phase is
studying the existing system and other is to understand the requirements and domain
of the new system. Both the activities are equally important, but the first activity
serves as a basis of giving the functional specifications and then successful design of
the proposed system. Understanding the properties and requirements of a new system
is more difficult and requires creative thinking and understanding of existing running
system is also difficult, improper understanding of present system can lead diversion
from solution. The activities are equally important, but the first activity serves as a
basis of giving the functional specifications and then successful design of the
proposed system.
3.2 EXISTING SYSTEMCargo tracking has become a major issue these days as many small and medium sized
courier services have come into the market. The current issue is that all the major
couriers use RFID and hand held devices to track each and very package from source
to destination at every step
.But, unfortunately, most of the small and medium courier services are unable to
afford such systems and so when there is a missing package, it becomes a very tedious
and time consuming process to track the whereabouts. It is also important for the
customer to have the option of tracking the package and it is not currently available
with small and medium sized courier services.
3.2.1 Disadvantages System failure can cost more delays.
Scratched or crumpled barcodes may cause problems.
Data must be coded in the barcode.
In laser scanning, durability and cost.
Barcode Based Cargo 8Tracking System
3.3 PROPOSED SYSTEMThere is a need for a web based application that uses bar coding to track the cargo that
can be used by small and medium courier services. Each of the courier services use a
series of bar codes that can be attached to the cargo so that it is scanned at each of the
locations while it is transported to the destination.
As it is a web based application, it can also be used by the customers to access and
track the status of their packages using the tracking number of the package.
3.3.1 Advantages Barcodes are a fast and reliable method of inputting data.
They can be read even when they are on curvedsurfaces or upside down and a
'checksum' digit is included in the code to check if it has been read.
When you read a barcode, you have control over how and where your data
goes.
You can perform any modification on the barcode data before sending it to the
computer or translating the data.
Barcode Based Cargo 9Tracking System
4. SYSTEM DESIGNSystem design usually involves the architecture, components, modules, interfaces, and
data for a system to satisfy specified requirements. If the system requirements have
been specified and analysed, system design is the first activity that is build and
verifies the software. It includes system specifications, components, and data flow
diagrams.
4.1 SYSTEM SPECIFICATIONS4.2.1 Processes Involved
Access Management process to allow access to users of various courier
services
Courier company information setup and maintenance process
· Routes Information setup and maintenance process
Packages tracking number setup process
Discrepancy notification process
Customer package tracking process
Data Archiving and backup Process
4.2 SYSTEM COMPONENTSThe system components consists of seven modules which involved in it so, the system
can be enhancement.
4.2.1 Modules Involved Access management Module: This module is used by the system Admin to
provide access to various courier company users to access the application.
Courier company Information setup and maintenance Module: This
module allows appropriate company users to setup and maintain the data
related to the courier company.
Routes Setup and maintenance Module:This module allows appropriate
courier users to setup and maintain the information related to various routes
that are serviced by the couriers, along with the intermediate destinations.
Packages tracking number setup Module: This module allows courier
companies to setup tracking numbers to the packages that need to be couriered
along with the source and destination details.
Barcode Based Cargo 10Tracking System
Discrepancy notificationModule: This module allows application to
automatically warn the user scanning the bar code, in case there is a
discrepancy in route followed by the package. It also allows users to specify
alternate routes when required.
Customer Package tracking Module: Allows customers to track their
packages based on the tracking number on-line.
Data Archiving and CleanupModule: Allows Admin users to
Archive/Cleanup old data on the system.
4.3 DATA FLOW DIAGRAMSA data flow diagram is graphical tool used to describe and analyze movement
of data through a system. These are the central tool and the basis from which the
other components are developed. The transformation of data from input to output,
through processed, may be described logically and independently of physical
components associated with the system. These are known as the logical data flow
diagrams. The physical data flow diagrams show the actual implements and
movement of data between people, departments and workstations. A full description
of a system actually consists of a set of data flow diagrams. Using two familiar
notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each
component in a DFD is labeled with a descriptive name. Process is further identified
with a number that will be used for identification purpose. The development of
DFD’s is done in several levels. Each process in lower level diagrams can be broken
down into a more detailed DFD in the next level. The lop-level diagram is often
called context diagram. It consists a single process bit, which plays vital role in
studying the current system. The process in the context level diagram is exploded
into other process at the first level DFD.
The idea behind the explosion of a process into more process is that
understanding at one level of detail is exploded into greater detail at the next level.
This is done until further explosion is necessary and an adequate amount of detail is
described for analyst to understand the process.
Larry Constantine first developed the DFD as a way of expressing system
requirements in a graphical from, this lead to the modular design.
A DFD is also known as a “bubble Chart” has the purpose of clarifying system
requirements and identifying major transformations that will become programs in
Barcode Based Cargo 11Tracking System
system design. So it is the starting point of the design to the lowest level of detail. A
DFD consists of a series of bubbles joined by data flows in the system.
DFD SYMBOLS
In the DFD, there are four symbolsare defines a source(originator) or destination of
system data
An arrow identifies data flow. It is the pipeline through which the information flows
A circle or a bubble represents a process that transforms incoming data flow into
outgoing data flows.
An open rectangle is a data store, data at rest or a temporary repository of data
Data flow
Data Store
CONSTRUCTING A DFD:
Several rules of thumb are used in drawing DFD’s:
Process should be named and numbered for an easy reference. Each name
should be representative of the process.
The direction of flow is from top to bottom and from left to right. Data
traditionally flow from source to the destination although they may flow back
to the source. One way to indicate this is to draw long flow line back to a
Barcode Based Cargo 12Tracking System
Process that transforms data flow.
Source or Destination of data
source. An alternative way is to repeat the source symbol as a destination.
Since it is used more than once in the DFD it is marked with a short diagonal.
When a process is exploded into lower level details, they are numbered.
The names of data stores and destinations are written in capital letters. Process
and dataflow names have the first letter of each work capitalized
A DFD typically shows the minimum contents of data store. Each data store
should contain all the data elements that flow in and out.
Questionnaires should contain all the data elements that flow in and out.
Missing interfaces redundancies and like is then accounted for often through
interviews.
4.3.1 SAILENT FEATURES OF DFD’s:1. The DFD shows flow of data, not of control loops and decision are controlled
considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process whether the
dataflow take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.
4.3.2 RULES FOR DFD
1. Fix the scope of the system by means of context diagrams.
2. Organize the DFD so that the main sequence of the actions reads left to right
and Top to bottom.
3. Identify all inputs and outputs.
4. Identify and label each process internal to the system with rounded circles.
5. A process is required for all the data transformation and transfers. Therefore,
6. never connect a data store to a data source or the destinations or another data
store with just a data flow arrow.
7. Do not indicate hardware and ignore control information.
8. Make sure the names of the processes accurately convey everything the
process is done.
9. There must not be unnamed process.
10.Indicate external sources and destinations of the data, with squares.
11.Number each occurrence of repeated external entities.
Barcode Based Cargo 13Tracking System
12.Identify all data flows for each process step, except simple Record retrievals.
13.Label data flow on each arrow.
14.Use details flow on each arrow.
15.Use the details flow arrow to indicate data movements.
16.There can’t be unnamed data flow.
17.A data flow can’t connect two external entities.
4.3.3 LEVELS OF DFDThe complexity of the business system means that it is a responsible to
represent the operations of any system of single data flow diagram. At the top level,
an Overview of the different systems in an organization is shown by the way of
context analysis diagram. When exploded into DFD
They are represented by:
LEVEL-0 : SYSTEM INPUT/OUTPUT
LEVEL-1:SUBSYSTEM LEVEL DATAFLOW FUNCTIONAL
LEVEL-2:FILE LEVEL DETAIL DATA FLOW.
The input and output data shown should be consistent from one level to the next.
LEVEL-0: SYSTEM INPUT/OUTPUT LEVEL
A level-0 DFD describes the system-wide boundaries, dealing inputs to and
outputs from the system and major processes. This diagram is similar to the combined
user-level context diagram.
LEVEL-1: SUBSYSTEM LEVEL DATA FLOW
A level-1 DFD describes the next level of details within the system, detailing
the data flows between subsystems, which make up the whole.
LEVEL-2: FILE LEVEL DETAIL DATA FLOW
All the projects are feasible given unlimited resources and infinite time. It is
both necessary and prudent to evaluate the feasibility of the project at the earliest
possible time. Feasibility and the risk analysis are pertained in many ways. If project
risk is great.
Barcode Based Cargo 14Tracking System
LEVEL-0
Figure 4.1 Context Level Diagram
LEVEL-1
admin Setup usersdetails database
Figure 4.2 Context Level Diagram for Admin
LEVEL-3
Figure 4.3 First Level Diagram for System Admin
4.4 UNIFIED MODELLING LANGUAGE DIAGRAMSThe Unified Modeling Language allows the software engineer to express an
analysis model using the modeling notation that is governed by a set of syntactic
semantic and pragmatic rules.
A UML system is represented using five different views that describe the system from
distinctly different perspective. Each view is defined by a set of diagram, which is as
follows.
Barcode Based Cargo 15Tracking System
User Model View:
This view represents the system from the users perspective. The analysis
representation describes a usage scenario from the end-users perspective.
Structural model view:
In this model the data and functionality are arrived from inside the system. This
model view models the static structures.
Behavior Model View:
It represents the dynamic of behavioral as parts of the system, depicting the
interactions of collection between various structural elements described in the user
model and structural model view.
Implementation Model View:
In this the structural and behavioral as parts of the system are represented as they are
to be built
Environmental Model View:
In this the structural and behavioral aspects of the environment in which the system is
to be implemented are represented
Use case Diagrams represent the functionality of the system from a user’s point of
view. Use cases are used during requirements elicitation and analysis to represent the
functionality of the system. Use cases focus on the behavior of the system from
external point of view.
Actorsareexternal entities that interact with the system. Examples of actors include
users like administrator, bank customer …etc., or another system like central
database.
Barcode Based Cargo 16Tracking System
4.4.1 Class Diagram
Tablemasterprice
+priceid+price+fromcity+tocity
tblOrg
+OrgID+OrgName+StateID+Attribute1CityID+Address+Phone+Email
tblbranchdetails
+BranchID+OrgID+BranchCode+Address+StateID+CityID+CPerson+Email+Mobile+Phone+CreatedOn+Status
tblstate
+stateid+statename
tblcity
+cityid+stateid+cityname
tblcourier
+courierid+couriertype+stateid+fromcityid+tocityid+price+toaddress+courierdate+mobileno+email
Figure 4.4: Class Diagram
Barcode Based Cargo 17Tracking System
Usecase Diagram for Admin,User
Figure 4.5: Usecase Diagram for Admin,User
Barcode Based Cargo 18Tracking System
Sequence Diagram for User,Admin
Figure 4.6: Sequence Diagram for Admin,User
Barcode Based Cargo 19Tracking System
Collaboration Diagram for Admin,User
Barcode Based Cargo 20Tracking System
Figure 4.7: Collaboration Diagram for Admin,User
Statechart Diagram for User,Admin
Barcode Based Cargo 21Tracking System
Figure 4.8: Statechart Diagram for User,Admin
Barcode Based Cargo 22Tracking System
4.5 DATA DICTIONARY:
Table 4.1.tblmasterpiece
Table 4.2.tblecity
Table 4.3.tblcourier
Barcode Based Cargo 23Tracking System
Table 4.4.tblcourierdocs
Table 4.5.tbldocssentpath
Table 4.6.tblmastercities
Table 4.7.tblmastercourier
Barcode Based Cargo 24Tracking System
Table 4.8.tblmasterroutes
Table 4.9.tblmasterusers
Table 4.10.tblmasterstates
Table 4.11.tblorg
Barcode Based Cargo 25Tracking System
5.SYSTEM REQUIREMENTS SPECIFICATIONDeveloping good quality software requires a specific set of requirements whichproject
is being developed.
Basically the requirements are divides into two main categories. They are as follows:
1. Software Requirements.
2. Hardware Requirements.
The above mentioned various type of requirements are essential for any kind of
project being developed.
5.1SOFTWARE REQUIREMENTSThe software requirements play a crucial role in order to develop a good quality
software product. These play vital role in determining the essence of the project.
Table 5.1: Software Requirements
Operating System: Windows XP/ Win 7/Win 8
IDE Microsoft Visual Studio Express
User Interface ASP.Net, HTML, CSS
Client-side Scripting Java Script
Programming Language C#.Net
Web Server IIS
Database SQL Server-2008R2 Express Edition
5.2 HARDWAREREQUIREMENTSTable 5.2: Software Requirements
Content Description
HDD 20 GB Min
40 GB Recommended
RAM 1 GB Min
PROCESSOR Intel Core i3 processor Recommended
Barcode Based Cargo 26Tracking System
6.IMPLEMENTATION6.1 INTRODUCTIONImplementation literally means to put into effect or to carry out. The system
implementation phase if the software deals with the translation of the design
specifications into the source code. The ultimate goal of the implementation is to
write the source code and the internal documentation so that it can be verified easily.
The code and documentation should be written in a manner that eases debugging,
testing and modification. System flow charts, sample run on packages, sample output
etc., is part of the implementation.
An effort was made to satisfy the following goals in order
Clarity and simplicity of the code.
Minimization of hard coding.
Minimization of the amount of memory used.
Through phased implementation we can use our proposed system
6.2. SAMPLE CODEusing System;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Web;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Data;
usingSystem.Data.SqlClient;
usingSystem.Configuration;
publicpartialclassadmin_frmcourierdtls : System.Web.UI.Page
{
SqlConnectio
ncn=newSqlConnection(ConfigurationManager.ConnectionStrings["constr"].Connecti
onString);
SqlDataAdapter da;
DataTabledt;
SqlCommandcmd;
Barcode Based Cargo 27Tracking System
stringstr = string.Empty;
staticint i=0;
protectedvoidPage_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
FillGrid();
MultiView1.ActiveViewIndex = 0;
}
}
voidfillddl()
{
str = "sp_get_tblcourierdocs";
cmd = newSqlCommand(str, cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocID", 0);
cmd.Parameters.AddWithValue("@Searchby",ddlsearchby.SelectedItem.Text);
cmd.Parameters.AddWithValue("@searchfor", txtsearchfor.Text);
da = newSqlDataAdapter(cmd);
dt = newDataTable();
da.Fill(dt);
if (dt.Rows.Count> 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
else
{
lblerror.Text = "Record(s) Not Found!!!";
}
}
voidFillGrid()
{
str = "sp_get_tblcourierdocs";
Barcode Based Cargo 28Tracking System
cmd = newSqlCommand(str,cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocID", 0);
cmd.Parameters.AddWithValue("@Searchby","");
cmd.Parameters.AddWithValue("@searchfor", "");
da = newSqlDataAdapter(cmd);
dt = newDataTable();
da.Fill(dt);
if (dt.Rows.Count> 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
else
{
lblerror.Text = "Record(s) Not Found!!!";
}
}
protectedvoidBtnaddnew_Click(object sender, EventArgs e)
{
i=1;
MultiView1.ActiveViewIndex = 1;
txtborcodenumber.Focus();
}
protectedvoidBtnsearch_Click(object sender, EventArgs e)
{
if (ddlsearchby.SelectedValue == "ALL")
{
FillGrid();
}
else
{
fillddl();
}
Barcode Based Cargo 29Tracking System
}
protectedvoid GridView1_RowCommand(object sender,
GridViewCommandEventArgs e)
{
if (e.CommandName == "EDT")
{
str = "sp_get_tblcourierdocs";
cmd = newSqlCommand(str,cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocID", e.CommandArgument.ToString());
cmd.Parameters.AddWithValue("@Searchby","");
cmd.Parameters.AddWithValue("@searchfor", "");
da = newSqlDataAdapter(cmd);
dt = newDataTable();
da.Fill(dt);
if (dt.Rows.Count> 0)
{
txtborcodenumber.Text = dt.Rows[0][1].ToString();
Txtrouteid.Text = dt.Rows[0][2].ToString();
Txtroutename.Text = dt.Rows[0][3].ToString();
Txtcustomername.Text = dt.Rows[0][4].ToString();
txtcontactdetails.Text = dt.Rows[0][5].ToString();
txtdatecourired.Text = dt.Rows[0][6].ToString();
ViewState["Id"] = e.CommandArgument.ToString();
i = 2;
MultiView1.ActiveViewIndex = 1;
protectedvoidBtnsave_Click(object sender, EventArgs e)
{
if(i==1)
{
str = "sp_iu_tblcourierdocs";
cmd = newSqlCommand(str, cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocID", 0);
Barcode Based Cargo 30Tracking System
cmd.Parameters.AddWithValue("@barcodenumber",txtborcodenumber.Text);
cmd.Parameters.AddWithValue("@routeid", Txtrouteid.Text);
cmd.Parameters.AddWithValue("@routename",Txtroutename.Text);
cmd.Parameters.AddWithValue("@customername",Txtcustomername.Text);
cmd.Parameters.AddWithValue("@contactdetails",txtcontactdetails.Text);
cmd.Parameters.AddWithValue("@datecouriered",txtdatecourired.Text);
cmd.Parameters.AddWithValue("@status", "True");
da = newSqlDataAdapter(cmd);
dt = newDataTable();
da.Fill(dt);
FillGrid();
BarcodeLib.Barcode.Linear.Linear Bar = newBarcodeLib.Barcode.Linear.Linear();
Bar.Data = txtborcodenumber.Text;
Bar.drawBarcode(Server.MapPath("~/
barcodeimages/"+txtborcodenumber.Text+".jpg"));
}
elseif(i==2)
{
str = "sp_iu_tblcourierdocs";
cmd = newSqlCommand(str, cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocID",ViewState["Id"].ToString());
cmd.Parameters.AddWithValue("@barcodenumber", txtborcodenumber.Text);
cmd.Parameters.AddWithValue("@routeid", Txtrouteid.Text);
cmd.Parameters.AddWithValue("@routename", Txtroutename.Text);
cmd.Parameters.AddWithValue("@customername", Txtcustomername.Text);
cmd.Parameters.AddWithValue("@contactdetails", txtcontactdetails.Text);
cmd.Parameters.AddWithValue("@datecouriered", txtdatecourired.Text);
cmd.Parameters.AddWithValue("@status", "True");
da = newSqlDataAdapter(cmd);
dt = newDataTable();
da.Fill(dt);
FillGrid();
}
Barcode Based Cargo 31Tracking System
}
protectedvoidBtncancel_Click(object sender, EventArgs e)
{
MultiView1.ActiveViewIndex=0;
GridView1.Focus();
}
protectedvoidtxtrouteid(object sender, EventArgs e)
{
}
protectedvoidbtnGenerate_Click(object sender, EventArgs e)
{
Randomrm = newRandom();
txtborcodenumber.Text = rm.Next(100001, 9999999).ToString();
}
}
6.3.1 SAMPLE CODE FOR GET PROCEDURE ALTER procedure [dbo].[sp_get_tblBranchDtls]
(@BranchID int,@searchby nvarchar(50),@searchfor nvarchar(50))
as
begin
if(@BranchID=0 and @searchby='' and @searchfor='')
begin
select
BranchID,OrgID,Branchcode,Address,Stateid,cityid,Cperson,email,mobile,phone,crea
tedon,status from tblBranchDtls
end
else if(@BranchID!=0 and @searchby='' and @searchfor='')
begin
select
OrgID,Branchcode,Address,Stateid,cityid,Cperson,email,mobile,phone,createdon,stat
us from tblBranchDtls where BranchID=@BranchID
end
else if(@BranchID=0 and @searchby!='' and @searchfor!='')
Barcode Based Cargo 32Tracking System
begin
declare @sql nvarchar(1000)
set@sql='select
OrgID,Branchcode,Address,Stateid,cityid,Cperson,email,mobile,phone,createdon,stat
usfromtblBranchID here'+@searchby+' like '+char(39)+'%'+@searchfor+'%'+char(39)
execute (@sql);
end
end
6.3.2 SAMPLE CODE FOR IU PROCEDUREALTER procedure [dbo].[sp_iu_tblBranchDtls]
(@BranchIDint,@OrgIDint,@BranchCodenvarchar(50),@Address
nvarchar(50),@stateidint,@cityidint,@CPersonnvarchar(50),@email
nvarchar(50),@mobilenvarchar(50),@phonenvarchar(50),@createdon
datetime,@status nvarchar(50))
as
begin
if(@BranchID=0)
begin
insertinto
tblBranchDtls(OrgID,BranchCode,Address,StateID,CityID,CPerson,Email,Mobile,Ph
one,CreatedOn,Status)
values
(@OrgID,@BranchCode,@Address,@stateid,@cityid,@CPerson,@email,@mobile,
@phone,@createdon,@status)
end
else
begin
updatetblBranchDtlsset
OrgID=@OrgID,branchcode=@BranchCode,Address=@Address,StateID=@stateid,c
ityid=@cityid,cperson=@CPerson,email=@email,mobile=@mobile,phone=@phone,
createdon=@createdon,status=@status where BranchID=@BranchID
end
end
Barcode Based Cargo 33Tracking System
7. SYSTEM TESTING7.1. INTRODUCTIONTesting is one of the most important phases in the software development activity. In
software development life cycle (SDLC), the main aim of testing process is the
quality; the developed software is tested against attaining the required functionality
and performance.
During the testing process the software is worked with some particular test cases and
the output of the test cases are analyzed whether the software is working according to
the expectations or not.
The success of the testing process in determining the errors is mostly depends upon
the test case criteria, for testing any software we need to have a description of the
expected behavior of the system and method of determining whether the observed
behavior confirmed to the expected behavior.
7.2. LEVELS OF TESTINGSince the errors in the software can be injured at any stage. So, we have to carry out
the testing process at different levels during the development. The basic levels of
testing are Unit, Integration, System and Acceptance Testing.
The Unit Testing is carried out on coding. Here different modules are tested against
the specifications produced during design for the modules. In case of integration
testing different tested modules are combined into sub systems and tested in case of
the system testing the full software is tested and in the next level of testing the system
is tested with user requirement document prepared during SRS.
There are two basic approaches for testing. They are
Functional Testing
In Functional Testing test cases are decided solely on the basis of requirements of the
program or module and the internals of the program or modules are not considered for
selection of test cases. This is also called Black Box Testing.
Structural Testing
In Structural Testing test cases are generated on actual code of the program or module
to be tested. This is called White Box Testing.
Barcode Based Cargo 34Tracking System
7.3. TESTING PROCESSA number of activities must be performed for testing software. Testing starts with test
plan. Test plan identifies all testing related activities that need to be performed along
with the schedule and guide lines for testing. The plan also specifies the levels of
testing that need to be done, by identifying the different testing units. For each unit
specified in the plan first the test cases and reports are produced. These reports are
analyzed.
Test Plan:
Test plan is a general document for entire project, which defines the scope, approach
to be taken and the personal responsible for different activities of testing. The inputs
for forming test plans are
Project plan
Requirements document
System design
Test Case Specification:Although there is one test plan for entire project test cases have to be specified
separately for each test case. Test case specification gives for each item to be tested.
All test cases and outputs expected for those test cases.
Test Case Execution and Analysis:The steps to be performed for executing the test cases are specified in separate
document called test procedure specification. This document specify any specify
requirements that exist for setting the test environment and describes the methods and
formats for reporting the results of testing.
Unit Testing
Unit testing mainly focused first in the smallest and low level modules, proceeding
one at a time. Bottom-up testing was performed on each module. As developing a
driver program, that tests modules by developed or used. But for the purpose of
testing, modules themselves were used as stubs, to print verification of the actions
performed. After the lower level modules were tested, the modules that in the next
higher level those make use of the lower modules were tested. Each module was
tested against required functionally and test cases were developed to test the boundary
values.
Barcode Based Cargo 35Tracking System
Integration Testing
Integration testing is a systematic technique for constructing the program structure,
while at the same time conducting tests to uncover errors associated with interfacing.
As the systeconsists of the number of modules the interfaces to be tested were
between the edges of the two modules. The software tested under this was incremental
bottom-up approach.
Bottom-up approach integration strategy was implemented with the following
steps.
Low level modules were combined into clusters that perform specific software
sub functions.
The clusters were then tested.
System Testing
System testing is a series of different tests whose primary purpose is to fully
exercise the computer based system. It also tests to find discrepancies between the
system and its original
7.4 TEST CASES Table 7.1: Test case for Admin login
Test case#:1 Priority(H,L):High
Test case Objective:Correct Login Details
Test Description: Validate username and password are checked
Requirement Verified: Yes
Test Environment:Google Chrome
Test Setup/ Pre conditions: Normal
Actions Results
User can login into his account Fill login details
Pass: Yes Conditions Pass: Yes
Fail: No
Problems/ Issues: No
Notes: Successfully Executed
Barcode Based Cargo 36Tracking System
Table 7.2: Test case for Barcode generate
Test case#:2 Priority(H,L):High
Test case Objective:Admin allows users to setup the modules for creating Barcode
Test Description:Usertype Admin, generate the barcode.
Requirement Verified: Yes
Test Environment:Google Chrome
Test Setup/ Pre conditions: Normal
Actions Results
Admin generate barcode and
creates unique number to user.
Admin successful generated.
Pass: Yes1 Conditions Pass: Yes
Fail: No
Problems/ Issues: No
Notes: Successfully Executed
Barcode Based Cargo 37Tracking System
7.5 DISCUSSION OF RESULTS Admin Login
Figure 7.1 Admin Login
1. The above page represents the administrator or a company authority Login
page
2. The administrator can have all the accessing rights such as data insertion,
deletion, updating.
Admin Home
Figure 7.2 Admin Home
1. The Home page of Admin where we can use different functions.
2. These page can used to edit and insert.
Barcode Based Cargo 38Tracking System
Profile Status
Figure 7.3 Profile Status
1. The profile status of User and Admin
2. Where you can view the status of them separately.
Edit and Insert
Figure 7.4 Edit and Insert
1. The administrator can have all the accessing rights such as data insertion,
deletion, updating
2. This page shows the admin and user, by selecting search by we can select
either admin or user and even can add new user or admin
Barcode Based Cargo 39Tracking System
State Details
Figure 7.4 State Details
1. The state page shows the details of the states entered for courier purpose.
2. “Add new” button allows us to enter, modify the existing state details.
Edit and Insert of State Details
Figure 7.6 Edit and Insert of State Details
1. “Add new” button allows us to enter the state details.
2. Edit and Insert of state details is done in this window.
Barcode Based Cargo 40Tracking System
City Details
Figure 7.7 City Details
1. This page shows the details of the cities to which courier is to be sent.
2. We can search a particular city using the search button.
Edit and Insert of City Details
Figure 7.8 Edit and Insert of City Details
1. In this page edit and insert of city details can be done.
2. The save button helps us to save the city details in the database.
Barcode Based Cargo 41Tracking System
Profile Status
Figure 7.9 Profile Status
1. This window shows the details of the Admin and User profile
2. The details can be edited using the edit option.
Edit and Insert of Profile Status
Figure 7.10 Edit and Insert of Profile Status
1. In this window new user can be added.
2. The save button allows the edited data to be stored.
Barcode Based Cargo 42Tracking System
User Homepage
Figure 7.11 User Homepage
1. The Home page of User where we can use different functions.
2. These page can used to edit and insert.
Courier files
Figure 7.12 Courier files
1. This window gives the details of the courier details.
2. The update button allows us to update the data.
Barcode Based Cargo 43Tracking System
Barcode Generate
Figure 7.13 Barcode Generate
1. This window helps us to generate the barcode.
2. The save button allows us to save the details.
Barcode Tracker
Figure 7.14 Barcode Tracker
1. This window shows the guest page created
2. The Barcode number created can be tracked from this window.
Barcode Based Cargo 44Tracking System
E-mail Tracker
Figure 7.15 E-mail Tracker
1. This window shows the guest page created
2. The E-mail id given is used to track the courier being sent.
Mobile number Tracker
Figure 7.16 Mobile number Tracker
1. This window shows the guest page created
2. The mobile number is used to track the courier being sent.
Barcode Based Cargo 45Tracking System
8. CONCLUSION AND FUTURE ENHANCEMENT8.1 CONCLUSIONIt is a web based application. Based on the bar code attached to the cargoes the
customer can keep track of cargoes. The customer is provided with the bar code
number through which he can check for the status of the package sent. The bar code is
scanned at each location to update the details/status of the cargo.
8.2 FUTURE ENHANCEMENTThe initial focus of this project was developing a secured integrated system. This
website covers some of the activities needed by an individual for both Courier
Company and user. This project will have a very bright future if the following can be
incorporated:
Updating the software according the user’s needs.
By including a better security for the both the users.
Barcode Based Cargo 46Tracking System
9. REFERENCES Vikas Gupta (2007), “.NET programming in C#, 2005”, BHP publishers.
Roger S Pressman (2002), “Software Engineering”: 5th edition, Tata McGraw-
Hill
Grady Booch, James Rumbaugh, Ivar Jacobson: The Unified Modeling Language
User Guide, Pearson Education.
http://www.google.com
http://www.asp.net/web
http://csharp.net/
http://www.cdac.in/
http://seminarprojects.net/
http://overdrive.com/
Barcode Based Cargo 47Tracking System