You are on page 1of 54

Chapter 1

EXECUTIVE SUMMARY

Data plays a very important role in our day-to-day transactions. Companies,

banks, schools, colleges, etc all make use of database to store huge amount of data.

are meantto hold dataandeachdatabase


Datahases hasits independent
enterprise
environment. Each database has a query language associated with it, so a user

working on particular database should have a pre-requisite knowledge of the various

queries. However, one database queries differ from another, so it becomes difficult to

keep all such queries in mind. lfa user works on multiple databases, it even becomes

cumbersome to learn all the queries even if it has to perform the same sort of work on

each database. Keeping these things in view, Database Independent Wizard &

Services" is an approach towards facilitating easy and smooth functioning on all the

databases.

Database lndcpcndcnt Wizard Manager provides an independent environment

for working out on data i.c. one can access any table located in any database with
'
much ease. This facility allows user/ organization to handle n number of databases

at a time without any primary knowledge of queries in database. To ensure

unauthorized access, login facility has been .provided, so that only authenticated

users can access this application.


Thusthisserviceis availableat all timeandany user,student,administratoror

anyonewho has keen interest in databases must use this service and enjoy the

pleasure of database accessing and management. Also this service provides all

technical information in the form of help document.


Chapter 2

INTRODUCTION

Today in the world of software and technology the software organizations

need to handle numerous projects with great efficiency. While managing large

number
ofprojects
theorganization
have upwithmeny
tocope attributing
project
things. The statistical analysis is important as it helps the administrator of the

it in a bettermanner.Database
applicationto administrate Wizard
Independent

Manager provides the easy and simultaneous access to the different types of database.

2.] Introduction

With the tremendous increase in application tools, traffic in virtually every

organization, it needs developers to provide a tool that will provide all database

operation in one enterprise manager instead of using separate databases such as

Sybase, db2, sqlscrver, Microsoft access etc. for all the operations. Our objective is to

build software which will help the user to make their work much simpler & easier.

As deployment expands, gaining visibility & manageability over multiple

database tools is critical to cllicicnlly & cost effectively manage IT infmstructure.

tool'can
This tobrowse
beused database
any such
asOracle, access
etc.
SqlScrver, 50
user does not have to use different tools for different databases. This tool will

internally use JDBC to perform low level DBMS operations on database.It will use

metadata classes of JDBC to retrieve information about database. This tool will
initially ask for connect information such as driver name, DSN, USERID,

PASSWORD etc. and will connect will that database. Once it is connected we can

interactively perform dbms operations.

We will developing this database independententerprise manager for

operating on common tasks of databases,ensure optimized application performance,

& improve budgeting & forecastingto changing businessneeds. ,

2.2 Goals and Scope of the work

2.2.1 Project Goals

This project will provide integrationof all the databaseuses in one application

instead of using separate tool for every operation. Some of the featuresas follows:

0 Easy operation

This enterprise manager should be easy to operate and should be such that but this

manager maintains level ol'sccurity \Vhilc usim:Ithis manager we have needed to enter

drivcr name. dsn. It will be operated if only ildatahasc is installed in the system or the

connection establishment with the database should he done by setting the appropriate

path. thncvcr enterprise manager wanted or trying to establish connection with any

database, there is need ol prc installation of any database with the particular drivers in

the system.

0 Reliability

DatabaseindependentEnterprisemanager providesreliable interfacefor user. It

allow user to use different types of databasessimultaneously,databasemay be


MSAccess, IBMDB2, MySQL etc. It includes comprehensive support for various

databasetypes and lets programmers quickly and easily build front ends for database

applications.

2.2.2 Project Scope

0 This manger provides platform independent feature for user or organization

that using it.

0 This tool or enterprise manager is integration of all databases i.e. it will

provides accessto all databasesinstead of using separatedatabasefor separate

operation.

0' Butwhileimplementing
onanyLinuxplatform
thereis prerequisites
that
installation ofjclbc and odbc driver on it is required.

0 This project will manage and handle all the enterprise managers functions.

0 This Project keeps track ol all possible functionzililics 0f DBMS, RDBMS,

ORDBMS. SQL.

o The projectalso transfersthe data form any database


to any dathbasc

independent of the particulardatabase.

0 The project automaticallygenerates the forms by just providing the requisite

amount of data.

o With the help ofquery manager, query is mitonmticallygeneratedand fired on

the respecteddatabase.
2.3 Organization of Report

Thereportthatfollowsis dividedinto five chapters.


Second is the
chapter
Literature Survey of the project. This part explains need of the project along with

the different components used in it and their necessity. Next chapter is Theory

Oriented which explains about technology use to develop project. It includes

information about Java, different types of databases like MS Access, Oracle, IBM

DB2, Sybase, My SQL etc.

The next chapter is system analysis of the project. This explains software

and hardware requirement of the project .This is followed by detailed analysis of

the project. Analysis explains functional flow of the two major applications of

project. The Fourth focus on modules and the implementation of the complete

project using various aids like graphs and snapshots. There are four modules The

last chapter states the conclusion of the project i.e. the aim, objective and future

scope ol'the project.


Chapter 3

LITERATURE SURVEY

This chaptergive the infomtationaboutwhat is the needof project?,whatare

the functions the application providesand featuresof the project.

3.1 Need of Project

Whether or not you need to worry about database independencedependsupon

the organization that you work for and the project work in which you are involved.

Have you ever Worked on a custom application development project that where just

two days before the application is put into production someone higher up in the food

chain decides that your Oracle database must now be a SQL Server database. Does

the database vary from SQL Server. to Oracle. to DBZ. etc from project to project. If

you are one of the lucky souls who answered "no" to the above questions. you can

feel superior to us less fortunate. We'll discuss how to create a databaseindependent

data accesslayer that you can use acrossmost of the project.

By DatabaseIndependentWimrd Manager it is possibleto changeyour

answer from "no to yes". Using this applicationuser is able to operatemultiple

databases
simultaneously of databases.
withouthavingmuchknowledge
We need to look at the different databases that we need to access with our data

provider. Ideally, we would like to have our object be able to support any and all of

the databases that we need to access.

3.2 F unctionality

Independent Database Wizard Manager supports access to various databases

and database servers. It offers controls for connecting to MySQL and MS Access,

DBZ, FoxPro, Sybase etc. To facilitate database access, it includes aDatabase


