Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
BACHELOR OF TECHNOLOGY
IN
INFORMATION TECHNOLOGY
BY
1.CH.Tejaswini(06U51A1230).
2.V.HarithaNaga(06U51A1242).
3. R.Jayasree (06U51A1210).
UNDER GUIDENCE OF
V.ANAND
PROFESSOR ASSOCIATE
1
DB JExplorer
CERTIFICATE
This is to certify that the project entitled “DB JExplorer” is the bonafide
work carried out by CH.Tejaswini, V.Haritha Naga, R.Jayasree bearing roll no
06U51A1230,06U51A1242,06U51A1210 in partial fulfillment for the award of
degree of Bachelor of technology during the academic year 2009-2010.
External examiner
2
DB JExplorer
ACKNOWLEDGMENTS
Our heart full gratitude to my guide V.Anand for his valuable suggestions
and guidance in the preparation of the project
We thank one and all of team for the cheerful encouragement and unstinted
support rendered to us by their professional knowledge for the successful
completion of project.
Lastly but not the least, we express our thanks to all staff members and
friends for all the help and co-ordination extended in bringing out this project
successfully in time.
By Project Associates
1.V.HarithaNaga(06U51A1242).
2.CH.Tejaswini(06U51A1230).
3. R.Jayasree (06U51A1210).
3
DB JExplorer
ABSTRACT
Objective:
The DB JExplorer is an interface from which requested information can be
accessed from a database. If you are requesting that information from a SQL
database (or from a database accessed via ODBC), your query must be written
using the Structured Query Language (SQL). The SQL is not difficult to learn, but
mastering the fine points of creating and retrieving data with SQL can take quite a
while. Since the db Jexplorer eliminates the need to understand SQL, it can get you
building effective queries right away.
The JExplorer has been designed to meet the needs of individuals with little
or no query background, as well as, the needs of experienced SQL professionals.
If you are new to querying, you will enjoy the way the JExplorer helps you
create queries. By answering a few questions on a set of sequential tabs, you'll give
the program all the information needed to generate a query that fits your needs. The
program will do all the work for you.
If you are an SQL professional, you will appreciate the facility that enables
you to fine-tune the queries that the JExplorer generates. If you are more
comfortable writing your own SQL queries, you will find it easy to enter the queries
directly or even paste them in from another source.
The DB JExplorer can only access data stored in an ODBC data source. Any
SQL or other type of database mentioned in the query topics must be accessed
through an ODBC data source.
4
DB JExplorer
5
DB JExplorer
Index
1 Introduction 8
1.1 About the organization 8
1.2 Existing system 12
1.3 Drawbacks of the existing system 12
2 System Analysis 14
2.1 Problem Definition 17
2.2 Problem System 18
2.3 Selection of Software Structure 21
2.4 Selection of Hardware Structure 21
3 Software Requirements Specification 22
3.1 Introduction 22
3.2 Overall Description 26
3.3 System Features 26
3.4 External Interface Requirement 36
3.5 Other Requirement 37
3.6 Advantage 41
4 System Design 41
4.1 Design Methodology 41
4.2 UML Diagrams 43
4.3 Database Design 68
4.4 Input Design 70
5 System Implementation 82
5.1 System Testing 85
6 Documentation 93
6.1 How to Operate the Package 93
7 Future Scope and Conclusion 95
8 References 97
6
DB JExplorer
9 Bibliography 98
7
DB JExplorer
1. Introduction
1.1 Organizational Profile:
LiveTech, a software development and consulting company, as one of the fast
developing firm mainly specialized in IT and IT Enabled Services sector training
and consultancy. LiveTech is a global one stop-shop to meet all HR requirements-
senior-level Search, Database Selection, Turn-key Recruitment, On-site sourcing
and corporate training.
The spirit of LiveTech has been largely defined and embodies by the dedicated and
tireless pursuit of excellence by our Principal Consultants. Each of them is high in
their senior management experience skills having not only the specialized Skills
that clients need, but also the ability to understand the bigger picture.
We have a vast database, which we do get from Ads and Headhunting, which is of
administrative, Communications, Engineering, Information Systems and
Technology and Computer Security.
We partner with organizations to unleash human potential, enhancing the net worth
of their human capital. We bring passion and professional rigor to address stated as
well as latent needs of our customers. Our Customers will experience us as warm,
deeply human and trustworthy.
8
DB JExplorer
and development of software and the manpower outsourcing services’’ and with the
quality advantage.
One of the major strengths of the unit that contributed for the fast growth is its
scalability of the operations, which is directly linked with the sourcing of suitable
manpower and the HR policies of the company.
A Vision of Excellence
Given the mix of collective skills & experience, Commitment to deadlines and a
strong Culture of ethics. LiveTech has been able to grow at a pace of over 100%
every year since inception LiveTech has ably adapted to the fast-changing business
environment and customer Expectations, and has built a 70 plus person strong
organization.
LiveTech team-based work culture ensures that employees have the opportunity to
learn, develop new skills or skills or pick up new competencies relevant for the
company’s growth.
9
DB JExplorer
Services:
As any HR Manager knows, the most important resource of his / her organization is
the Human resource their core foundation and backbone, Human resource
represents the single most costly asset, consuming up to 40% of total operating
costs for most organizations.
The scenario has become all the more complex in the last decade with global
opportunities, rapid growth and extreme competition. Good human resources are
also becoming increasingly difficult to hire, cultivate and retain.
Business needs and deliverables have evolved in a manner that demand flexible
recruiting options, It is imperative that your organization has suitable processes in
place for proper functioning & work satisfaction levels.
LiveTech is a one – stop solution provider who can help modern organizations to
overcome their business challenge. LiveTech understands the complexity of human
resource issues presented by the ever-changing global economy.
Staff Augmentation is “the “answer when you wish to maximize control and
manage your own project, but need experienced professionals to follow your Lead.
Keeping our consultants ahead of the technology curve is the cornerstone of our
10
DB JExplorer
Permanent Staffing
11
DB JExplorer
LiveTech has evolved with the changing needs of the industry, globally and locally,
and has built solid and far-reaching relationships with clients and candidates. The
firm has built name recognition and a reputation for its grasp of cultural factors,
changing demographics and professional environments.
The preeminent stringent practice adopted to recruit candidates for our clients
encompasses.
Executive Search
Campus Selection
Research mapping
Generic Resourcing
Our Clients:
In Touch Technologies ltd, Hyderabad
Lara Technologies, Bangalore
Liberty Solutions, Hyderabad
Bio-Minds, Hyderabad
In the existing system each and every query need to be processed by the user.
A mistyped query yields an error and the query need to be retyped again.
It may be confusing for the users when they are processing the aggregate
functions and some SQL Expressions. There may be a chance of making mistakes.
12
DB JExplorer
13
DB JExplorer
2. System Analysis
14
DB JExplorer
System analysis is done to understand the problem, which the new system is
going to solve. Such analysis typically requires a thorough understanding of
existing system, and the part, which must be automated. Understanding the existing
system is usually the starting activity in problem analysis. The goal of this activity
is to understand the requirement of the new system that is to be developed.
Feasibility Study
All projects are feasible given unlimited resources and infinite time. But in
reality both resources and time are scare. Projects should confirm to time bounds
and should be optimal in their consumption of resources. This places a constant
approval of any project. After problem is clearly understood and the solutions are
proposed the next step is the part of system analysis. The main objective of this
study is to determine whether the proposed system is feasible or not.
15
DB JExplorer
Operational feasibility
The proposed system will no way interior than the existing manual system
and it yields better results than the manual system. This system will give good
support and makes the service easy because
The system has a user interface enabling an easier usage of the software.
No special training is necessary for users to use this system.
Technical feasibility
16
DB JExplorer
Economic feasibility
Economic feasibility is concerned with the cost savings, increased profits and
reductions in effort. It shows how much beneficial is the new development system
over the existing system.
Even though project development is some what cost in the long term the
system will reduce human work and it becomes more economical. The benefits of
the development system are
If you are new to querying, you will enjoy the way the JExplorer helps you
create queries. By answering a few questions on a set of sequential tabs, you'll give
17
DB JExplorer
the program all the information needed to generate a query that fits your needs. The
program will do all the work for you.
If you are an SQL professional, you will appreciate the facility that enables
you to fine-tune the queries that the JExplorer generates. If you are more
comfortable writing your own SQL queries, you will find it easy to enter the queries
directly or even paste them in from another source.
The DB JExplorer can be a powerful tool for many of your information
gathering needs.
The DB JExplorer can only access data stored in an ODBC data source. Any
SQL or other type of database mentioned in the query topics must be accessed
through an ODBC data source.
The proposed system is user friendly and it can be used in a multi user
environment.
Increases the efficiency of the information retrieved from the database.
18
DB JExplorer
using the Structured Query Language (SQL). The SQL is not difficult to learn, but
mastering the fine points of creating and retrieving data with SQL can take quite a
while. Since the db Jexplorer eliminates the need to understand SQL, it can get you
building effective queries right away.
The JExplorer has been designed to meet the needs of individuals with little
or no query background, as well as, the needs of experienced SQL professionals.
If you are new to querying, you will enjoy the way the JExplorer helps you
create queries. By answering a few questions on a set of sequential tabs, you'll give
the program all the information needed to generate a query that fits your needs. The
program will do all the work for you.
If you are an SQL professional, you will appreciate the facility that enables
you to fine-tune the queries that the JExplorer generates. If you are more
comfortable writing your own SQL queries, you will find it easy to enter the queries
directly or even paste them in from another source.
The DB JExplorer can be a powerful tool for many of your information
gathering needs.
The DB JExplorer can only access data stored in an ODBC data source. Any
SQL or other type of database mentioned in the query topics must be accessed
through an ODBC data source.
19
DB JExplorer
The set of data produced by the SQL query works just like a database table
when you design your report. The name of the query, along with fields it accesses,
appear in the Text box. Aggregate functions and SQL expressions act like fields,
providing data values corresponding to each record in the SQL query.
20
DB JExplorer
The user is expected to ensure that the minimum requirements for running
the product are satisfied. The hardware and software environment in which this
product was developed is specified. It is necessary to make sure that the hardware
and software the consumer uses is compatible to the specification given below.
Hardware Requirements
Computer : Assembled
Processor : Pentium 80386 microprocessor or higher
Main Memory : 128 MB or higher
Hard Disk : 4.3 GB or higher
Floppy Drive : 3 ½ inch
Monitor : SVGA color monitor
Mouse : 2 or 3 button mouse
Keyboard : 108 keys or higher
Software Requirements
Operating System : Windows 2000
Backend : MS-Access
Front-end : Java, Servlets, JSP, HTML, and Java Script.
Web Server : Tomcat 4.1.29
21
DB JExplorer
3.1 Introduction
Java
Initially the language was called as “oak” but it was renamed as “Java” in 1995.
The primary motivation of this language was the need for a platform-independent
(i.e., architecture neutral) language that could be used to create software to be
embedded in various consumer electronic devices.
Java is a programmer’s language.
Java is cohesive and consistent.
Except for those constraints imposed by the Internet environment, Java gives
the programmer, full control.
Finally, Java is to Internet programming where C was to system programming.
Importance of Java to the Internet
Java has had a profound effect on the Internet. This is because; Java expands
the Universe of objects that can move about freely in Cyberspace. In a network, two
categories of objects are transmitted between the Server and the Personal computer.
They are: Passive information and Dynamic active programs. The Dynamic, Self-
executing programs cause serious problems in the areas of Security and probability.
But, Java addresses those concerns and by doing so, has opened the door to an
exciting new form of program called the Applet.
Java can be used to create two types of programs:
Applications and Applets:
An application is a program that runs on our Computer under the operating
system of that computer. It is more or less like one creating using C or C++. Java’s
ability to create Applets makes it important. An Applet is an application designed to
be transmitted over the Internet and executed by a Java –compatible web browser.
An applet is actually a tiny Java program, dynamically downloaded across the
22
DB JExplorer
network, just like an image. But the difference is, it is an intelligent program, not
just a media file. It can react to the user input and dynamically change.
Swing
Swing is a large set of components ranging from the very simple, such as labels,
to the very complex, such as tables, trees, and styled text documents. Almost all
Swing components are derived from a single parent called JComponent which
extends the AWT Container class. Thus, Swing is best described as a layer on
top of AWT rather than a replacement for it. Figure 1.2 shows a partial
JComponent hierarchy. If you compare this with the AWT Component hierarchy
of figure 1.1 you will notice that for each AWT component there is a Swing
equivalent with prefix “J”. The only exception to this is the AWT Canvas class,
for which JComponent, JLabel, or JPanel can be used as a replacement (in section
2.8 we discuss this in detail). You will also notice many Swing classes with no
AWT counterparts.
Figure 1.2 represents only a small fraction of the Swing library, but this fraction
consists of the classes you will be dealing with most. The rest of Swing exists to
provide extensive support and customization capabilities for the components
these classes define.
23
DB JExplorer
MVC architecture
24
DB JExplorer
Client Server
Over view:
With the varied topic in existence in the fields of computers, Client Server
is one, which has generated more heat than light, and also more hype than reality.
This technology has acquired a certain critical mass attention with its dedication
conferences and magazines. Major computer vendors such as IBM and DEC, have
declared that Client Servers is their main future market. A survey of DBMS
magazine reveled that 76% of its readers were actively looking at the client server
solution. The growth in the client server development tools from $200 million in
1992 to more than $1.2 billion in 1996.
Client server implementations are complex but the underlying concept is
simple and powerful. A client is an application running with local resources but
able to request the database and relate the services from separate remote server. The
software mediating this client server interaction is often referred to as
MIDDLEWARE.
The typical client either a PC or a Work Station connected through a
network to a more powerful PC, Workstation, Midrange or Main Frames server
usually capable of handling request from more than one client. However, with some
configuration server may also act as client. A server may need to access other server
in order to process the original client request.
25
DB JExplorer
The key client server idea is that client as user is essentially insulated from
the physical location and formats of the data needs for their application. With the
proper middleware, a client input from or report can transparently access and
manipulate both local database on the client machine and remote databases on one
or more servers. An added bonus is the client server opens the door to multi-vendor
database access indulging heterogeneous table joins.
What is Client Server?
Two prominent systems in existence are client server and file server
systems. It is essential to distinguish between client servers and file server systems.
Both provide shared network access to data but the comparison dens there! The file
server simply provides a remote disk drive that can be accessed by LAN
applications on a file by file basis. The client server offers full relational database
services such as SQL-Access, Record modifying, Insert, Delete with full relational
integrity backup/ restore performance for high volume of transactions, etc. the client
server middleware provides a flexible interface between client and server, who does
what, when and to whom.
3.3System Features
Security
Every time you that you download a “normal” program, you are risking a
viral infection. Prior to Java, most users did not download executable programs
frequently, and those who did scan them for viruses prior to execution. Most users
still worried about the possibility of infecting their systems with a virus. In addition,
another type of malicious program exists that must be guarded against. This type of
program can gather private information, such as credit card numbers, bank account
balances, and passwords. Java answers both these concerns by providing a
“firewall” between a network application and your computer.
26
DB JExplorer
When you use a Java-compatible Web browser, you can safely download
Java applets without fear of virus infection or malicious intent.
Portability
For programs to be dynamically downloaded to all the various types of
platforms connected to the Internet, some means of generating portable executable
code is needed .As you will see, the same mechanism that helps ensure security also
helps create portability. Indeed, Java’s solution to these two problems is both
elegant and efficient.
The Bytecode
The key that allows the Java to solve the security and portability problems is
that the output of Java compiler is Bytecode. Bytecode is a highly optimized set of
instructions designed to be executed by the Java run-time system, which is called
the Java Virtual Machine (JVM). That is, in its standard form, the JVM is an
interpreter for bytecode.
Translating a Java program into bytecode helps makes it much easier to run
a program in a wide variety of environments. The reason is, once the run-time
package exists for a given system, any Java program can run on it.
Although Java was designed for interpretation, there is technically nothing
about Java that prevents on-the-fly compilation of bytecode into native code. Sun
has just completed its Just in Time (JIT) compiler for bytecode. When the JIT
compiler is a part of JVM, it compiles bytecode into executable code in real time,
on a piece-by-piece, demand basis. It is not possible to compile an entire Java
program into executable code all at once, because Java performs various run-time
checks that can be done only at run time. The JIT compiles code, as it is needed,
during execution.
Java Virtual Machine (JVM)
Beyond the language, there is the Java virtual machine. The Java virtual
machine is an important element of the Java technology. The virtual machine can be
embedded within a web browser or an operating system. Once a piece of Java code
is loaded onto a machine, it is verified. As part of the loading process, a class loader
is invoked and does byte code verification makes sure that the code that’s has been
27
DB JExplorer
generated by the compiler will not corrupt the machine that it’s loaded on. Byte
code verification takes place at the end of the compilation process to make sure that
is all accurate and correct. So byte code verification is integral to the compiling and
executing of Java code.
Java programming uses to produce byte codes and executes them. The first
box indicates that the Java source code is located in a. Java file that is processed
with a Java compiler called javac. The Java compiler produces a file called a. class
file, which contains the byte code. The Class file is then loaded across the network
or loaded locally on your machine into the execution environment is the Java virtual
machine, which interprets and executes the byte code.
Java Architecture
Java architecture provides a portable, robust, high performing environment
for development. Java provides portability by compiling the byte codes for the Java
Virtual Machine, which is then interpreted on each platform by the run-time
environment. Java is a dynamic system, able to load code when needed from a
machine in the same room or across the planet.
Compilation of code
When you compile the code, the Java compiler creates machine code (called
byte code) for a hypothetical machine called Java Virtual Machine (JVM). The
JVM is supposed to execute the byte code. The JVM is created for overcoming the
issue of
Z-order
Swing components are referred to as lightweights while AWT components are
referred to as heavyweights. The difference between lightweight and
heavyweight components is z-order: the notion of depth or layering. Each
heavyweight component occupies its own z-order layer. All lightweight
components are contained inside heavyweight components and maintain their
28
DB JExplorer
What this ultimately means is that we should avoid using both heavyweight and
lightweight components in the same container whenever possible. This does not
mean that we can never mix AWT and Swing components successfully. It just
means we have to be careful and know which situations are safe and which are
not. Since we probably won’t be able to completely eliminate the use of
heavyweight components anytime soon, we have to find ways to make the two
technologies work together in an acceptable way.
The most important rule to follow is that we should never place heavyweight
components inside lightweight containers that commonly support overlapping
children. Some examples of these containers are JInternalFrame, JScrollPane,
JLayeredPane, and JDesktopPane. Secondly, if we use a popup menu in a container
holding a heavyweight component, we need to force that popup to be heavyweight.
To control this for a specific JPopupMenu instance we can use its
setLightWeightPopupEnabled () method.
29
DB JExplorer
Platform independence
The most remarkable thing about Swing components is that they are written in
100% Java and do not depend on peer components, as most AWT components
do. This means that a Swing button or text area will look and function
identically on Macintosh, Solaris, Linux, and Windows platforms. This design
eliminates the need to test and debug applications on each target platform.
javax.swing
Contains the most basic Swing components, default component models,
and interfaces. (Most of the classes shown in Figure 1.2 are contained in
this package.)
javax.swing.border
Classes and interfaces used to define specific border styles. Note that
borders can be shared by any number of Swing components, as they are
not components themselves.
javax.swing.colorchooser
Classes and interfaces supporting the JColorChooser component, used for
color selection. (This package also contains some interesting
undocumented private classes.)
javax.swing.event
The event package contains all Swing-specific event types and listeners.
Swing components also support events and listeners defined in
java.awt.event and java beans.
javax.swing.filechooser
Classes and interfaces supporting the JFileChooser component, used for
file selection.
javax.swing.plaf
Contains the pluggable look-and-feel API used to define custom user
interface components. Most of the classes in this package are abstract.
30
DB JExplorer
31
DB JExplorer
customization.
javax.swing.text.html
This extension of the text package contains support for HTML text
components. (HTML support was being completely rewritten and
expanded upon while we were writing this book. Because of this our
coverage of it is regretably limited.)
javax.swing.text.html.parser
Support for parsing HTML.
javax.swing.text.rtf
Contains support for RTF documents.
javax.swing.tree
Classes and interfaces supporting the JTree component. This component
is used for the display and management of hierarchical data. It supports a
high degree of customization without requiring look-and-feel
enhancements.
javax.swing.undo
The undo package contains support for implementing and managing
undo/redo functionality.
Figure 1.3 Model-view-controller architecture
<<File figure1-3.gif>>
32
DB JExplorer
1. Model
The model is responsible for maintaining all aspects of the component state.
This includes, for example, such values as the pressed/unpressed state of a push
button, a text component’s character data and information about how it is
structured, etc. A model may be responsible for indirect communication with the
with the view and the controller. By indirect we mean that the model does not
‘know’ its view and controller--it does not maintain or retrieve references to
them. Instead the model will send out notifications or broadcasts (what we
know as events). In figure 1.3 this indirect communication is represented by
dashed lines.
2. View
The view determines the visual representation of the component’s model. This is
a component’s “look.” For example, the view displays the correct color of a
component, whether the component appears raised or lowered (in the case of a
button), and the rendering of a desired font. The view is responsible for keeping
its on-screen representation updated and may do so upon receiving indirect
messages from the model, or direct messages from the controller.
3. Controller
33
DB JExplorer
<<File figure1-4.gif>>
Some Swing components also provide the ability to customize specific parts of a
component without affecting the model. More specifically, these components
allow us to define custom cell renderers and editors used to display and accept
34
DB JExplorer
specific data respectively. Figure 1.5 shows the columns of a table containing
stock market data rendered with custom icons and colors. We will examine how
to take advantage of this functionality in our study of Swing combo boxes, lists,
tables, and trees.
Custom models
form. We can also associate the same data model with more than one component
(as we discussed above in looking at MVC). For instance, two JTextAreas can
store their textual content in the same document model, while maintaining two
different views of that information.
Client server has evolved to solve a problem that has been around since
the earliest days of computing : how best to distribute your computing, data
generation and data storage resources in order to obtain efficient, cost effective
departmental an enterprise wide data processing. During mainframe era choices
were quite limited. A central machine housed both the CPU and DATA (cards,
tapes, drums and later disks). Access to these resources was initially confined to
batched runs that produced departmental reports at the appropriate intervals. A
strong central information service department ruled the corporation. The role of the
rest of the corporation limited to requesting new or more frequent reports and to
35
DB JExplorer
provide hand written forms from which the central data banks were created and
updated. The earliest client server solutions therefore could best be characterized as
“SLAVE-MASTER”.
Time-sharing changed the picture. Remote terminal could view and even change
the central data, subject to access permissions. And, as the central data banks
evolved in to sophisticated relational database with non programmer query
languages, online users could formulate adhoc queries and produce local reports
with out adding to the MIS applications software backlog. However remote access
was through dumb terminals, and the client server remained subordinate to the
Slave\Master.
3.4 External Interface Requirement
Software Interfaces
Hardware Interfaces
Processor : Pentium 80386 microprocessor or higher
Main Memory : 128 MB or higher
Hard Disk : 4.3 GB or higher
Floppy Drive : 3 ½ inch
36
DB JExplorer
37
DB JExplorer
The Software Design follows analysis. Design is concerned with its software
components, specifying relationships among components specifying some structure,
maintaining a record of design decisions and providing blueprint implementation
phase. Design consists of detailed design and Architectural design.
38
DB JExplorer
39
DB JExplorer
System Testing involves two kinds of testing integration testing and acceptance
testing. Developing a strategy for integrating the components of a software system
into a functioning whole requires careful planning so that modules are available for
integration when needed. Acceptance testing involves planning and execution of
various tests in order to demonstrate that the implemented system satisfies the
requirements document.
Testing involves selection of test cases on the basis of two methods. Functional
testing, which involves selection test cases for testing the specifications of the
system or the module. Structural testing, which involves testing the internal
structure of the system or module. The goal of the testing is to select the test cases
such that maximum number of errors can be detected.
40
DB JExplorer
The Maintenance phase comes after the acceptance by the customer and release of
the system for production work. Maintenance activities include enhancements of
capabilities, adaptation of software to new processing environments, and correction
of software bugs. This project follows the Phased Life Cycle Model or the Water
fall model to a large extent.
3.6 Advantages
The proposed system is user friendly and it can be used in a multi user
environment.
Increases the efficiency of the information retrieved from the database.
There won’t be any mistyping of the queries because, it automatically generates
a query according to the user specification.
Ease of retrieval of information.
4. System Design
41
DB JExplorer
2. Design Goals
42
DB JExplorer
The basic goal of this document is to subdivide the project into sub Systems
and to give a more appropriate view of the project. The main goal is to automate the
Searching Process.
This in turn implies in order to design each subsystem of the main system to
reach the specific goals.
5. Over view:
The system design document gives a brief over view of the whole
project by subdividing into subsystems in which each subsystem takes it’s own
whole as a main system functionality.
The Uniform Modeling Language (UML) is one of the most exciting tools
in the world of system development today. The UML enables system builders to
create blue prints that capture their vision in a standard, ease – to – understand way
and communicate them to others.
The UML is the brain child of Greedy Booch, James Rumbaugh and
Jacobson. The UML has become the de facto standard in the software industry and
it continuous to evolve.
43
DB JExplorer
Class Diagram
A class is a category or group of things that have similar attributes and common
behaviors. Class diagram provides the representations that developers work from.
Class diagram help on the analysis side too. They enable analysts to talk to clients
in the client’s terminology and then simulate the clients to relieve important details
about the problems they solved.
An example of the UML notation that captures these attributes and
behavior of washing machine is shown below. Rectangle is the icon that represents
the class. It is divided in to three areas. The upper most area contains the name, the
middle area holds the attributes and the lower area shows the operation. A class
diagram consist number of these rectangles connected by two lines that show how
the classes relate to one another.
Object Diagram
Object is an instance of a class – a specific thing that has specific values of
the attributes and behavior.
44
DB JExplorer
Sequence Diagram
Class diagram and Object diagrams represent static information. The UML
Sequence diagram shows the time based dynamic of the interaction.
State diagram
At any given time an object is in a particular state. A person can be a
newborn, infant, adolescent, teenager or adult. This diagram has the start state at the
top and stop state at bottom.
Collaboration Diagram
Component Diagram
Activity Diagram
45
DB JExplorer
46
DB JExplorer
Deployment Diagram
47
DB JExplorer
Identify Actors
The object oriented analysis process in the Unified Approach (UA).
The actors are the external factors that interact with the system. To identify the
actor we need to know
Who is using the system
Or, in the case of new system, who will be using the system.
48
DB JExplorer
<<DB Administrator>>
<>Actor>>
<<EDP Manager>>
Fig: Actors of the System
49
DB JExplorer
During this phase of analysis, processes and the applications that support
them are modeled. These activities would been enhanced and supported by using
the activity diagram. The main idea behind this phase is to get a basic model
without spending too much time in the process. The advantage of developing a
business process model is that it makes you more familiar with the system and
therefore the user requirements and also aids in developing use cases.
For the current system, the activities that the user can do are,
50
DB JExplorer
Select a table
Select table
Is valid table.
No
Select a Valid Table
Yes from the List.
Displays the
Query Generator
For Mathematical functions
Conditional Operators
51
DB JExplorer
52
DB JExplorer
Use Cases are scenarios for understanding system requirements. A use case model
can be instrumental in project development, planning, and documentation of system
requirements. A use case is an interaction between users and a system; it captures
the goal of the users and the responsibility of the system to its users. The use-case
model describes the uses of the system and shows the course of events that can be
performed. In other words, it shows a system in terms of its users and how it is
being used from a user point of view. Furthermore, it defines what happens in the
system when the use case is performed.
Use cases and their descriptions for the current applications are.
53
DB JExplorer
Login
Authentication
<<Users with
in the Org>>
View Tables
Query Generator
Records
Interaction Diagrams
54
DB JExplorer
55
DB JExplorer
Further
Login Form Check Valid User
requests.
User is valid
Login form displays connected to SQL.
56
DB JExplorer
UML Diagrams
The UML class diagram, also referred to as object modeling, is main static
analysis diagram. A class diagram is a collection of static modeling elements, such
as classes and their relationships, connected as a graph to each other and to their
contents. Class diagrams do not show temporal information. Object modeling is the
process by which the logical objects in the real world are represented by actual
objects in the program. The visual representation of the objects, their relationships,
and their structures is for ease of understanding.
For the current application classes identified during this phase of analysis are,
Login Form
Check Valid User
Table Form
Select Form
Build Table
The attributes identified in the classes are,
57
DB JExplorer
The classes along with their attributes and methods identified during this phase
of analysis for the current project are represented in the static UML class diagram.
58
DB JExplorer
Login Form
User Id,
Password
CheckPassword ()
CheckValidUser
IsValid ()
Table form
Tables
, fields
DisplayTableFields ()
SelectForm BuildTable
59
DB JExplorer
EA 4.10 1Unregistered
.USECASE DIAGRAM:
Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
ud Use Case Model
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
user select
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
database
EA 4.10 Unregistered Trial Version EA 4.10 delete
Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
60
EA 4.10 Unregistered Trial Version EA 4.10 Unregistered Trial Version EA 4.10 Unregistered T
DB JExplorer
E A 4 . 1 0 U uns er re g is t e r e d ET Ar ia4l . V1de 0aex taprlUbosar ioesnre rne g is t e r e d ET Ardiaa 4t al b. V1a s0ee r Us ion rn
62
DB JExplorer
63
DB JExplorer
E A 4.10 U nregistered T rial Version
E A 4.10 U nregistered T rial Version
EA 4.10 U nregistered T rial Version
EA 4.10 U nr
a d Ac tiv ity Dia gra m
E A 4.10 U nregistered T rial Version
E A 4.10 U nregistered T rial Version
EA 4.10 U nregistered T rial Version
EA 4.10 U nr
CLASS DIAGRAM1:
65
DB JExplorer
66
DB JExplorer
Data Dictionary
Design is the first step in development phase for any engineering product or
system. It may be defined as “the process of applying various techniques and
principles for the purpose of defining a device, a process, or a system insufficient
detail to permit its physical realization”.
Designing Classes
67
DB JExplorer
Axiom 1. The independence axiom: It states that, during the design process, as we
go from requirement and use case to a system component, each component must
satisfy that requirement without affecting other requirements.
68
DB JExplorer
During the analysis phase the attributes identified for this class are
• Login User
• Password
• Total users
69
DB JExplorer
The goal of data design is to generate a set of relation schema’s that allows
us to store information without unnecessary redundancy and allows us to retrieve
information easily. We can achieve optimization, ease of use in maintenance by
designing the database using relational model in which data is stored in the form of
tables and their exists a relation between or among the tables.
NORMALIZATION
70
DB JExplorer
In this project you can enter in to any login and can access any of the tables
as you like. Here you are not creating any tables to store information, the concept of
Normalization does not play a major role in this system.
Once the analysis is complete, developers can start designing the user
interfaces for the objects and determining how these objects are to be presented.
The main goal of the user interface is to display and obtain needed information in
an accessible, efficient manner. The design of the software’s interface, more than
any thing else, affects how a user interacts and therefore experiences an application.
It is important for a design to provide users the information the they need and
clearly tell them how to successfully complete the task. A well-designed UI has
visual appeal that motivates users to use the application. In addition it should use
the limited screen space efficiently.
71
DB JExplorer
72
DB JExplorer
73
DB JExplorer
74
DB JExplorer
75
DB JExplorer
76
DB JExplorer
77
DB JExplorer
78
DB JExplorer
79
DB JExplorer
80
DB JExplorer
81
DB JExplorer
82
DB JExplorer
83
DB JExplorer
5. System Implementation
Introduction:
Testing is performed after the coding phase. It is a major software quality
control measure employed during software development. It’s basic function is to
detect the errors in the software. The goal of the testing is to uncover required
design and coding errors in the programs. The input phase of the testing is the
written code. Testing is performed with unit testing which detects errors in each
module. These modules are integrated into subsystems and tested for integration.
Eventually the overall system is tested which is called system testing. At the end,
the system is tested with the real data at the place of installation called as
acceptance testing.
Testing involves selection of test cases on the basis of two methods.
Functional testing, which involves selection test cases for testing the specifications
of the system or the module. Structural testing, which involves testing the internal
structure of the system or module. The goal of the testing is to select the test cases
such that maximum number of errors can be detected by making use of minimum
number of test cases. For this reason we generate the test cases on the basis of the
test criteria.
A criterion is valid if any error in the software can be revealed by the same
test case satisfying the criteria.
Testing Process:
Testing performs a very critical role for quality assurance and
ensuring the reliability of the software. During testing, the program to be tested is
executed with a set of test cases and output of the program for the test case is
evaluated to determine if the program is performing as it is expected to.
• Testing is a process of executing a program with the intent of finding errors.
84
DB JExplorer
• A good test case is one that has a high probability of finding as yet
undiscovered error.
• A successful test is one yet uncovers as yet-undiscovered error.
Testing
Testing means quality test. Testing is a process of executing a program with
the intent of finding an error. A good test case is one that has a high probability of
finding an as yet undiscovered error. Objective should be to design test that
systematically uncovers different classes of error. And to do with a minimum
amount of time and effort. Testing cannot show the absence of Defects, it can only
show that soft wear defects are present. It is important to keep this statement in one
of these ways knowing the specific function that a product has been designed to
perform, test can be conducted that demonstrate each function is fully operational.
This approach is called ‘black box testing’. Knowing the internal working of the
product, test can be conducted to ensure that “all gears mesh” that internal operation
of the product performs according to specification and all internal components have
been adequately exercised. This Approach is call “white box testing”.
85
DB JExplorer
Test Plans
• Risk assessment
2. Analyzing the • Schedule constraints
Application
• Resource constraints
• Unit testing
• Functional testing
• System testing
4. Different Testing Types,
• Performance testing
Different Documentation
• Configuration testing
• Regression testing
86
DB JExplorer
Unit Testing:
A program unit is usually small enough that the programmer who developed
it can test it in grate detail than will be possible when the unit is integrated into an
evolving soft wear product.
Functional testing:
Functional Testing Specifies the operating condition, input values and
expected result .The function should be designed to take care of the situation.
Performance testes-should be designed to verify response time, execution time,
throughput and Secondary memory utilization.
Stress testing is designed to overload a system in various ways. The
purpose of the stress test is to determine the limitation of the system. Structural
stresses are conducted with examining the internal processing logic of the Software
system.
System testing:
A system is tested for online responses, volume of transactions, stress
Recover from failure and usability. System testing involves two kinds of activities
integration testing and acceptance testing.
Integrated testing:
Bottom –up integration is the traditional strategy used to integrate the
components of software system into a functional whole. Bottom-up integration
consists of unit testing followed by sub system testing of entire system. Unit testing
has the goal of discovering Errors in the goal of discovering errors in the individual
modules of the systems. The primary purpose of subsystems testing is to verify
operation of the interfaces between modules in the system. System testing is
concerned with the designing logic, control flow, recovery procedures, and
throughput, capacity and timing characteristics of the Entire structure.
87
DB JExplorer
Top-down integration starts with the main routine and or low immediate
subordinated routines in the systems structure.
88
DB JExplorer
Testing classes brings in some new issues that are not present in testing
functions. First, a class can’t be tested directly, only an instance of a class can be
tested. This means that we at least a class indirectly by testing its instances, of the
class and list them to test the class.
In Object Oriented programs, control flow is characterized by message
passing among object, and the control flow switches from one object to another by
inter object communication. Consequently there is no sequential control flow with
in a class like in functions. This lack of sequential control flow with in a class
requires different approaches for testing.
Thirdly, new issues are introduced due to inheritance. There are basically
tow reasons for problems that arise from inheritance .The structure of inheritance
hierarchy and the kind of inheritance.
Overall, testing of objects can be defined as the process of exercising the
routines provided by an object with the goal of uncovering error in the
implementation of the routines or state of the object or both .To test an object, we
have to test the interaction between the methods provided on the object. For this,
the problem for finding the patterns of method invocation of the object under test
with different arguments, which will yield error .In some sense, by executing
various patterns, we are testing the communication between the different methods
of the object.
89
DB JExplorer
Testing Process
Test plan:
Testing commences with a test plan and terminated with acceptance testing.
A test plan is a general document for the entire project that defines the scope and
approach to be taken, and schedule of testing as well as identifies the test items for
the entire testing process and the personal responsible for the different activities.
Test planning can be done well before the actual testing commences and can be
done in parallel with the coding and the design phases. The inputs for forming the
test plan are
1. Project plan
2. Requirements document
A test should contain the following:
Test unit specification: A test unit is a set of one or more modules together
with associated data, that are from a single computer program and that are the
object of testing. A test unit may be a module, a few modules or a complete system.
In this project we will perform tests on the following units.
1. Connecting to Web server.
2. Selecting the Company Details.
3.Validation of the Employee Bills.
4. Selecting the Details.
5. Disconnect.
Features to be tested:
This includes all software features and combinations of features that should
be tested. A soft features is a software characteristic specified or implied by the
requirements or design documents. These may include functionality, performance,
design constraints and attributes. In this project all the functional features specified
in the requirements documents will be tested.
90
DB JExplorer
Testing Types
91
DB JExplorer
92
DB JExplorer
93
DB JExplorer
User
See Acceptance Testing.
Acceptance
Testing
Testing in which the software tester has knowledge of the
White Box
inner workings, structure and language of the software, or at
Testing
least its purpose.
6. Documentation
6.1 How to operate the package
1. Install JDK 1.5 software and observe location C:\Program
Files\Java\jdk1.5.0_07
2. Set class path
My computer - right click-Properties-Advanced- Environmental Variables - In User
variables - [NEW]
Variable _name : JAVA_HOME
94
DB JExplorer
5. DSN Creation
Open Start \ Settings\Control Panel \ Adminstrative Tools \ DataSources for
ODBC \
Click On [Add] and Select Oracle in Ora Home Driver and Click [Finish]
95
DB JExplorer
commit;
8. In your code Folder, click On Login.bat file.
96
DB JExplorer
Even though the project was completed to the original requirements, there are a few
features that we could add or improve on, if time allowed. We could look at other DBMS
file systems to get a better idea on how to design a more efficient and space conserving
system. Also, the creating of tables and updating tables to made more efficient.
Otherwise, we are happy with the performance of our project.
Reliability:
The project performs its intended functions with required precision, hence is
very reliable.
Flexibility:
The project is very flexible and any modification can be made to the existing
system to suit changes that can take place in future.
The forms/screens are designed in such a way that any end user can easily
understand Less effort is required to learn, Operate, repair the input and interpret
outputs with less strain.
(1) Security is the most important feature of the proposed system. In this some
security measures are taken to avoid the mishandling of the database.
(2) Constraints are defined to avoid the wrong entries.
(3) With this automated system, we can easily generate required reports.
(4) Redundant data is reduced with normalization.
(5) The system displays error messages if any error occurs.
97
DB JExplorer
Conclusion
This project Internet Banking on DB JEXPLORER model is implemented using java with
oracle as database. This project overcomes the disadvantages that are present with the
existing system.
This project is developed to provide user-friendly access to the customer and to make the
customer satisfy.It is successfully tested.
98
DB JExplorer
8.REFERENCES
Books
Software engineering -R. Pressmen
Computer networks -A.S.Tanenbaum
99
DB JExplorer
9.Bibliography
100
DB JExplorer
101