Professional Documents
Culture Documents
The Government of India launched the Targeted Public Distribution System (TPDS) with
focus on the poor. Under the TPDS, States are required to formulate and implement fool
proof arrangements for identification of the poor for delivery of food grains and for its
distribution in a transparent and accountable manner at the FPS level.
To keep track of the PDS the following has been proposed. The public should register
with the government through the PDS- Seva website. A ration card is issued to each
family identified by a unique number generated by the PDS application.
PDS-Seva registers PDS stores dynamically. It manages the store for its creation across
districts and locations. Each location will have a dynamically created database that
maintains product information. The customer approaches the store to collect the products.
The stores owner is supposed to feed the product supplied and the bill generated
submitted on-line to the PDS-seva application. Hence the transactions of the public are
readily available to the Government. The level of stocks, the stores operating and most
importantly it is able to track down for any illegal sales of the product to third person.
The public on the other hand can log in to check for the availability of the commodities
and their previous purchase details. This enables them to keep track of false transactions
recorded against their cards
14
CONTENTS
PAGE NO.
1. INTRODUCTION
1.1 PURPOSE 1
1.2 PRESENT SYSTEM
1.3 PROBLEM IN EXISTING SYSTEM
1.4 SOLUTION TO THESE PROBLEMS
2. SYSTEM ANALYSIS 2
2.1. INTRODUCTION
2.2. ANALYSIS MODEL
2.3. STUDY OF THE SYSTEM
2.4. REQUIREMENT SPECIFICATIONS
3. FEASIBILITY REPORT 6
3.1. TECHNICAL FEASIBILITY
3.2. OPERATIONAL FEASIBILITY
3.3. ECONOMIC FEASIBILITY
4. DEFINITIONS OF MODULES 8
4.1 LOGIN AND SECURITY
5. SELECTED SOFTWARE
14
5.2. OVERVIEW OF .NET FRAMEWORK
5.3. WHAT IS .NET?
5.4. SQL SERVER
6. SYSTEM DESIGN
20
6.1. INTRODUCTION
6.2. DFD DESCRIPTION
6.3. DATA FLOW DIAGRAMS
8. OUTPUT SCREENS 54
10. CONCLUSION 68
11. BIBLIOGRAPHY 70
14
1.0 Introduction
1.1Purpose
Implement a system that handles the tasks that are performed by the FCI and the dealers
to track the distribution of the goods from the fair price shops.
Intended for FCI stock organizations and the Dealer shops to maintain the proper
distribution of the assigned goods.
In the present scenario the FCI god owns maintain the information about the goods that
are available with them and the goods that are distribution to the Dealers or Fair Price
shops allocation under them. But lacks to maintain or to track the information about the
distribution of the goods to the customers by the dealer. The Officers though visit the
dealer shops once or twice in a year but unable make proper track of the distributed
goods.
14
3. The customers are also not aware of the mishandlings of the goods that are to be
distributed to them.
4. FCI officers maintain information about the goods being distributed to the dealers
but not the information about the goods distributed by the dealers to the
customers.
• Provide integration between FCI and customers through the Dealer as middle
layer.
• Administrator Login to maintain the Dealer, Cards and Customer information.
• Viewing the information about the sales done the specified dealer for a particular
month.
• Issue of Goods to the Dealer in the required quantities.
• Tracing the complaints by the customers on the dealers.
2. SYSTEM ANALYSIS
2.1 INTRODUCTION
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.
14
The model that is basically being followed is the WATER FALL MODEL, which
states that the phases are organized in a linear order. First of all the feasibility study is
done. Once that part is over the requirement analysis and project planning begins. If
system exists one and modification and addition of new module is needed, analysis of
present system can be used as basic model.
The design starts after the requirement analysis is complete and the coding begins
after the design is complete. Once the programming is completed, the testing is done. In
this model the sequence of activities performed in a software development project are: -
• Requirement Analysis
• Project Planning
• System design
• Detail design
• Coding
• Unit testing
• System integration & testing
Here the linear ordering of these activities is critical. End of the phase and the
output of one phase is the input of other phase. The output of each phase is to be
consistent with the overall requirement of the system. Some of the qualities of spiral
model are also incorporated like after the people concerned with the project review
completion of each of the phase the work done.
WATER FALL MODEL was being chosen because all requirements were known
beforehand and the objective of our software development is the
computerization/automation of an already existing manual working system.
14
Changed
Requirements
Communicated
Requirements
Requirements
Specification
Requirements
Engineering
Design
Specification
Design
Maintenance
Executable
Software
Modules
Programming
Process Integrated
Software
Product
Integration
Product Delivered
Product input output Software
Product
Delivery
14
2.3. STUDY OF THE SYSTEM
PROPOSED SYSTEM
The Application deals with the transactions that help in handling the improper
distribution of the goods by the dealers at the fair shops. The Application is
split into Four modules namely – Login Module, Administrator Module,
Dealer Module and the Customer Module.
14
The Login Module accepts the username and password by validating which the control is
passed to the appropriate options of the other modules.
The Administrator after logging in is provided with the options to maintain the
information of the registration of the Shops, dealers, various types of cards and the
information about the customers issued with the cards under the specified dealer fair
price shops where they can avail their specified goods. The administrator is assigned with
the privileges to view the sales transactions performed by the dealer. He can also view the
complaints placed by the customer on the dealers misdealing of the goods against which
proper suggestions can be made to the respective dealer and the customer.
The dealer after logins in can view the available stock and maintain the information
about the distribution of the goods among the customers against their issued cards. He
can also view the suggestions that are specified by the Administrator.
The customer on logging can view the status of his achieved goods from the dealer for
the specified interval. If any abnormalities are found, then they can judge a complaint to
the Administrator.
Software Requirements:
14
Hardware Requirements:
Processor:PIII(orHigher)
Ram : 256 MB
Hard Disk : 4 GB
Network : LAN
14
3.0 FEASIBILITY REPORT
The application in whole was found to be feasible in the following study and
reports.
The ISP provides the infrastructure resources wherever the application is deployed. It
includes the server, network, bandwidth, security and production. Hence, the
organization has to pay only for the web space required by them. This also means, there
is no maintenance cost involved what so ever.
The manpower in the existing system is required at various levels and the
organization has to meet the cast towards them. Money is invested in the machinery for
maintenance, as wages to the system upgrades and operations, the cargo tracker
application address the above investment has given below,
14
3.3 Economic feasibility:
Technical Feasibility:
14
DEFINITION OF MODULES
The module deals with allowing the public to apply for a ration card. The
functionality is to provide the each citizen with a ration card. Appropriate
personal information is collected and the card is provided. The facility to
maintain the card such edit, delete & view is possible
4.2 Administrator
o Shop Information
o Dealer Information
o Cards Information
o Customer Information
o Issued goods to Dealers
o View Dealer Sales
o View Periodic reports
o View Customer Complaints
o Set Suggestions to Dealer
4.3 Dealer
This module deals with viewing of current stock, viewing of sales on a specified
date, viewing of the suggestions.
Dealer will receive stock from the administrator, assigning of the stock to the customers
will be done by the dealer.
4.4 Customer
This module deals with the purchasing of the stock from the dealer, every customer has to
register himself with the administrator, and will be assigned with a unique customer id.
Customer can also view stock purchases.
14
5. DEVELOPMENT ENVIRONMENT (JAVA)
5.1 ENVIRONMENT:
But Java is more than a programming language for writing applets. It is being
used more and more for writing standalone applications as well. It is
becoming so popular that many people believe it will become standard
language for both general purpose and Internet programming. There are
many buzzwords associated with Java, but because of its spectacular growth
in popularity, a new buzzword has appeared ubiquitous. Indeed, all
indications are that it will soon be everywhere.
14
Java builds on the strength of C++. It has taken the best features of C++ and discarded
the more problematic and error prone parts. To this lean core, it has added garbage
program to do more than one thing at a time), security capabilities. The result is
FEATURES OF JAVA:
JAVA IS PORTABLE:
One of the biggest advantages Java offers is that it is portable. An application written
in Java will run on all the major platforms. Any computer with a Java based browser
14
can run the applications or applets written in the Java Programming Language. A
program to run on a windows machine, still another to run on a UNIX machine, and
so on. In other words, with Java, developers write their programs only once. The
Rather than being compiled into machine language, which is different for each
operating systems and computer architecture, Java code is compiled into byte codes.
With other languages, the program can understand. The problem is that other
computers with different machine instruction set cannot understand that language.
Java code, on the other hand is compiled into byte codes rather than a machine
language. These byte codes go to the Java virtual machine, which executes them
directly or translate them into the language that is understood by the machine running
it. In Summary, these means that with the JDBC API extending Java, A programmer
writing Java code can access all the major relational databases on any platform that
JAVA IS OBJECT_ORIENTED:
The Java programming language is object oriented, which makes program design
focus on
what you are dealing with rather than on how you are going to do something.
This makes it more useful for programming in sophisticated projects because one
14
can break the things down into understandable components. A big benefit is that
The class paradigm allows one to encapsulate data so that specific data
values are those using the data cannot see function implementation.
Encapsulation makes it possible to make the changes in code without
breaking other programs that use that code. If for example the
implementation of a function is changed, the change is invisible to the
programmer who invokes that function, and it does not affect his/her
program, except hopefully to improve it. Java includes inheritance, or the
ability to derive new classes from existing classes. The derived class, also
called a subclass, inherits all the data and the functions of the existing class,
referred to as the parent class. A subclass can add new data members to
those inherited from the parent class. As far as methods are concerned, the
subclass can reuse the inherited methods as it is, changed them, and/or add
its own new methods.
The following is a list of some of Java’s features that make it easier to write
correct code:
source of errors. If an object is no longer being used (has no references to it), then it is
14
automatically removed from memory. Dynamic binding is possible and often very
useful, but static binding with strict type checking is used when possible.
5.1.2.3.2 SIMPLICITY:
Makes Java easier to learn and use correctly. Java keep it simple by having
just one way to do something instead of having several alternatives, as in
some languages. Java also stays lean by not including multiple inheritance,
which eliminates the errors and ambiguity that arise when you create a
subclass that inherits from two or more classes. Java lets you add
functionality to a class throws by the use of interfaces.
Both classes and interfaces contain data members (fields) and functions
(methods), but there are major differences. In a class, fields may be either
variable or constant, and methods are fully implemented. In an interface,
fields must be constants, and methods are just prototypes with no
implementations. The prototypes give the method signature (the return type,
the function name, and the number of parameters with the type for each
parameter), but the programmer must supply implementations.
implements the Interface, and then implements all the methods in that
that is appropriate for the class in which the methods are being used.
Interfaces let one add functionality to a class and give a great deal of
14
A package is a collection of related Java classes and interfaces. The following list,
though not complete, gives example of some Java packages and what they cover.
Java.io: Classes that manages reading data from input streams and
data structures.
and text fields, the “AWT” stands for Abstract Window Toolkit.
snapshots.
applet to its documents and to its document and to its document and
14
Java.sql: The JDBC API, classes and interfaces that access databases
The first three packages listed, java.lang, java.io and java.util form the
foundation, they are basic classes and interfaces for general-purpose
programming.
Java development kit version1.1 added some new packages, with JDBC being
one of them. Other new packages include such thing as Remote Method
Invocation, Security and Java Beans, the new API for creating reusable
components.
A big plus for Java is the fact it can be extended. It was purposely written to
be lean with the emphasis on doing what it does very well, instead of trying
easy. Programmers can modify existing classes or write their own new
classes or they can write a whole new package. The JDBC API, the java.sql
In addition to extensions there are also main tools being developed to make
existing capabilities easier to use. For example, there is already a tool that
greatly Simplifies creating and laying out Graphical User Interfaces such as
menus, Dialog boxes and buttons.
14
5.1.2.4.2 SECURITY:
how it might be laid out in memory. Also since, Java has no pointers, a
The way incoming code is checked: The Java virtual machine doesn’t
trust any incoming code and subjects it to what is called byte code
verification. The byte code Verifier, part of the virtual machine, checks
The way classes are loaded: The Java byte code loader, another part of
14
The way access is restricted for untested code: The Java security
Java performance is better than one might expect. Java has many
advantages, such as having built in security and being interpreted as well as
compiled, do have a cost attached to them. However, various optimizations
have been built in, and the byte code Interpreter can run very fast the cost it
doesn’t have to do any checking. As a result, Java has done quite respectably
in performance tests. Its performance numbers for interpreting byte codes
are usually more than adequate to run interactive graphical end user
applications.
For situations that require unusually high performance, byte codes can be
translated on the fly, generating the final machine code for the particular CPU
on which the application is running at run time. High level interpreted
scripting language generally offer great portability and fast prototyping but
poor performance. Low level compiled language like C and C++ offer great
performance but require large amounts of time for writing and debugging
code because of problems with areas such as memory management, pointers
and multiple inheritance. Java offers good performance with the advantages
of high level languages but without the disadvantages of C and C++.
14
you have written will behave in a predictable way under diverse conditions is
a key feature of Java to understand how Java robust.
programming environments.
For example in C/C++ the programmer must manually allocate and free all
dynamic memory. This sometimes leads to problems. For example some
programmers some times forget the free memory that has been previously
allocated. Or worse, they may free some memory that another part of their
code is still using. Java virtually eliminates these problems by managing
memory allocations and reallocations. Java helps in this area by providing
object oriented exception handling. In a well-written Java a program should
manage program all run time errors.
14
running a movie, running a audio track and displaying text all at the same
time.
The Internet helped catapult Java to the forefront of programming and Java in
turn has a profound effect on the Internet. The reason is simple. Java expands
the universe of objects that can move about freely in cyberspace. In a
network, there are two broad categories of objects transmitted between the
server, your personal computer, passive information and dynamic, active
programs. For example, when you read your e-mail, you are viewing passive
data. Even when you download a program, the program’s code is still only
passive data until you execute it. However, there is a second type of object
that can be transmitted to your computer, a dynamic, self executing
program. Such a program would be an active agent on the client computer,
yet it would be initiated by the server. As desirable as dynamic, networked
programs are, they also present serious problems in the areas of security and
portability. Prior to Java cyberspace was effectively closed to half the entities
that now live there. Java addresses these concerns and doing so, has opened
the door to an exiting a new form of program.
14
5.2 JAVA DATA BASE CONNECTIVITY:
5.2.1 INTRODUCTION:
The next question that needs to be answered is why we need JDBC, once we
have ODBC on hand. We can use the same ODBC to connect the entire
database and ODBC is a proven technology. Problem for doing this is ODBC
gives a ‘C’ language API, which uses pointers extensively. Since Java does not
have any pointers and is object-oriented sun Microsystems, inventor of Java
developed to suit its needs.
After that you need to have a back-end database engine for which a JDBC
driver is available. When JDBC drivers are not available JDBC-ODBC bridge
drivers are used to access the database through ODBC. Back-end is not need
when JDBC driver is capable of storing and retrieving the data itself, or if
JDBC-ODBC bridge and the ODBC driver can be store and retrieve the
information.
JDBC and accessing the database through applets, and JDBC API via an
intermediate server resulted in a new type of database model which is
14
different from the client-servers through which the request should go it is
named as single tier, two tier and multi tier architecture.
The JDBC drivers that we are aware of at this time fit into one of four categories:
JDBC-ODBC bridge plus ODBC driver: The Java Soft bridge product
provides JDBC access via ODBC drivers. Note that ODBC binary
code and in many cases database client code must be loaded on
each client machine that uses this driver. As a result, this kind of
driver is most appropriate on a corporate network where client
installations are not a major problem, or for application server code
written in Java in a three-tier architecture.
14
that the Web imposes. Several vendors are adding JDBC drivers to
their existing database middle ware products.
Eventually, we expect the last two drivers will be preferred way to access database
from JDBC. And the first two driver categories are interim solutions where direct
all-Java drivers are not yet available. The last driver is in some sense the ideal one.
However, there are many cases where JDBC-Net all-Java driver may be preferable.
For example, where a thin DBMS- independent client is desired, or if a DBMS-
independent protocol is standardized and implemented directly by many DBMS
vendors.
5.3 HTML
5.3.1 INTRODUCTION:
The Hyper Text Markup Language (HTML) is a simple markup language used
to create hypertext documents that are portable from one platform to
another. HTML documents are SGML documents with generic semantic that
are appropriate for representing information from a wide range of
applications. This specification defines HTML version 3.2. HTML 3.2 aims to
capture recommended practice as of early ‘96 and as such to be used as a
replacement for HTML 2.0(RF1866).
14
special embedded directions that are not displayed by a web browser, but
tells it how to display the contents of the documents including text, images
and other supported media.
0.1
0.2
0.4
0.5.1
0.5.2 HTML elements perform a defined task. HTML uses two types of elements
o Container tags
These tags differ because of what they represent. Empty tags represent
formatting constructs such as line breaks and Horizontal rules. Container tags
define a section of text and specify the formatting the container dot all of the
selected text. A container tag has both a beginning and an ending.
14
0.6
<HEAD>
</HEAD>
<BODY>
</BODY>
</HTML>
tag for head section is <HEAD> The third line i.e., <TITLE> form example program
</TITLE> is the title of the program. It defines a text string that is interpreted as the
HTML title of the document. The tag </HEAD> will end the HEAD section of the
program. Next tag is <BODY> the beginning of the body section where HTML
document text lies, which is displayed in the browser. Next tags </BODY> </HTML> are
the ending tags for the body section and html program respectively.
14
0.7.1.1.1
0.7.1.1.2 Each document has a head and body delimited by the <HEAD>
and <BODY> tag. The head is where you give your HTML document a title and
where you indicate other parameters the browser may use when displaying the
document. The body is where you put the actual contents of the HTML
documents. This include the text for displaying the text. Tag also references
special and hot spots that link your document to other documents.
5.5.1 INTRODUCTION:
Java Server Pages (JSP's) permit server side Java logic to reside within the
the specified JSP. The JSP then becomes responsible for providing an HTML
response.
The server side logic within a JSP is written in Java. The Java code segments,
HTML content to the JSP's response HTML. The JSP itself is compiled by the
server, and is executed as an object that extends the Java Servlet API. As
such, the HTTP Servlet request and response objects are available by the
14
This document reviews client-server design considerations in respect to the
extensions and use of Enterprise Java Beans (EJB's) will also be discussed.
Focus will be placed on the presentation layer and how the JSP is used to
supporting system.
the client side application. The user communicates requests to the WEB/app
server via the browser. The presentation layer receives the client requests
and prepares the response and server side business functionality is executed.
In the context of this example, the JSP engine represents the presentation
messages may be passed between this layer and that which handles business
Figure 1
14
5.5.2 THE TECHNOLOGY:
JSP technology uses XML - like tags and scriptlets. They are used to
encapsulate presentation logic within the JSP. They can also initiate
The remote interface contains methods that the client is permitted to use.
bean. The implementation logic is defined within the primary bean class. All
IPC, database and resource details are restricted to the bean class.
14
In constructing a JSP document, the creation of the HTML base is a prudent
step. It becomes the visual template that JSP scriptlets are merged into. The
post execution HTML produced from the completed JSP should be that of the
generated HTML sections and JSP content substitutions. The scripting logic,
except for where desired, is completely non visual in regard to the response
HTML text.
developer. The creation of the JSP pages would be similar if not identical to
the methods used to construct industry HTML pages. The next step would be
the addition of JSP specific logic to identify the sections of the HTML that
might be generated dynamically. This conversion step from pure HTML to JSP
and changes in the business logic need not affect the presentation
layout. Likewise, changes in the presentation layout need not affect the
scriptlet logic, it will however require that the WEB developer, not necessarily
a JAVA programmer, show care in the handling of this file which is no longer
14
5.5.3 THE ALTERNATIVE:
Custom tags, introduced in JSP 1.1, can equally produce the functionality
Pages. Custom tags can be used within a JSP in the following ways:
To create objects.
parent JSP.
skipped.
produce a more HTML – like JSP. The advantages of this goal are self-evident
14
identically merged into various forms of the HTML layout, without explicitly
Tag handlers implement JSP custom tags. One or more tag handlers can be
listed in the Tag Library Descriptor files. References to these files are
included in the JSP that intends to use a given tag handler. The tag handler
itself is implemented as a Java object that extends the JSP body. Upon
execution it has access capabilities to the JSP's Http servlet objects, page
HTML response to the client in the way that servlets operate. A significant
distinction from Java Server Pages is that tag handlers are not designed to be
In respect to EJB's, a tag handler accesses an EJB in the same manner as the
available to other tag handlers and JSP’s. This is accomplished by the use of
storage methods that operate within the scope of the page and session. This
includes the retention of EJB remote interface objects that can be created
The JSP engine and Java Server Pages logically produce presentation layer
services. They also provide the interface to business services (i.e. EJB’s). The
14
physical separation of the logic associated with these middle tier components
is evident in the above example. The same EJB logic in the previous example
the use of custom tags. The client initiates execution with a JSP request. The
request via URL is directed to the WEB server that is responsible for servicing
such requests. The JSP request triggers the JSP engine to locate and execute
the corresponding JSP as a servlet object. The execution of the business logic
Figure 2
Logically identical, figure 3 illustrates the use of tag handlers by the JSP. This
14
Figure 3
The JSP engine, in both figures, treats the compiled JSP object as a servlet
object. Figure 3’s tag handler object extends the JSP page body. This
5.5.4 CONCLUSION:
As with other tools of the trade, innovations and nuances to existing tools do
builder the ability to define custom tags to satisfy some functionality not
the amount of Java functionality that the JSP API provides, might seem
oxymorinic, and it is. With the exception of dynamically compiled JSP’s, the
14
functionality provided by the two given examples are identical, which
suggests that the payoff for implementing this server side alternative is
While a server side application designer does not typically consider the
cosmetic aspect of implementing source code, JSP source code might prove
to be the exception. It does after all suggest the strong possibility that a
portion of the JSP. This is a role, of course, traditionally allied with client side
in the maintenance of JSP’s. The arguments presented here presume that the
considerations.
The Database Engine is the core service for storing, processing, and securing data. The
Database Engine provides controlled access and rapid transaction processing to meet the
requirements of the most demanding data consuming applications within your enterprise.
The Database Engine also provides rich support for sustaining high availability.
Analysis Services delivers online analytical processing (OLAP) and data mining
functionality for business intelligence applications. Analysis Services supports OLAP by
allowing you to design, create, and manage multidimensional structures that contain data
aggregated from other data sources, such as relational databases. For data mining
14
applications, Analysis Services allows you to design, create, and visualize data mining
models, constructed from other data sources by using a wide variety of industry-standard
data mining algorithms.
Integration Services is an enterprise data transformation and data integration solution that
you can use to extract, transform, and consolidate data from disparate sources and move
it to single or multiple destinations.
Replication is a set of technologies for copying and distributing data and database objects
from one database to another and then synchronizing between databases to maintain
consistency. Using replication, you can distribute data to different locations and to remote
or mobile users over local and wide area networks, dial-up connections, wireless
connections, and the Internet.
Reporting Services is a new server-based reporting platform that you can use to create
and manage tabular, matrix, graphical, and free-form reports that contain data from
relational and multidimensional data sources. The reports that you create can be viewed
and managed over a Web-based connection.
Notification Services is the platform for developing and deploying applications that
generate and send notifications. Notification Services can generate and send timely
personalized messages to thousands or millions of subscribers, and deliver them to a wide
variety of devices.
Service Broker is a technology for building reliable, scalable, and secure database
applications. Service Broker is a technology within the Database Engine that provides
native support for queuing. Service Broker also provides a message-based
communication platform that can be used to link disparate application components into a
functioning whole. Service Broker provides much of the infrastructure necessary to build
a distributed application, significantly reducing the application development time.
Service Broker also makes it easy to scale your application up or down to accommodate
the amount of traffic the application is receiving.
14
SQL Server contains the functionality you need to issue full-text queries against plain
character-based data in SQL Server tables. Full-text queries could include words and
phrases or multiple forms of a word or phrase.
SQL Server provides the tools you need to design, develop, deploy, and administer
relational databases, Analysis Services cubes, data transformation packages, replication
topologies, reporting servers, and notification servers.
SQL Server Management Studio is a suite of administrative tools for managing the
components belonging to SQL Server. This integrated environment allows users to
perform a variety of tasks, such as backing up data, editing queries, and automating
common functions within a single interface.
Tools that are now incorporated into the SQL Server Management Studio include:
• Code Editor is a rich script editor for writing and editing scripts. The Code Editor
replaces the Query Analyzer included in previous releases of SQL Server. SQL Server
Management Studio provides four versions of the Code Editor; the SQL Query Editor,
MDX Query Editor, XML Query Editor, and SQL Mobile Query Editor.
• Solution Explorer for organizing and storing related scripts as parts of a project.
• Disconnected access. You can write and edit scripts without connecting to an
instance of SQL Server.
14
• Scripting from any dialog box. You can create a script from any dialog box so that
you can read, modify, store and reuse the scripts after you create them.
• Non-modal dialog boxes. When you access a UI dialog box you can browse other
resources in SQL Server Management Studio without closing the dialog box.
Solution Explorer is a utility to store and reopen database solutions. Solutions organize
related script projects and files. Script projects store SQL Server script files, SQL
templates, connection information and other miscellaneous files. When a script is saved
in a script project, users are able to:
The Solution Explorer is a tool for developers who are creating and reusing scripts that
are related to the same project. If a similar task is required later, you can use group of
scripts that were stored in a project. If you have created applications with Visual Studio
or Microsoft Visual Studio .NET you will find the Solution Explorer very familiar.
A solution consists of one or more script projects. A project consists of one or more
scripts or connections. A project may also include non-script files.
14
6.0 SYSTEM DESIGN
6.1 INTRODUCTION
Software design sits at the technical kernel of the software engineering process
and is applied regardless of the development paradigm and area of application. Design is
the first step in the development phase for any engineered product or system. The
designer’s goal is to produce a model or representation of an entity that will later be built.
Beginning, once system requirement have been specified and analyzed, system design is
the first of the three technical activities -design, code and test that is required to build and
verify software.
The importance can be stated with a single word “Quality”. Design is the place
where quality is fostered in software development. Design provides us with
representations of software that can assess for quality. Design is the only way that we can
accurately translate a customer’s view into a finished software product or system.
Software design serves as a foundation for all the software engineering steps that follow.
Without a strong design we risk building an unstable system – one that will be difficult to
test, one whose quality cannot be assessed until the last stage.
14
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 purposesingle 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 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:
14
Process that transforms data flow.
Data flow
Data Store
CONSTRUCTING A DFD:
1. Process should be named and numbered for an easy reference. Each name
should be representative of the process.
2. 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 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.
3. When a process is exploded into lower level details, they are numbered.
4. 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.
14
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
Level 0:
• 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.
14
User Model View
In this model the data and functionality are arrived from inside the system.
14
essential for communication among project teams. As the complexity of the
systems increases, so does the importance of good modeling techniques.
The use of visual notation to represent or model a problem can provide us several
benefits relating to clarity, familiarity, maintenance, and simplification. The main reason
for modeling is the reduction of complexity. The Unified Modeling Language (UML) is a
set of notations and conventions used to describe and model an application. The UML is
intended to be a universal language for modeling systems, meaning that it can
express models of many different kinds and purposes, just as a programming
language or a natural language can be used in different ways. A model” is an
abstract representation of a system , constructed to understand the system prior to
building or modifying it. The term “system” is used here in a broad sense to
include any process or structure. For example, the organizational structure of a
corporation , health services, computer software, instruction of any sort (including
computers) , the national economy, and so forth all would be termed
14
The primary goals in the design of the UML were as follows:
“Visualize” the software system well-defined symbols. Thus a developer or tool can
unambiguously interpret a model written by another developer, using UML
The UML Meta model elements are organized into diagrams. Different diagrams are
used for
different purposes depending on the angle from which you are viewing the
system. The different views are called “architectural views”. Architectural views
facilitate the organization of knowledge, and diagrams enable the communication of
14
knowledge. Then knowledge itself is within the model or set of models that
focuses on the problem and solution. The architectural views and their diagrams
are summarized below:
o The “user model view” encompasses a problem and solution from the
preservative of those individuals whose problem the solution addresses. The view
presents the goals and objectives of the problem owners and their requirements of
the solution. This view is composed of “use case diagrams”. These diagrams
describe the functionality provided by a system to external interactors. These
diagrams contain actors, use cases, and their relationships.
o The “Structural model view” encompasses the static, or structural, aspects
of a problem and solution. This view is also known as the static or logical
view. This view is composed of the following diagrams
14
o “Collaboration diagrams” render how behavior is realized by
components with in a system. These diagrams contain classes, associations,
and their message exchanges with in a collaboration to accomplish a
purpose. In generic form, these diagrams describe a set of classes and
associations involved in message exchange sequences. In instance
form(scenarios), these diagrams describe a set of objects of those classes
links confirming to the associations, and one actual message exchange
sequence that inconsistent with the generic form and uses those objects
and links.
o “State chart diagrams” render the states and responses of a class
participating in behavior, and the life cycle of an object. These diagrams
describe the behavior of a class in response to external stimuli.
o “Activity diagrams” render the activities of a class participating in behavior.
These diagrams describe the behavior of a class in response to internal
processing rather than external events. Activity diagrams describe the
processing activities with in a class.
o The “Implementation model view” encompasses the structural and
behavioral aspects of the solution’s realization. This view is also known
as the component or development view and is composed of “component
diagrams”. These diagrams describe the organization of and dependencies
among software implementation components. These diagrams contain
components and their relationships.
o The “Environment model view” encompasses the structural and behavioral
aspects of the domain in which a solution must be realized. This view is
also known as the deployment or physical view. This view is composed of
“deployment diagrams”. These diagrams describe the configuration of
processing resources elements and the mapping of software
implementation components onto them. These diagrams contain nodes,
components and their relationships.
UML DIAGRAMS
14
Every complex system is best approached through a small set of nearly
independent views of a model; no single viewer is sufficient. Every
model may be expressed at different levels of fidelity. The best models are
connected to reality. The UML defines nine graphical diagrams.
1. Class diagram
2. Object diagram
3. Use-case diagram
4. Behavior diagrams
5. Interaction diagrams
6. Sequence diagram
7. Collaboration diagram
14
CLASS DIAGRAM FOR PDS
<<Actor>>
<<boundary>> <<control>> customer
login login c trl
name
1 1 id
check weather() check validit y()
1
login()
<<Actor>> 1 payment()
<<entity>>
Admin 1 set complaints()
System
1 1
name 1
1
id 1
details of shops
1 & licence() 1 <<control>>
1 set complaints() set complaints
login() view complaints()
is sue licence() 1 <<control>>
view complaints() sales set complaints()
set suggestions() cid
1 pid
1 1
1 qty <<control>>
1 amt
<<Actor>> 1 card
<<control>> 1 bill no.
Dealer cid
licence
name sale() cname
lno addr
hold name id
1 1
hold addr new()
login()
issue card() 1 edit()
issue products() delete()
1 view()
<<control>> 1
1
Payment <<control>> 1
set sugges tions 1 <<control>>
bill no. <<control>> products
pdes bill submission pdid
smt set suggest ion()
cid pdname
billno. cost
show() 1
des of product
<<control>>
submit()
view complaint s
view complaints()
14
USE CASE DIAGRAM FOR PDS
USECASE DIAGRAM
Registere
login
PDS
submitbill
bell
paymentmonitor recvied product
14
USECASE DIAGRAM FOR ADMINISTARTOR
USECASE DIAGRAM
login
Billsubmission
Admin
Issuecard
sale
login
payment
customer
pds
check availabi...
14
USECASE DIAGRAM CUSTOMER
USECASE DIAGRAM
login
customer
billlpayment
purchase
check availabity
payment
14
COLLABORATION DIAGRAM ISSUE DIAGRAMS
1:
: customer
: i-customer
: dealer
8: 3: 1.send request for card
5: 2.send request
4: 3.view request
: i-dealer 7:
4.send view request
5.process request
2:
6.get data
7.send customer details
8.process data & issue card
: cissue ctrl
9: : view ctrl 9.update
6:
: system1
14
SEQUENCE DIAGRAM FOR LOGIN
validate details
14
SEQUENCE DIAGRAM FOR ADMINISTRATOR
: Admin : i-A dmin : licence ctrl : view complaints : set suggestion : maintain db : Sy stem
enter
dealer data send dealer
data verify data &
issue
lic ence
req to view
complaints send req
display
enter
suggestions send suggestions
verify
update
14
SEQUENCE DIAGRAM FOR UPADTE STOCK SALES
SEQUENCE DAIGRAM
C:CUS
C:PUR...
P;PDU S:PDS
S
1 : \request products\
2 : \list product\
3 : \specify products\
4 : calculate payment
7 : \recieve payment\
14
8. OUTPUT SCREENS:
The system is implemented in two phases where one part of the application is deployed
on client server architecture while the other phase is deployed as a web module. The
client server application runs at the port enables the dealer registration, customer
registration, issuing card, assigning goods to dealers ,viewing dealer sales, viewing
customer suggestions.
The web module is deployed on the ISP (Internet Service Provider) where in a domain
name is registered an IP address is allotted. A specified amount of web space is
purchased from the ISP.A site administrator provided by the ISP is responsible for
maintenance of the site and provides the following support:
5. Administration permission can be obtained from the ISP by the ports staff in
order to perform remote administration whenever required.
14
9.1 Testing:
Introduction:
Testing is the process of detecting errors for which the required open web application
secure employment portal specifications stated. Testing performs a very critical role for
quality assurance and for ensuring the reliability of software. The results of testing are
used later on during the software maintenance.
The aim of testing is often used to demonstrate that a program works by showing
that it has no errors. The basic purpose of testing phase is to detect the errors that may be
present in the program. Hence one should not start testing with the intent of showing that
a program works, but the intent should be to show that a program doesn’t work. The main
objective of testing is to uncover an error in systematic way with minimum effort and
time.
Levels of testing
In order to uncover the errors present in different phases the different levels of
testing are:
• System Testing
• Function testing
• Unit testing
• Link testing
14
.
Unit testing:
This test focuses on verification effort on the smallest unit of software module. Using the
detailed design and the process specifications testing is done to uncover errors within the
boundary of the module. All the modules must be successful in the unit test before the
start of the integration testing begins.
In this project each service is a module like Login, Forms etc. Each module
has to be tested by giving different sets of inputs. The inputs are validated
when accepting from user.
Integration testing:
After the unit testing the integration of modules ahs to be done and then
integration testing can be done. The goal here is to see if modules can be integrated
properly, the emphasis being on testing interfaces between different modules.
System Testing:
In the system testing the entire web portal is tested according the software
requirement specifications document.
Acceptance testing:
The acceptance testing is performed with realistic data of the client, which focus on the
external behavior of the system; the internal logic of the program is emphasized.
14
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. Testing is the exposure of the system
to trial input to see whether it produces correct output.
Testing Phases:
Testing Methods:
It is a test case design method that uses the control structures of the procedural
design to derive test cases.
Using this testing a software Engineer can derive the following test cases:
14
It is a test case design method used on the functional requirements of the software. It will
help a software engineer to derive sets of input conditions that will exercise all the
functional requirements of the program.
1. Test Plan
Bottom up approach
Bottom up approach:
Testing can be performed starting from smallest and lowest level modules and proceeding
one at a time. For each module in bottom up testing a short program executes the module
and provides the needed data so that the module is asked to perform the way it will when
embedded with in the larger system. When bottom level modules are tested attention
turns to those on the next level that use the lower level ones they are tested individually
and then linked with the previously examined lower level modules.
14
Top down approach:
This type of testing starts from upper level modules. Since the detailed activities usually
performed in the lower level routines are not provided stubs are written. A stub is a
module shell called by upper level module and that when reached properly will return a
message to the calling module indicating that proper interaction occurred. No attempt is
made to verify the correctness of the lower level module.
9.2Test Cases
14
Module: customer registration
Filename: CustReg.aspx
Register new Customer Info. Save and Save and Test Passed.
Customer generate Cust. generate Cust. Customer
Id. Id. registered.
14
Module: customer id
customer id cid and sid Save Data. Save Data. Test Passed. cid
generated
TESTING :
14
Testing was due to check each and every line of the code executed at least
once in order to ensure these both valid and invalid inputs were provided such as null
data, invalid format, invalid datatypes, invalid length and Boolean values. Exceptions
were handled to remove their risk.
String testing:-
In most of the modules inputs were in the form of the strings which were
tested for null data, format of the data and the length of the data. Exceptions were
handled through try catch blocks to trap the errors then and there in the client server
modules while in the web modules they were taken care of by valuators.
Unit testing:-
Each and every module was tested to execute as per the SRS appropriate
inputs were provided to check if the outputs required was available. Corresponding tables
were cross verified for updation of data and complete transactions. Incomplete
transactions were rolled back and were ensured not to affect the database.
Integrated testing:-
All the modules were integrated that pertained to the 2 phases of the
application. The client server phase was checked with top down testing to check if the
screens opened in the same order starting from the splash screen to the reports module.
Synchronization of the flow of data, message passing and the database transaction
between the modules were verified.
System testing:-
14
The client, server and the web applications modules were integrated along
with the concept of a virtual website in order to test the complete system. Errors that
arose as a result of network failure, protocols, port number, locating the web pages,
handling the URL were isolated.
LIMITATIONS:
10. CONCLUSION
14
The application can now ensure that the PDS stores cannot give
false information or trade illegally without the knowledge of the government. The public
on the other hand ensures that the government provided materials are readily available to
them.
11 BIBLIOGRAPHY
14
11.1 Books:
11.2 Websites:
14