.
connections
whichletsusersmanage
Manager, anddata
to variousservers

repositories.

The wizard prompts you to enter the administrator password for the server

before going on to main frame. Tables are listed in a tree structure on the left of the

manager window. T he-programhelps you set up and modify tables. SQL queries, and

database users.

After establishing the database connection. access to the database itself is

simple. DIWM gives you several databaseaccesscontrols which you can simply drop

into a form.

3.3 Features

0 Graphical editing

. Tables groupable in a hierarchy

. Custom data types for the databasethatare mapped into real DBMS data types
Databaseschemabrowsing to see the tables,views, and stored
procedures
defined in a database

Database schema editing using wizards

Data view to see data stored in tables

SQL and DDL command execution to help you write and execute more

complicated SQL commands

Revision and
history automati;increment
build
'
Tableeditingfacility

Automatic
tablelocalization
formL-llti-language
applications

Simultaneous work on different database

Works with databases, such as MySQL, PostgreSQL, Oracle, IBM DBZ,

Microsoft SQL Server, Point Base, Sybase, lnlbrmix, Cloudscape, Derby,

and more
Chapter 4

RESEARCH METHODOLOGY

This chapter includes the technologies used in our project, i.e. about JAVA,

JDBC, and various methods and features provided by them. Database Independent

Wizard Manager is the application which provides the user friendly environment to

toworksimhltaneously
user databases.
onmultiple So,thischapter the
alsoincludes
overview of databases which are frequently used in many organizations.

4.1 Java

4.1.1 Introduction

Java is an Object Oriented programming language with Internet programming

features. Success of Java over the Internet is just amazing. Java has made a never

before impact on the computer industry.

4.1.2 Features

0 Simple and Object Oricntcdz- The programming style of Java is very simple as

it follows a standard structure and syntax and features olOOIS.

0 Machine and Platform lndcpcndcnt : ll makes the java program written on

one computercompatibleto run on any other machinewith any type of

hardware, software platform.

0 Secure :- Java Programming Architecture provides high level of securityof

data and communications.


0 Robust :- Java has good data handling and automatic memory
capabilities

management.

0 Error Handling :- It prevents java programs to terminate abnormally due to

these errors. These features are called as Exception handling in Java.

0 Multithreading :- Java allows multithreading programming, which is rarely

found in programming language in this extent.

0 Dynamic Usage :- Java is used for console applications, Internet

programming, graphics and animation programming, network programming,

distributed component programming.

4.1.3 Exception Handling

Exception Handling is handling exceptional situations in a program, which can

lead to errors and abnormaltermination of the program.

There are three types of errors a program can return.

0 Compilation 0r Syntax Errors

0 Runtimc or Execution Errors

0 Logical 0r specilicalion Errors

In Javaexceptionhandling is mainly done with two programmingblocks

o T ry: [t is a block olcodc which possibly can give rise to a runtime error and

catch contains the code in which errors are repaired.

o catch: This blockis executedOnly if try returnsan error otherwisecatchblock

is not at all executed.


4.1.4 Applet Programming

Applet is a program,which gives its output in a web browser.It works in

association with Hyper Text Markup Language. An HMTL page is used to call the

output of a java program in a web browser. Applet is the actual Internet programming

for whichjava hasbeenso popularin the industry.Appletsaregraphicalin natureand

securedtoo. These can be transportedover the internet from one computer to another

for execution. Java Applets have made a significant impact on the worldwide web.

The most common GUI components used in applet programming are Label,

Text F ield, Button, Radio Button, Checkbox, List and Choice.

4;].5 Standard in Java


Packages

Package is a collection of classes of a specific category and class is a

collection ofrcusablc methods.

Table 4.1 Standard Packages in Java

Package Name Purpose

JavaJang It is the main java language support. It is the root oljava class

hierarchy.

java.io Classesrelatingto lnpul-Oulpul in java.

java.ulil This packagecontainsspecialutility classes.

java.awt It has a collection all GUI components.

java.awt.event It provideseventhandlingclasses.
java. Applet For internet programming and web support.

java.sql Databaseprogramming classesfor JDBC.

javax.swing Collection of special GUI components, swing.

java.net Classesfor network programming in java.

javax.servlet For developing programs for the web servers.

java.bean For developing reusable components, beans.

4.1.6 Event Handling

Event Handling is making an Applet interactive. It is made to react to user

requests.Examplewhen userclicks to the commandbutton 0k , nothing is going

to happenas the button is associatedwith any responsemechanism(eventhandling).

Java has a collection of classes in java.nwtevent package for handling events

on AWT components.

Steps in Event Programming:

1] Import _iava.awt.cvent package for the event handling support to our program.

is a kindof
2] ImplementtheListenerclasswith theprogramclass.Implementing

Inheritance.

3] Add Listener with the AW'I' component.

4] Writecodein theappropriate
eventmethod. 13V
ThiscodeistheaCtiOD a takes in

response to user events.


o ActionListencr

This is used mostly with command buttons to recognizeand react to click event.

0 ItemListener

ItemListener is applied on checkboxes, lists and choice lists to identify selection


and deselection of items.

0 MouseListener

In this listener mouse events are trapped and actions are taken accordingly.

0 MouseMotionListcner

In this event handling mousemotions are trapped and coded.

o KeyListener

These events are related to key strokes from the keyboard.

4.2 J DBC (Java Database Connectivity)

JZSE and JZEE) that provides


JDBC technology is an AP] (included in 1201/1

cross-DBMS connectivity to a wide range of SQL databasesand accessto other

tabular data sources, such as spreadsheetsor flat tiles. The main feature is that an

applicationcan accessvirtually any datasourceand run on any platform with a Java

Viltual Machine.

ln simplestterms,a JDBCtechnologymakesit possibleto do threethings:

0 Establish a connection with a data source

o Send queries and update statements to the data source

0 Process the results


°2° Steps for JDBC programming:

1. Create database

2. Create ODBC DSN by specifying details of database.

3. Import java.sql package.

4. Create object of JDBC driver like connection,statement,resultset.

5. Load the suitable JDBC driver'to communicatewith databasethroughDSN.

6. Initialize the connectionobject with the help of driver managerby specifyingthe

name of DSN.

7. Initialize the statementobject the help of connection.

8. Fire SQL query with the help of statementobject.

9. Close the object in the reverseorder of their creation.

4.3 Databases

4.3.l MS Access

M ierosoft Ollicc Access. previously known as Microsoft Access.is a database

management system from Microsoft that combines the relational Microsoft Jet

Database [Enginewith graphical user interluceand soltxvare-developmentt


tools.MS

Access stores data in its own formal basedon the AccessJet Databaselingine. It can

also import or link directly to data stored in other applicationsand databases.

In addition to using its own databasestorage lilc. Microsoft Accessmay also

be used as the 'front-end' with other productsas the 'back-end'tables. Accesstables

support a variety of standardfield types, indices,and referentialintegrity. Accessalso

includes a query interface, forms to display and enter data, and reportsfor printing.
Users can create tables, queries, forms and reports, and connect them together

with macros. Advanced users can use VBA to write rich solutions with advanced data

manipulation and user control. Access also has report creation features that can work

with any data source that Access can "access". The original concept of Access was for

end users to be able to "access" data from any source.

One of the benefits of Access from a programmer's perspective is its relative

compatibility with SQL. Microsoft Access offers parameterized queries. These

queries and Access tables can be referenced from other programs like VB6 and .NET.

Microsoft Access is a file server-based database. Non-programmers can use the macro

feature to automate simple tasks through a series of dropdown selections.

4.3.2 Oracle

The Oracle Database is an object-relational database management system

(ORDBMS) produced and marketed by Oracle Corporation. The Oracle RDBMS

stores data logically in the form oftable spacesand physically in the form of data tiles

Table spaces can contain various types of memory segments, such as Data Segments,

Index Segments, etc. Segments in turn comprise one or more extents. Extents

comprise groups olcontiguous data blocks. Data blocks from the basic units of data

storage. There is also a partitioning feature available on newer versions of the

database, which allows tables to be partitioned based on diti'erent set of keys. Specific

partitions can then be easily added or dropped to help manage large data sets.
Oracle databases control simultaneous access to data resources with locks .The

databasesalso utilize "latches"-- low-level serializationmechanisms


to protectshared

data structures in the System Global Area.

Oracle databases may include many semi-autonomous software sub-systems.

Features of Oracle may include Active Session History (ASI-l), the collection of data

for immediate monitoring of very recent database activity, Clusterware, Data Pump

utilities, which aid in importing and exporting data and metadata between databases,

Fast-startparallel rollback etc. The size and content of the PGA dependson the

Oracle-servcr options installed. This area consists of stack-space, sessioninformation,

private SQL-mea, sorting area. The Oracle RDBMS typically relies on a group of

runningsimultaneously
processes to monitorand
in the backgroundand interacting

expedite database operations.

4.3.3 MySQL

MySQL is the world's most used relational database management

system(RDBMS) that runs as a server providing muiti-uscr access to a number of

databases.The SQL phrasestandsfor StructuredQuery Language.MySQL works on

many dichrcnt systemplatforms.

Many programming languages with languagcspcciiic Alls include libraries

for accessing MySQL databases.T hcsc include MySQL Connector/Net for integration

with Microsoft's Visual Studio (languages such as C# and VB are most commonly

used)and the JDBC driver for Java. In addition,an ODBC interfacecalled MyODBC

allows additional programming languages that support the ODBC interface to


communicate with a MySQL database,such as ASP or ColdFusion.The HTSQL -

URL-based query method also ships with a MySQL adapter, allowing direct

interaction between a MySQL databaseand any web client via structuredURLs.

MySQL ships with a suite of command-linetools for taskssuch as querying

the database,backing up data, inspectingstatus,performingcommon tasks such as

creating a database, and many more.

Syntax for creatingtable in MySQL is as below:

createtable table_name(attribute_name
datatypc,.....);

Datatypes can be int, varchar(size), etc.

4.3.4 Sybase

SYBASE system,the first high-pcrtbrmanccRDBMS for online applications.

Rather than having a vast central bank oldala stored in a large mainframe computer,

the SYBASli System provided for a client/scrvcr computer. Sybasc introduced the

Firstcomponent of System 10. called OmniSQl. Gateway. This program connected

the various parts ola computer network, enabling users at any point to gain access to

changes being made anywhere on the system Sybase remains committed to its data

management and analytics products.

You must connect to the Sybase IQ Opcn Server each time you run the client

application. The method for connecting varies depending on the application being

used. For most graphical front ends. you select the Sybase IQ Open Server from a list

of available servers. The application prompts you for the username and password of

the catalog server.


0? Generate Sample DatabasesUsing Sybase

The pioceduresfor generatingsampledatabases


that applyto Sybaseinclude

0 Steps to Transfer the Files and Create Databases:

1. Ensure that the SQL scripts for creating sample data sources are installed on

your computer. To verify whether the scripts are installed, go to the

installation_location/samples/db directory. If the directory exists and contains

gosales, gosalesdw, govendors, and markctresearch, then the samples are

installed. If the samples are not installed, perform a custom installation to

install them.

2. Create a Sybase database for each of the four sample data sources. Name the

databases gosales, govendors, gomarket, and gosalesdw .Create a user for each

database and grant each new user access to the corresponding database. with

create table privileges. Name the new users gosalcs.govcndors, gomarkct. and

gosalcsdw.

4.3.5 IBM D132

T he IBM 0132 Enterprise Server Edition is a relational model database server

developed by IBM. lt primarily runs on Unix (namely AIX), Linux, IBM 1 (formerly

08/400). 2108 and Windows servers. DBZ can be administered from either the

commandline or a GUI. The connnand-linc interface requires more knowledge of the

product but can be 'more easily scripted and automated. The GUI is a multi-platform

Java client that contains a variety of wizards suitable for hovice users. DB2 supports
both SQL and XQuery. DBZ has native implementation of XML data storage, where

XML data is stored as XML for faster access using XQuery.

An important feature of DB2 computer programs is error handling. The SQL

communications area (SQLCA) structure was once used exclusively within a DB2

program to return error information to the application program aher every SQL

statement was executed. The primary, but not singularly useful, error diagnostic is

held in the field SQLCODE within the SQLCA block.

The SQL return code values are:

0 0 means successful execution.

o A positive number means successful execution with one or more warnings. An

example is +100 , which means no rows found.

. A negative number means unsuccessful with an error. An example is -9ll .

which means a lock timeout (or deadlock) has occurred. triggering a rollback.
.

4.3.6 PostgreSQLPlus

Postgrc SQL, simply lostgrcs. is an ()lzicct-rcluliomll database management

system(ORDBMS) available for many platforms includingLinux,

FrccBSD, Solaris, Microsoft Windows. It implements the majority of the SQL:2008

standard, is AClD-compliant, is fully transactional has extensible data types,

operators, and indexes. The vast majority of Linux distributions have PostgreSQL

available in supplied packages


Procedural languages can be used to create user-defmed functions and can also be

used in ad hoc "DO" blocks. Tables can be set to inherit their characteristics from a

."parent"table.Datain childtableswill appear


to existin theparenttables,unlessdata

is selected from the parent table.

Features of PostgreSQLPlus are Referential integrity constraints including

foreign key constraints, column constraints, and row checks Views. Although views

are by default not updatable, they can be made so by creating "insert", "update",

and/or "delete" Query Re-Write Rules on the view. Inner, outer (full, left and right),

and cross joins , Sub-selects , Correlated subqueries ,Transactions , Encrypted

connections via SSL , Binary and textual large-object storage , Onlinc backup,

Domains, Tablespaces , Savepoints etc.

'3 Creating PostgreSQL Database:

The first test to see whether you can access the database server is to try to create a

database. A running PostgreSQl. server can manage many databases. T ypicall)" a

separate database is used for each project or for each user. Possibly. your site

administrator has already created a database for your use. He should have told you

what the name of your database is. In that case you can omit this step and skip ahead

to the next section.

T 0 create a new database, in this example named mydb, you use the following

command:

0 $ crcaledb mydb

This should produce as response:

CREATE DATABASE
If so, this stepwas successful and you can skip over the remainderof this section.

If you seea messagesimilar to

o createdb: command not found

then PostgreSQL was not installed properly. Either it was not installed at all or the

search path was not set correctly. Try calling the command with an absolute path

instead:$ /usr/local/pgsql/bin/createdb mydb '

The path at your site might be different. Contact your site administrator or check

back in the installation instructions to correct the situation.

Another response could be this:

creatcdb: could not connect to database template]: FATAL: user "joe" does not

existwhereyour own login nameis mentioned.


This will happen
if theadministrator

has not created a PostgreSQl. user account for you. (PostgreSQL user accounts are

distinct from operating system user accounts.) You will need to become the operating

system user under which lostgrcSQL was installed to create the lirst user account. It

could also be that you were assigned a lostgrcSQL user name that is different from

your operating system user name; in that case you need to use the -U switch or set the

PGUSER environment variable to specifyyour lostgrcSQL user name. ll you havea

user account but it does not have the privileges required to create a database. you will

see the following:

createdb: database creation failed: ERROR: permission denied to create database

Not every user has authorization to create new databases.ll lostgreSQL refuses to

create databases for you then the site administrator needs to grant you permission to

create databases. Consult your site administrator if this occurs.


Chapter 5

PROJECT ANALYSIS

This chapter includes the step in development of software i.e. software design

life cycle and their phases. Thus following the SDLC the system design of our

project and Data Flow Diagram which representthe How of project.

5.] Software Development Life Cycle

The stages in development of a software through "The Waterfall Model" are as

follows:

Requirement Analysis & Definition: All possible requirements of the system to be

developed are captured in this phase. Requirements are set of functionalities and

constraints that the end-user (who will be using the system) expects from the system.

The requirements are gathered from the cnd-user by consultation. these requirements

are analyzed for their validity and the possibility ofincorporating the requirements in

the system to bc development is also studied. Finally. :1 Requirement Spcciiication

document is created which serves the purpose of guideline for the next phase of the

model.

System & Software Design: Before a starting for actual coding, it is highly important

to understand what we are going to create and what it should look like? The

requirement specifications from first phase are studied in this phase and system design

is prepared.System Design helps in specifying hardware and system requirementsand


also helps in defining overall system architecture. The system design specifications

serve as input for the next phase of the model.

Implementation & Unit Testing: On receiving system design documents, the work

is divided in modules/units and actual coding is started. The system is first developed

in small programs called units, which are integrated in the next phase. Each unit is

developed and tested for its functionality; this is referred to as Unit Testing. Unit

testing mainly verifies if the modules/units meet their specifications.

Integration & System Testing: As specified above, the system is first divided in

units which are developed and tested for their functionalities. These units are

integrated into a complete system during Integration phase and tested to check if all

modules/units coordinate between each other and the system as a whole behaves as

per the spccilications. After successfully testing the software. it is delivered to the

customer.

Operations & Maintenance: This phase ol "The Waterfall Model" is virtually never

ending phase (Very long). (icncrzllly. pmblcms with the system developed (which are

not found during the development life cycle) come up ullcr its practical use starts. so

the issues related lo the system are sulvcd nI'tcr deployment nlthc system. Not all the

problems come in picture directly but they arise time to time and needs to be solved:

hence this process is referred as Maintenance.


5.2 System Design

System Design consists ofcomplctc How ol'our project with the help of Data

Flow Diagram. System Designof the projectis used to analyzethe working with

different variables and conditions. The DIWM is divided into Four main modules:

1. Query Browser: Displaysthe resultofcxcculionofmain query. Navigatcs

betweendifferenttablesanddisplaysappropriateoutput.

2. Query Result:Acceptsa SQL Queryand performthe desiredoperationby

importing. java.sql package.

3- T able Wizard: Create table directly by accepting column name and other

preliminary data.

4- Form Panel:Helpseditinga table.


The system navigates through different modules to provide an integrated

development environment which works on all databasesand performsall operations

despite of the complexity of the underliningdatabase.The connectivity is established

through various ODBC drivers for the related database.

Table 5.2 Databasewith their corresponding ODBC Driver

Database Name ODBC Driver

Microsoft Access Microsoft Access Driver

MySQL MySQLODBC5.1 Driver

Oracle Oracle in Oran 10g_home1

IBM 082 IBM 082 ODBC Driver

ODBCDriver(ANSI)
PosrgreSQL
PostgreSQLPlus
'-_......

Anywhere SQLAnywhere12
Sybase-SQL
Chapter 6

FEASIBILTY STUDY

FEASIBILITY ANALYSIS

The system investigation stage requires a preliminary study called a feasibility

study to determine the information needs of prospective usersand determine the

resource requirements, costs, benefits, and feasibility of the proposed information

system.

A feasibility study is an evaluation of a proposal designed to determine the

difficulty in carrying out a designated task. Generally, a feasibility study precedes

technical development and project implementation.

The software is required to determine whether it is feasible or not. it is

required to determine whether the software is technically feasible. economically

feasible, and operationally Feasible. Feasibility study is required to carry out before

requirement analysis.

ECONOMIC FEASIBILITY

Economic analysis is the most licqucntly used method for evaluating the

effectiveness of a new system. More commonly known as cost/benefit analysis, the

procedure is to determine the benefits and savings that are expected from a candidate

System and compare them with costs. If benctits outweigh costs, then the decision is

made to design and implement the system. An entrepreneur must accurately weigh the
cost versus benefits before taking an action. Time Based: Contrast to the manual

systemmanagementcan generateany report just by single click.

Cost Based: No special investment is needed to manage the tool. No specific

training is required for employeesto use the tool. Investmentrequiresonly once at the

time of installation. The software used in this project is freeware so the cost of

developing the tool is minimal. .

An economic feasibility test focuses on returns and costs of a proposed plan in

both the short and long-temi. An economic feasibility study (EFS) should consider

investment and operating costs, the time value of money, risk and uncertainty, quality

of available data, and the sensitivity of assumptions. economic feasibility study

should demonstrate the net benefit of the proposed course of action in the context of

direct and indirect benefits and costs to the organization and to the general public as a

whole. An EFS makes a business case. prepares analytical worksheets and other

necessary supporting documentation. An EFS should be required for both pilot and

longterm activities, plans and projects.

OPERATIONAL FEASIBILITY

Is a measure ol~ how well a proposed system solves the problems. and takes

advantages of the opportunities identified during scope detinition and how it satisfies

the requirements identified in the requirements analysis phase of system development.

Operational feasibility is mainly concerned with issues like whether the

System will be used if it is developed and implemented. Whether there will be

reSIstancefrom usersthat will affect the possible


application benefits?
The essential questions that help in testing the operational feasibility of a

systemare following.

Doesmanagementsupportthe project?

Are the users not happy with current business practices? Will it reduce the

time (operation) considerably? If yes, then they will welcome the change and the new

system.

Have the users been involved in the planning and development of the project?

Early involvement reduces the probability of resistance towards the new system.

SCHEDULE FEASIBILITY

Schedule feasibility is used to display total scheduled time vs. the activities

neededto completetheproject.Therearetwo maintypes0t~chartsare


performed

represent schedule feasibility. Gantt chart displays the activities against the time as a

horizontal bar only whereas PERT chart also displays the interaction among the

activities. PERT chart abbreviation is Program Evaluation and Review Technique.

'limc overlapping activities can be seen using the Gantt chart whereas which activities

can be done in parallel (Jeffrey A. lloller 1999).

A project will fail if it takes too long to he completedbefore it is useful.

Typically this meansestimatinghow long the systemwill take to deveIOp,and if it

can be completed in a given time period using some methods like payback period.

Schedulefeasibility is a measureof how reasonablethe project timetable is.


RESOURCE FEASIBILITY

This involves questions such as how much time is available to build the new

system,when it can be built, whetherit interfereswith normalbusinessoperations,

type and amount of resourcesrequired,dependencies,


etc. Contingency
andmitigation

plans should also be stated here.

TECHNICAL FEASIBILITY

The assessment is based on an outline design of system requirements in terms

of Input, Processes, Output. Fields, Programs, and Procedures.This can be quantified

in terms of volumes of data, trends,frequencyof updating.etc. in'ordcrto estimate

whether the new system will perform adequately or not this means that feasibility is

the study ol the based in outline.

In technical feasibility the following issuesare taken into consideration.

Whether the required technology is available or not

are available
Whetherthe requiredresources

testers& debuggers
Manpower- programmers,

S°nwarcandhardware
Once the technical feasibility is established, it is important to consider the

monetary factors also. Since it might happen that developing a particular system may

be technically possible but it may require huge investmentsand benefits may be less.

FUNCTIONAL RE 0 UIREMENTS

User Interfaces:

The interface used in GUI must be easy to understand.This interface servesas

a bridge between the user and the software. It also makes the user interactionwith the

system easy.

Screen formats / Organizations: The introductory screen will be the first to

be displayed which allows the user to log in using their id and password.

Windows formats / Organizations: When the user choosesa particular topic

then the information pertaining to that topic will be displayed in a new window.

which will allow multiple windows to be available on the screen. and the user can

switch between them.

Data Format: The dataenteredby theuserwill be alphamuneric.

End Message: When there are some exceptions, error messages will be

diSplayedpromptly by the userto re-enlcrthe detailswhenan eventhastakenplace

successfully.

Hardware interfaces: The system must basically support certain hardware

and these must be an interface between them.


RE0UlREMENTS
NONFUNCTIONAL

PERFORMANCE REQUIREMENTS

The software will run on a machine with a minimum of lGHz and 16B RAM.

It will startup within 3 secondsafter initialization.

SAFETY REQUIREMENTS

The data handled in this system is very vital. The system should always be

conlinncd to run properly and the data are saved to the database at consecutive

intervals. Power is a significant feature and the power supply should be always taken

care of. An Uninterruptcd Power Supply is always recommended.

SOFTWARE QUALITY A'ITRIBUTES:

o AVAILABILITY: This system will be available on the users machine. 24 hoursa

day Should the user Icavcl the program running whilst sitting at the machine. and

detect the threats.

0 OlIERABlLlI'Y: The system will allow lhc user to operate it with a mouse, unless

input is required from the keyboard.

0 LEARN ABILITY: The system will be delivered with a user manual which will

detail the use of the system to the user. 'lcam Respectwill also provide a tutorial

for the user if the user wishesat software delivery time.

0 ADAPTABILITY: This software is adaptablein any environment


Chapter 7

TESTING IN THE SOFTWARE DEVELOPMENT LIF E CYCLE

Thepurposeof testingis to reducerisk.

a cycleof testing
Byusing andresolutioh thelevelofrisk,
youcanidentify
make informed decisionsand ultimately reduceuncertaintyandeliminate

errors.

Testing is the only tool in a deve10pment'sarsenal which reducesdefects.

Planning, design and QA can reduce the number of defects which enter a

product, but they can't eliminate any that are already there.

And any kind of coding will introduce more errors since it involves changing

something from a known good state to an unknown. unproved state.

Ideally testingshopld take placethroughoutthedevelopmentlife cycle.More

often than not (as in the waterfall model) it is simply tacked onto the back end.

If the purpose of testing is to reduce risk. this means piling up risk throughout

the project to resolve at the end in itself. a risky tactic.

But as the lag between development and resolution increasesso does the

complexity of resolving the issues,on any reasonablylarge software

development project this lag is far too long. Better to spreaddifferent phases

of testing throughout. The life cycle, to catch errors as curly as possible.

SOFTWARE QUALITY:

The questionWhat is softwarequality? evokesmany differentanswers.


Qualityis a complexconceptit meansdifferentthingsto differentpeople,

The five views of quality in a comprehensivemanneras follows:

1. TranscendentalView: It envisagesquality as somethingthat can be recognized

but is difficult to define. The transcendentalview is not specificto softwarequality

alone but has been applied in other complex areas.

2. User View: It perceivesquality as fitnessfor purpose.Accordingto this view,

while evaluating the quality of a product,one mustask the key question:

Does the product satisfy user needs and expectations?

3. Manufacturing View: Here quality is understood as conformance to the

specification.The quality level of a productis determinedby the extentto which the

product meets its specifications.

4. Product View: In this case, quality is viewed as tied to the inherent characteristics

ofthe product. A products inherent characteristics, that is, internal qualities,

determine its external qualities.

5. Valuc-Based View: Quality. in this perspective. depends on the amount a customer

is willing to pay for it.

ROLE OF TESTING:

Testing plays an importantrole in achievingand assessing


the quality of

software Product. 0n the one hand, we improve the quality of the products as we

repeat a testlind defects[ix cycle during development. On the other hand, we

assesshow good our systemis when we perform system-lcveltestsbefore


.

releasing a product.
. The software testingis a verificationprocessfor softwarequality

andimprovement.
assessment Generally theactivities
speaking, forsoftware

. Quality assessmentcan be divided into two broad categories,namely,

staticanalysisand dynamic analysis.

0 Static Analysis: As the term static suggests,it is basedon the

examination of a number of documents,namely requirementsdocuments,

software models, design documents,and sourcecode.Traditionalstaticanalysis

includescode review, inspection.walk-through,algorithmanalysis,and proof of

correctness. It does not involve actual execution of the code under development.

Instead, it examines code and reasons over all possible behaviors that might arise

during run time. Compiler optimimtions are standardstaticanalysis.

° Dynamic Analysis: Dynamic analysisola solmarc system involves actual

program execution in order to expose possibleprogram failures. The

behavioral and performance properties of the program are also observed.

Programs are executed with both typical and carefully chosen input values.

ORen, the input set ola program can be impractically large.

'
However. for practical considerations. a futile subset ol the input set can be

SCIectcd. Therefore, in testing. we observesome representativeprogram

hcltaviors
andreacha conclusionaboutthequalityof thesystem.
o Careful selectionof a finite testsetis crucialto reachinga reliable

conclusion.By performingstaticanddynamicanalyses, wantto


practitioners

identify as many faultsas possibleso thatthosefaultsarefixedat anearly

stageof the softwaredevelopment.

0 Static analysis and dynamic analysis are complementary in nature, and for

andalternated.
bettereffectiveness,bothmustbeperformedrepeatedly

Practitioners and researchersneed to remove the boundariesbetween static

and dynamic analysis and create a hybrid analysis that combines the strengths

ofboth approaches.

VERIFICATION & VALIDATION

0 Verilication: Testers often make the mistake of not keeping their eye on the end

goal. They narrow their focus to the immediate phaseolsolmare development

and lose sight olthe bigger picture.

0 Verilication tasks are designed to ensurethat the product is


internally consistent.

They ensure that the product meets the specilication; the speciticationmeets the

requirements zmd so on. The majority oltcsting tasksare verilication - with the final

product being checked against some kind of referenceto ensurethe output is as

expected.

For test
example,
hlans written
arenomially from
the documents
requirements and
from the specification. This verilies that the sonware delivers the requirementsas laid

out in the technical and requirement speciiications. It does not however address the

correctness of those requirements.This kind ofactivily helpsus in evaluatinga


softwaresystemby determiningwhethertheproductofa givendevelopment
phase

satisfiesthe requirements established before the start of that phase.One may note

that a product can be an intermediate product, such as requirementspecification,

designspecification, code, user manual, or even the final product.Activities that

check the correctness of a development phaseare called verificationactivities.

Validation

Validation tasks are just as important as verification, but lesscommon.

0 Validation is the use of external sources of reference to ensure that the internal

designis valid, i.c. it meets users expectations.

0 By
using external references (such as the direct involvementof end-users)the test

team can validate design decisions and ensure the project is heading in the correct

direction.

°
Usability testing is a prime example ota useful validation technique.Verification

activities aim at confirming that one is building the productcorrectly,

0 Whereas validation activities aim at continuing that one is


building the correct

product. Verification activities review interim work products.suchas requirements

specification. design, codc and user manual. during a project life cycle to ensuretheir

quality.

' The
quality attributes sought by verilicution activities are consistency,

campletencss, and correctness at each major stage of system development. On the

other hand, validation is performed toward the end of systemdevelopmentto

detemfme if the entire system meets the customers needsand expectations.


The first type of testing that can be conductedin any developmentphaseis

unittesting.

. In this, discrete componentsof the final productare testedindependently


before

beingassembledinto larger units. Units are typically testedthroughthe useof test

hamesses which simulate the context into which the unit will be integrated.The test

harnessprovides a number of known inputsand measurestheoutputsof the unit

undertest. which are then comparedwith expectedvaluesto determineif any issues

exist.

0 In integration testing smaller units are integrated into larger units and larger units

into the overall system. This differs from unit testingin thatunitsare no longertested

independentlyhut in groups, the lbcusshifting l'mm the indi\ itluulunitsto the

interaction between them.

At this point "stubs" and "drivers" take over from test harnesses. .-\ stub is a

simulation 0le particular suh-unit which can he used to sinmlatc that unit in a larger

assembly. For example if units A. I! and ( constitute the major parts utunit I) then

the overall :Isscmhl y could he tested by assembling units :\ and I3 and a simulation of

C. if C were not complete. Similarly il'unit l) itsclrwas nutcumplctcit couldbe

represented by a driver or a simulation of the supcr-unit.


As successive areas of functionality are completed they can be evaluated and

integrated into the overall project. Without integration testing you are limited to

testing a completely assembled product or system which is inefficient and error

prone. Much

0 System testing representsthe overall test on an assembledsoftware product.

Systemstestingare particularlyimportantbecauseit is only at thisstagethatthe full

complexity of the product is prcscnl. The focus in systemstesting is typically to

ensure that the product respondscorrectly to all possible input conditions and

(importantly) the product handlesexceptions in a controlled and acceptablefashion.

System testing is often the most formal stageof testing and more structured.

0 Acceptance'lcsting Largescalesoftwareprojectsoftenhavea final phaseof

testingcalledAcceptance Testing".Acceptancetestingforms an importantand

distinctlyseparatephasefrom previoustestingclfons and its purposeis to ensure

of qualityprior to it being
that the productmeetsminimum dctincdstandards

This is wheresomeonehasto sign thecheques.


acceptedby the clientor customer.

to conductthetestingto verify thesoftware


Often the clientwill havehisend-users
has been implemented to their satisfaction (this is called User Acceptance Testing"

or UAT). Often UAT tests processesoutside of the software itself to make sure the

whole solution works as advertised.

0 While other forms of testing can be more free form, the acceptance test phase

should represent a planned series of tests and release procedures to ensure the output

from the production phase reaches the end-user in an Optimal state, as free of defects

as is humanly possible.

0 In theory Acceptance Testing should also be fast and relatively painless. Previous

phases of testing will have eliminated any issues and this should be a formality.

In immature software development, the Acceptance Test becomes a last trap for

issues,back-loadingthe projectwith risk. Acceptancetestingalsotypically ibcuseson

outside the software itself. A solution often has many elements outside of the software

itself.

These might include: manualsand documentation;processchanges;training material;

operational procedures;operational peribrmance measures(SLA's).

o T hcse are typically not tested in previous phases oltcsting which focus on

functional aspects of the software itself. But the correct delivery of these other

elements is important for the success of the solution as a whole. They are

typically not evaluated until the software is complete because they require a

fully functional piece of software, with its new workflows and new data

requirements, to evaluate.
TESTLEVELS
isperfOrmedatdifferentlevels thecomplete
involving orparts
system of
Tesling
thelife ofa sonareproduct.
itthroughom cycle A software
system through
goes
oftestingbefore
it isactually
deployed.
fourstages
areknown
fourstages
These asunit,integration, level
andacceptance
system,
Thefirstthreelevelsoftesting
testing. areperformed ofdifferent
byanumber
inthedevelopment
stakeholders where
organization, asacceptance is
testing
Thefour
bythecustomers. oftesting
stages been
have inthe
illustrated
performed
V model.
formofwhatiscalledtheclassical
In unit testing, programmers test individual program units, such as a procedures,

functions, methods, or classes, in isolation. After ensuring that individual units

work to a satisfactory extent, modules are assembled to construct larger

'
subsystemsby following integration testing techniques.

Integration testing is jointly performed by software developersand integrationtest

engineers. The objective of integration testing is to construct a reasonably stable

system that can withstand the rigor of system-level testing.

System-level testing includes a wide spectrum of testing, such as functionality

testing, security testing, robustness testing, load testing, stability testing, stress

testing, performance testing, and reliability testing. System testing is a critical

phase in a software development process because of the need to meet a tight

schedule todelivery
close todiscover
date, most andtoverifythat
ofthefaults,
fixes are working and have not resulted in new faults.
Chapter 8

RESULT AND DISCUSSION

8.1 Results

This cha'pter includes the result of our project with snapshots and a brief

discussion of each output. The complete flow of project through screen shots is

represented here.

" jJ-J;
-

. hat;
.

' .' gm!


.

-"" Tff. 3;;


"f m]; ,_a-" 5%A2 n},l" N...x
. w. .. .
'
.
" '

-115?
' "
"m rir. Mu ink"
inf.
nN"?
.~ gt:
\ . 42:39:}?~.\ mm: Jwr:-:.
1:
3??» W331:2:
a:Vzw
.

. V!
< \K

'g;;§£
.

>-3,142,: -'
lmamqm
3". th '
' ". if)?»
x ~vvyor'q'5p'5 1
a:livhzg";
W
.

ma
.1 - ,
\h *4 \

5!
.0
K v
i3\x
§§3
r

j.
91?:-
,- 39::
'a;.
n
.w
.; :3 Q. 3er}
3
,1;
.A
W:
.\
.-~.' é":{?J-w;r1:2 >
'n& m:
§;\ .M«xfaih y
3:3
4 C

,Wfilzsgém 1 rd

\
\

I
F3 .
LW W@[O I.4.." .VJ. ..
I 1..4. . .e..\...-.-.4_-.-.2.m=
Lemma

Fig.8.! Login Form

and
whichasksfor uscrname
This form is for useraulhcnlizuion purpose

password theDatabase
in orderto access The'08!"
WizardManager-
Independent
form is designedto maintainthesecurityandavoidtheaccessfrom anon)moususers
This is the main window of the project whichcontainfive buttons
namely
Connect, ConnectDSN, Close Connection, Help and Exit _ Clicking on

CreateDSN button. The ODBC Data source administrator dialog box appearsand

then click add. Then Select appropriate database driver.

Doing this step the DSN is created and we can use the DSN whenever

required. In this way we can create DSN in different databases.

u,qu ; Lung; 7. . . , V, :i;;u,,xu_5{5/WW% _, $15,,V";',::.4m3(

3 033:DanSam:Ad'rinimatar 3
. _ _ __.. .
|__i a_x:
; MS- '2ng <<....____.'.

Tmimvmma;
: LkaLmSuutes

gm Dim : 44- EE
£5433909m:D
- ~
z a r-v-

~~FM:
.'
[ Eaaaas
'
ace] Slew): AXE: [merm -
; '
] weal Mavi was man») $.33 . s'
1 Mb! .5".5:32 U
ODBCERWEF
l ,
I :5: _ 1 . 'A '
CreateNruCaraSame . 5353
l! _
.
55d .
. .
.
~ 4;
"I ,.. m f _ ;. f
wamiculvd'wwatuwwacaamug
f
3:
I M I, I
i! ha». .' 3
a.
I: lit die
61:96 2de F
aojrmuwreaic
:r ODK'M :etaream: rlomxon
wvsn
Davids XL;law I
or), LN?
m.
,h..kl, Pam
._ _ ,,
II 1 ydmMJHueimLecM'a-eu -34, E
. x
E i

3,
E
§
'3
' i
1
5
' 4'

i
=
I
i
x

" mam
I: _
(137" ; 4531' Elm
m-H

Fig 8.2 Creating the DSN

DSN
the whichwehave
created
inearlier with
step specific be
can
driver
Now
on
clickingConnect Then
Option. W1
window
the as
appear
todatabase
connected by
shown in fig 8.3. Connection will establishby providing sameDSN namewhichwe

have created before on clicking login button.

It will give the error if DSN is not createdearlieror enteredthe wrong DSN

name.

- D'MWI-33meyt *f-t . _ H; ;. y. . ,V._V , wt _

miiLJ .n-Aom

Fig.8.3 Connect to Databasethrough DSN


After establishing the connection with appropriate database new panel will get

open with seven buttons as shown in flg.8.4. In addition to this query browser (SQL

query) and query result browser will appear and also hierarchy tree will be shown on

left.
lagallows
'lhcquery theuser
Ioperform
appropriate such
opéralionsas
showing tables.inserting.uptlalinganddeletingrecordsby lIring querieslikc select.

inscrl.updalc.dclctcclc. Fig.5.4showstheoperationsby liring queriesmanuallylike

select, inscrl etc. in the SQL Query. On liring queries, the result is displayed in the

Panel.Hg.5.5showstheresultwhen thecumoris hit on 'l'abchislbutton.


On clicking on Createtable,the usercan createtable by just typing in field

name and providing constraintsand size. After that table name is provided and the

table gets created with the displayed query.


One can directly insert the recordsby clicking on forms. This allows easy

meansby whichonecanadd,edit anddelete.Also onecandirectlyjump onto first,

last previous and next record. 0116can searchby field name.


8.2 Benefits and Drawbacks

8.2.1 Benefits:

0 You are abstractedfrom the databaselayer.

0 You do not need to know much about other databases.

0 Your code is portable between the databasessupported by DIWM. You should

onlyneed
tochange
theconnection toswitch
parameters data'basc
types.
0 You gain fme grained control over the database. You control the detail oleach

SQL query or commands.

8.2.2 Drawbacks

0 There are some features ol'the underlying database that you cannot access.

0 You need a good knowledge ol'SQL for your target database.

0 You need more careful error handling to catch SQL errors. Debugging the

SQL is also more complex.

0 We have to create database using syntax of particular database then only we

can perform operations on it in lDWM.


Chapter 9

CONCLUSION

9.1 Objective

This enterprise manager should be easy to operate and should be such that but this

manager maintains level of security while using this manager we have needed to enter

driver name, DSN. It will be operated if only if database is installed in the system or

the connection establishment with the database should be done by setting the

appropriate path. Whenever enterprise manager wanted or trying to establish

connection with any database,there is need of pre installation of any databasewith _

the particular drivers in the system. DatabaseindependentEnterprisemanagershould

provide reliable interface for user.

9.2 Conclusion

Since their inception in the 19705, traditional onpremises database systems

have grown overly complex, dillicult to manage, and are struggling today to take full

advantage of multiple databases simultaneously. On the other hand. management-free,

automatically tuned and optimized, and highly scalable database services appear

destined to be the future of databases.

Database Independent Wizard Manager offers a sensible user interface and an

easy-to-leam programming language that allow us to use different types of databases

simultaneously. It includes comprehensive support for various databasetypes and lets


programmers quickly and easily build front ends for databaseapplications.The

program is now more than stableenoughfor production use.With thisprojectyoucan

use almost the same code to communicate with a MySQL or MS-Access or IBM DB2

Oracle etc.

9.4 Future Scope

The future scope of our project is to mount it on cloud. cloud computinghas

forever changed the landscape of the IT world because it providescntcrprise-grade

computing resources that are affordable and instantly available. Clouds provide

straightforward access to IT resources. You just accessas much resourceas you need,

whenyou needit, and neverhaveto dealwith thecomplexities all the


of managing

underlying mechanisms that provide the resources. Life is suddenly a lot simpler and

easier with cloud computing.


Chapter 10

BIBLIOGRAPHY

Database SystemConcept By Korth, Sudarshan,4'hEdition,McGraw-Hill

Publication,1997

Database System By Raghu Ramkrishnan,3'" Edition, McGrawHill

Publication,2010

Java DevelopersGuideBy Willam B. Broqden,Sybex,2012

ToJavaByHerbert
Reference
Complete Schill,Ol-Dec-2006
REFERENCES
x

htt P://s
earchmysql.com/search/srearch?q=javamomemor.html
2018
SeptO4
' '
htt p:
Jan14,2017
//w1k1.lunarpages.com/Setup_MySQL_DaIabases,
www.imdb.com/title/tt0032l38/, Jan 14,2017

l 10|/en/uladmin_enl
l/uliniI-ulcs-mi
IitichIIml.
Jan28,2012
51cx.sybase.com/
F ch 18,2016
www.cnterpriscdb.com/products-services...lpostgrcsql-overview,

www.sybase.com/producIs/databasemanagement. F eh 18.2016

http:.//www.codeprojcct.com/Articlcs/167714/Copy-Database-Wizard-M
Feb18.2016
SQL-ScI'ver-2008-zmd-Iatcr,

htt ://www.zlculcsl.co.uk
WWVVSL c.c0m

\x'ww.inckvmin515.com

www.lcstinginstilulc.c0m
\"l
)illILJLIg.
___._5l__51
5:5)m/('5)III5:IIl/|-'cullII'53/l)I
cncl.
//www.
L_Itlp: v/uuluhlm
mu5.515I/usus/lmg/uN/UmlgllIm
cs.
hu://www.
hu )://ww»\. c 5.5)m/s5Ill5I/In5l5.\.l
33.
lhcIid.ncl/lccl1/35Ill5s5
hll://www.
I/3 5:31
l._|I_lI