Sie sind auf Seite 1von 69

UNIVERSITY OF BRIDGEPORT

MASTERS PROJECT

CPSC-597A
CPSC-597B

FALL - 2007

Guide:
Prof. Gonhsin Liu

FINAL REPORT

Submitted by
Srikiran Reddy Sudireddy
(ID#0701246)

1
ABSTRACT

‘A GUI Oracle Interface in Java’ is developed under the domain of “JAVA”.


SQL plus is a tool provide by oracle for use specifically with its database
installations. It provides the user with full access to the database, Provided
that has relevant permissions and/or access rides for the task they which the
carryout. The problem with SQL plus, however, is that it is a Command line
interface. This is not so much a problem for the staff at the Organization, but
for some students, especially those with title or on computing experience, but
it is a difficult task to learn to use it.

The main objective of this project is to develop a GUI tool for the oracle
Installation. A GUI tool would be the best thing to implement as it is more user
can give, and most people who have used a computer have used a GUI in
some form or other, while most will not have used a command line interface.
Even if a Student has never used a computer before, they will be using a GUI
when using the computers at the organization, and so will have formed some
sort of mental model of how a GUI looks and works, and so will find it much
easier to adapt to a command line interface.
Currently the SQL plus tool can be accessed through one of two
Methods:
1. A terminal window on a UNIX/LINUX machine.
2. A telnet window on a PC within the organization.

The method of connecting is a command typed in by the user, who is


then prompted for a username and password. Once these are entered, the
user is able to the tables within their database, and create, edit, or delete data
or tables themselves, with in their home database. The permissions for the
students do not allow them access to other database or to any of the functions
used to administer the database it self.

2
Index

Contents page no:

Chapter 1
1.Introduction
1.1 About Project 6

Chapter 2
2. Project Analysis
2.1 Project Requirements
2.1.1 Functional Requirements 10
2.1.2 Non functional Requirements 11
2.1.3 Software 12
2.2 Configuration Architecture
2.2.1 Two Tier Architecture 28
2.3 SDLC Approach 31

Chapter 3
3. Project Design
3.1 Data Flow Diagrams 34
3.2 Process Flow Diagrams 46
3.3 Data Model 47
3.3.1 Data Dictionary 48
3.4 Application Design
3.4.1 Modules 50
3.4.2 User Interface
3.4.2.1 Screens 54

Chapter 4
4. Testing
4.1 Black Box Testing 76

Chapter 5
Conclusion 78

Chapter 6
Bibilography 80

3
INTRODUCTION

4
ABOUT PROJECT

Introduction:

A graphical user interface(GUI) presents a pictorial interface to a


program. A GUI gives a program a distinctive “look” and “feel” By
providing different applications with a consistent set of intuitive user interface
components. GUIs allows the user to spend less time trying to remember
which key tore sequences do what and spend more time using the program
in a productive manner. A GUI tool that is mainly used to identify the tables
that is the user is able to the tables within their database, and create, edit, or
delete data or tables themselves.

Purpose:
The purpose of this project is essentially to develop a tool that runs
within the domain, and can securely connect to the correct oracle database
depending on the user’s login and password.

Overview:
A GUI tool would be the best thing to implement as it is more user can
give, and most people who have used a computer have used a GUI in some
form or other ,while most will not have used a command line interface. Even if
a student has never used a computer before, they will be using a GUI when
using the computers at the organization, and so will have formed some sort of
mental model of how a GUI looks and works, and so will find it much easier to
adapt to a command line interface.

The method of connecting is a command typed in by the user, who is


then prompted for a username and password. Once these are entered, the
user is able to the tables within their database, and create, edit, or delete data
or tables themselves, with in their home database. The permissions for the
students do not allow them access to other database or to any of the functions
used to administer the database it self.

5
Objective:

The main objective of this project is to develop a GUI tool for the oracle
installation. A GUI tool would be the best thing to implement as it is more user
can give, and most people who have used a computer have used a GUI in
some form or other ,while most will not have used a command line interface.

Scope:

The scope this project is essentially to develop a tool that runs within
the domain, and can securely connect to the correct oracle database
depending on the user’s login and password.

Firstly, what is needed is a tool that has two main elements: An area
where the user can enter SQL code; and an area where the user can view the
result of the query they have entered. The user will also require a means of
connecting to the database depending on which language the GUI is
developed in. this connection will have to be secured and reliable, to ensure
that it does not connect to another database accidentally, and that all
commands sent via to tool are processed correctly and committed to the
database correctly.

The connection process will require a user name and Password form
the user, and will not allow a connection if the user cannot provide these, or
provides an incorrect user name and/ Password. The tool it self should be
develop in a language, which is portable. By this, we do not intend to carry it
with us every where we go , that it must be in a language, which can run on
more than one platform. This allows the organization and any other users
who implement the tool to run it without the worry of not being able to make
use of it if the platform on which they use it becomes unavailable it future.
Also, it means that it can be implemented on both the PC’s and the UNIX/
LINUX machines with in the organization.

6
The development of the tool also needs to consider the human-
computer interaction aspects that come with the development of any GUI. It’s
primary concern, and the one of the primary concerns of the project it self is to
make accessing the database more friendly user. This means developing a
tool which the user is comfortable user. A tool which the user can adapt to
with minimum training, and can learn to more quickly, using past experience
of other GUI’s or simply by trial and error.

Existed System:

SQL plus is a tool provide by oracle for use specifically with its
database installations it provides the user with full access to the database,
provided that the has the relevant permission and/or access rides for the task
they which the carryout. The problem with SQL plus, however, is that it is a
command line interface. This is not so much a problem for the staff at the
organization, but for some students, especially those with little or no
computing experience, it is a difficult task to learn to use it.

Proposed system:
The main objective of this projects is to develop GUI tool for the oracle
installation. A GUI tool would be the best thing to implement as it is more user
can give, and most people who have used a GUI in some form or other, while
most will not have used a command line interface. Even if a student has never
used a computer before , they will be using a GUI when using the computers
at the organization, and so will have formed some sort of mental model of how
a GUI looks and works, and so will find it much easier to adapt to command
line interface.
To understand the design principles of graphical user interfaces. To be
able to builds graphical user interfaces. It can execute the SQL queries
correctly and deliver the correct results. It is much easier to adapt to
command line interface. Students can easily access this GUI tool without any
computing experience.

7
PROJECT ANALYSIS

8
PROJECT REQUIREMENTS

Functional requirements:

 First user create the database using login and password


by the system and manager.
 In this database the user contain number of
Tables.
 These tables contain the number of records.
 These records contain number of fields.
 In which the user can easily create tables and modify or
add the fields.
 User can easily delete the tables using the
delete command
 User insert values or select the values using the insert or
select command.
 The user can modify the fields in the table like insert
values or delete the values or changes the values ,these
changes can be done by using the rollback, commit and
save point.

9
Non Functional Requirements:

Software Specification

Language : JDK 1.4

Database : ORACLE 9i

Operating System : Windows2000

Programming Languages : Java, Swings

Hardware Specification:

Processor : Intel P-III based system

Processor Speed : 250 MHz

RAM : 256MB

Hard Disk : 30GB

10
SOFTWARE:

JAVA

HISTORY OF JAVA:
Java language was developed by James Gosling and his team at sun
micro systems and released formally in 1995. Its former name is oak. Java
Development Kit 1.0 was released in 1996. To popularize java and is freely
available on Internet.

OVERVIEW OF JAVA:

Java is loosely based on C++ syntax, and is meant to be Object-


Oriented Structure of java is midway between an interpreted and a compiled
language. The Java compiler compiles Java programs into Byte Codes that
are secure and portable across different platforms. These byte codes are
essentially instructions encapsulated in single type, to what is known as a java
virtual machine (JVM), which resides in standard browser.
JVM verifies these byte codes when downloaded by the browser
for integrity. JVM’s available for almost all OS. JVM converts these byte codes
into machine specific instructions at runtime.

Java’s Magic: The Byte Code

The key that allows Java to solve both the security and the portability
problems just described is that the output of a Java compiler is not executable
code. Rather, it is Byte code. Byte code 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 Byte code. This may come as a bit of a surprise.

Translating a Java program into Byte code helps makes it much


easier to run a program in a wide variety of environments. The reason is
straightforward: only the JVM needs to be implemented for each platform.

11
Once the run-time package exists for a given system, any Java Program can
run on it. Remember, although the details of the JVM will differ from platform

to platform, all interpret the same Java Byte code

FEATURES OF JAVA:
• Java is object-oriented language and supports encapsulation,
inheritance, polymorphism and dynamic binding, but does not
support multiple inheritances. Every thing in java is an object
except some primitive data types.

• Java is portable architecture neutral that is java programs once


compiled can be executed on any machine that is enabled.
• JAVA is distributed in its approach and used for Internet
programming.
• Java is robust, secured, high performing and dynamic in nature.
• Java supports multithreading. There for different parts of the
program can be executed at the same time

JAVA AND INTERNET:


Java is strongly associated with Internet and known as Internet
programming language. Internet users can use java to create applet programs
and run them locally using java enabled browser search as hot java. Applets
can be downloaded from remote machine via Internet and run it on local
machine.
JAVA AND WORLD WIDE WEB:
World Wide Web is an open-ended information retrieval system
designed to be used in the distributed environment. This system contains web
pages that provide both information and controls. We can navigate to a new
web page in any direction. This is made possible worth HTML java was meant
to be used in distributed environment such as Internet. So java could be easily
incorporated into the web system and is capable of supporting animation
graphics, games and other special effect. The web has become more
dynamic and interactive with support of java. We can run a java program on
remote machine over Internet with the support of web.

12
JAVA ENVIRONMENT:

Java environment includes a large no. Of tools, which are part of the
system known as java development kit (JDK) and hundreds of classes,
methods, and interfaces grouped into packages forms part of java standard
library (JSL).

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 are then interpreted on each
platform by the runtime environment. Java also provides stringent compile
and runtime checking and automatic memory management in order to ensure
solid code.

JAVA VIRTUAL MACHINE:

Then we compile the code, java compiler creates machine code (byte
code) for a hypothetical machine called java virtual machine (JVM). The JVM
will execute the byte code and overcomes the issue of portability. The code is
written and compile for one machine and interpreted all other machines. This
machine is called java virtual machine.

13
SWINGS
Describe Swing classes such as

1. JComponent
2. JFrame
3. JPanel
4. JApplet
5. JRootPane.JScrollPane.JViewPort

 Describe Buttons, CheckBoxes and RadioButtons


 Describe Lists and ComboBoxes

Swing components:

 Provides lightweight visual components


 Contains replacement components for AWT visual components and
also complex components - trees and tables
 While designing a GUI, there is a main window on which visual
components are placed
 Swing components are in the javax.swing package
 All Swing components start with J.

Frames

 Frame is a top level container.


 Provides place for other Swing components
 JFrame components is used to create windows in Swing program
 Its constructors are:
 JFrame()
 JFrame(String Title)
 Components have to be added to the content pane and not directly
to the JFrame object
Example: frame.getContentPane().add(b);

14
Panel

 JPanel component is an intermeadiate container.


 Used to group small lightwieght components together
 JPanel objects have FlowLayout as their default layout
 JPanel has the following constructors:
 JPanel()
 JPanel(LayoutManager lm).

Content pane and Applets

content pane makes the swing applets different from regular applets in
the following ways.
 Components are added to the content pane of Swing applets, not
directly to the applet
 The layout manager is set on a Swing applet’s content pane, not
directly on the applet
 Default layout manager for Swing applet’s content pane is
BorderLayout whereas for regular applet’s, it is FlowLayout
 Painting code is not directly put in a JApplet object.

Basic GUI Components

 A form can be used for collecting information.


 While creating GUI’s, the text can be placed on the content pane
using labels.
 To create elements on a GUI:
 Create the element.
 Set its attributes (size, color, font)
 Position it.
 Add it to the screen.

15
Text Components

 JText Component is the root class of all swing text components.

JTextField

JTextArea
JTextComponent
JEditorPane

JTextPane

JPasswordField

JTextField:

 JTextField component allows us to enter/edit a single line of text.


 The constructors of this class are:
 JTextField()
 JTextField(Document doc, String text, int columns)
 JTextField(int columns)
 JTextField(String text)
 JTextField(String text, int columns).

Text Area :

 JTextArea components is used to accept several lines of text from the


user.
 Implements the scrollable interface to activate scrollbars
 JTextArea component can be created using:
 JTextArea()

16
 JTextArea(Document doc)
 JTextArea(Document doc, String text, int rows, int cols)
 JTextArea(int rows, cols)
 JTextArea(String text)
 JTextArea(String text, int rows, int cols)

Buttons

 Buttons trap user action.


 JButton class descends from javax.swing.AbstractButton class
 JButton object consists of a text label and/or image icon, empty area
around the text/icon and border
 A JButton can be created using:
 JButton()
 JButton(Icon icon)
 JButton(String text)
 JButton(String text, Icon icon)

CheckBox:

 CheckBox provides user with a set of options.


 JCheckBox class has the following constructors:
 JCheckBox()
 JCheckBox(Icon icon)
 JCheckBox(Icon icon, boolean selected)
 JCheckBox(String text)
 JCheckBox(String text, boolean selected)
 JCheckBox(String text, Icon icon)
JCheckBox(String text, Icon, boolean selected)


Radio button:

 By using the radiobutton any one option may be selected by the user .
 By using the button group to create a group.

17
 JRadioButton object can be created by using:
 JRadioButton()
 JRadioButton(Icon icon)
 JRadioButton(Icon, boolean selected)
 JRadioButton(String text)
 JRadioButton(String text, boolean selected)
 JRadioButton(String text, Icon icon)
 JRadioButton(String text, Icon icon, boolean selected).

Combo Box:

 ComboBox is a combination of texfield and drop down list.


 In Swing, combo box is represented by JComboBox class.
 public JComboBox() – this constructor creates a JComboBox with a
default data model.
 public JComboBox(ComboBoxModel asModel) – a combo box that
takes its items from an existing ComboBoxModel.
 public JComboBox(Object [] items) – a combo box that contains the
elements of the specified array.

Menus:
 Menus show a list of items that indicate various tasks.
 Select or click an option and another list or sub-menu opens up.
 A Swing menu consists of a menubar, menuitems and menus.
 Menubar is the root of all menus and menuitems.

18
Menu Hierarchy
Object

Componen
Container
JComponen

JAbstractButto JSeperato
JMenuBarJPopupMe
JMenuIte

JMenu JCheckBoxMenuIte JRadioButtonMenuIte

JMenuBar:
 JMenuBar is a component that can be added to a container through a
JFrame.
 Consists of a number of JMenus with each JMenu represented as a
string within the JMenuBar
 JMenuBar requires:
 ‘ SingleSelectionModel’ –
 keeps track of the menu currently selected
 ‘Look and feel class’ –
 Responsible for drawing the menu bar and responding to
events that occur in it.

JMenu:

 JMenu is seen as a text string under JMenuBar while


it acts as a popup menu when the user clicks on it
 JMenu has two additional classes:

19
 JPopupMenu
 Used to display the JMenu’s menu items
 Look and feel.
 Responsible for drawing the menu in the menubar and
for responding to all events that occur in it.

JCheckBoxMenuItem:

 Contains the checkboxes as it items.


 Checkboxes are created using JCheckBox class
 May have a text string and/or an icon
When a JCheckBoxMenuItem is clicked and released, the state of a
menu item changes to selected or deselected.

JRadioButtonMenuItem:

 Select to checkboxes except that only one radiobutton can be


selected at any point of time.
 May have a text string and/or an icon
 Clicking a selected radio button does not change its state
 Clicking an unselected radio button deselects the earlier selected
one.

Characteristics common to Swing Components:

 Content - decides on the state of the component


 Visual appearance - determines what the component should look like
 Behavior - decides how the component should respond to events.

OVERVIEW OF JDBC:

• JDBC stands for "Java DataBase Connectivity".

20
• It is an API (Application Programming Interface) which consists of a set
of Java classes, interfaces and exceptions
• JDBC is a very popular data access standard.
• consists of a set of classes and interfaces written in the Java
programming language.
• provides a standard API for tool/database developers and makes it
possible to write database applications using a pure Java API.
• The standard defined by Sun Microsystems, allowing individual
providers to implement and extend the standard with their own JDBC
drivers.
• JDBC:
• establishes a connection with a database
• sends SQL statements
• processes the results.
• RDBMS (Relational Database Management Systems) or third-party
vendors develop drivers which adhere to the JDBC specification. Other
developers use these drivers to develop applications which access
those databases
• SUN prepares and maintains the JDBC specification. Since JDBC is
just a specification (suggestions for writing and using JDBC drivers),
third-party vendors develop JDBC drivers to this specification. JDBC
developers then use these drivers to access data sources.

♦ The use of JDBC is there only to help you (a Java


developer) develop data access applications without having to learn
and use proprietary APIs provided by different RDBMS vendors. You
just have to learn JDBC and then you can be sure that you'll be able to
develop data access applications which can access different RDBMS
using different JDBC drivers. “Perhaps the most common use of these
Java applications will be within a company or on an "Intranet," so this
might be called the Intranet scenario. For example, a company might
implement all of its corporate applications in Java using GUI building
tools that generate Java code for forms based on corporate data

21
schemas. These applications would access corporate database
servers on a local or wide area network. However, Java applications
could also access databases through the Internet.” The JDBC Guide

JDBC API:

• The JDBC API supports both two-tier and three-tier models for
database access.
• Two-tier model -- a Java applet or application interacts directly with
the database.
• Three-tier model -- introduces a middle-level server for execution of
business logic:
• the middle tier to maintain control over data access.
• the user can employ an easy-to-use higher-level API which is
translatedby the middle tier into the appropriate low-level calls.

The basic classes of jdbc API:

Driver Manager

registers

Driver Creates Result set


Statement
Provides Provides
Connection
Resultset metadata
ma

♦ The JDBC API is expressed as a series of abstract Java interfaces that


allow an application programmer to open connections to particular
databases, execute SQL statements, and process the results. The
most important interfaces are:

22
♦ java.sql.DriverManager which handles loading of drivers and provides
support for creating new database connections
♦ java.sql.Connection which represents a connection to a particular
database
♦ java.sql.Statement which acts as a container for executing a SQL
statement on a given connection .
♦ java.sql.ResultSet which controls access to the row results of a given
Statement

JDBC API interfaces:


• Callable statement.
• Connection
• DatabaseMetaData
• Driver
• PreparedStatement
• ResultSet
• ResultSetMetaData
• Statement

• Statement
createStatement()
returns a new Statement object
PreparedStatement
prepareStatement(String)
returns a new PreparedStatement object
• It is the subclass of the statement class
• It compiles the SQL statement before execution and can also take
parameters.
Callable Statement
• This class extends the prepare statement class and is used for
executing database stored procedures from a java Program.
• These Statements are used to send SQL commands to the database
• These are created via the connection object.

23
JDBC Architecture:
The JDBC architecture is Divided in to 2 Parts
• JDBC API (java.sql).
• JDBC Driver Types .

Java Application

JDBC driver

Oracle Sybase My Sql

The JDBC Steps


1. Importing Packages
2. Registering the JDBC Drivers
3. Opening a Connection to a Database
4. Creating a Statement Object
5. Executing a Query and Returning a Result Set Object
6. Processing the Result Set
7. Closing the Result Set and Statement Objects
8. Closing the Connection.

Things to Do in your Java Program:


♦ Load the Drivers
♦ Establish the Connection
♦ Create JDBC Statement
♦ Execute the SQL Statement
♦ Retrieve Values from the Result Set

24
Three types of drivers:
• JDBC Type 1 Driver (JDBC-ODBC Bridge plus ODBC Driver)
• JDBC Type 2 Driver (OCI Driver)
• JDBC Type 3 Driver (THIN driver)

Making a connection:
• The second step in establishing a connection is to have the appropriate
driver connect to the DBMS.
• The following line of code illustrates the general idea:
– String url = "jdbc:odbc:Fred";
– Connection con = DriverManager.getConnection(url, "myLogin",
"myPassword");

Create a JDBC statements:

♦ A Statement object is what sends your SQL statement to the DBMS.


You simply create a Statement object and then execute it, supplying
the appropriate execute method with the SQL statement you want to
send. For a SELECT statement, the method to use is executeQuery .
For statements that create or modify tables, the method to use is
executeUpdate .
♦ It takes an instance of an active connection to create a Statement
object. In the following example, we use our Connection object con to
create the Statement object stmt :
♦ Statement stmt = con.createStatement();

Execute the SQL statements:

♦ At this point stmt exists, but it does not have an SQL statement to pass
on to the DBMS. We need to supply that to the method we use to
execute stmt . For example, in the following code fragment, we supply
executeUpdate with the SQL statement from the example above:

25
♦ stmt.executeUpdate("CREATE TABLE COFFEES " + "(COF_NAME
VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " + "SALES
INTEGER, TOTAL INTEGER)");

SQL (structured query language)

Oracle's SQL:
An Overview Structured Query Language (SQL) was introduced by
IBM as the language to interface with its prototype relational database. The
first commercially available SQL relational database management system was
management system, System R introducedin1979byOracle Corporation.
Today, SQL has become an industry standard , and Oracle Corporation
clearly leads the world in relational database Management system technology

Because SQL is a non-procedural language, sets of records can be


manipulated instead of one record at a time. The syntax is free-flowing,
enabling you to concentrate on the data presentation. Oracle has two
optimizers (cost- and rule-based) that will parse the syntax and format it into
an efficient statement before the database engine receives it for processing.
The database administrator (DBA) determines which optimizer is in effect for
each database instance.
• SQL is an industry standard language for updating, and
getting information from, a database
•The basic and most common SQL statements are: SELECT,
INSERT, UPDATE, DELETE
•Transaction management is implemented in SQL using
COMMIT and ROLLBACK

Configuration Architecture

In regarding with our project we are using the two-tier architecture

Two-tier Architecture:-

26
It also referred to as client-server architecture consists of a client
computer and a server computer, which interact through a well-defined
protocol. What part of the functionality the client implements, and what part is
left to the server, can vary. In the traditional client-server architecture, the
client implements just the graphical user interface, and the server implements
both the business logic and the data management; such clients are often
called thin clients and this architecture is illustrated in the figure.

APPLICATION CLIENT
LOGIC N
E
T
W ....
O
DBMS R
K
CLIENT

TWO-TIER ARCHITECTURE: THIN CLIENTS

Other divisions are possible, such as more powerful clients that


implement both user interface and business logic, or clients that implement
user interface and part of business logic. With the remaining part being
implemented at the server level: such clients are often called thick clients, and
the architecture is illustrated in figure.

27
CLIENT

APPLICA
TION
N LOGIC
E
T
DBMS W
O ….
R
K CLIENT

APLLICA
TION
LOGIC

TWO-TIER ARCHITECTURE: THICK CLIENTS

Compared to the single-tier architectures physically separate the


user interface from the data management layer. To implement two-tier
architectures, we can no longer have dumb terminals on the client side: we
require computers that run sophisticated presentation code.

Over the last ten years, the large number of client server development
tools such Microsoft visual basic and Sybase power builder have been
developed. These tools permit rapid development of client-server software,
contributing to the success of the client-server model, especially the thin-client
version.

The thick-client model has several disadvantages when


compared to the thin-client model. First, there is no central place to update
maintain the business logic, since the application code runs at many client
sites. Second, a large amount of trust is required between the server and the
clients. Third, it does not scale with the number of clients; it typically cannot
handle more than a few hundred clients. The application logic at the client
issues SQL queries to the server and the server returns the query result to the
client, where further processing takes place. Large query result might be

28
transferred between client and server. Fourth, thick-client systems do not
scale as the application accesses more and more database systems.

SDLC Approach
SDLC Approach (Waterfall Model):-

Structured analysis uses a technique called the system development


life cycle (SDLC) to plan and manage the systems development process

Although it is primary identified with structured analysis, sdlc describes


activities and functions that system developers typically perform, regardless of
how those activities and functions fit into particular methodology.

The SDLC includes following steps:

• Systems planning
• Systems analysis
• Systems design
• Systems implementation
• Systems operation and support

Systems Planning

System planning usually begins with a formal request to the IT


department, called system Request that describes problems or desired
changes in an information system or a business process.

Systems Analysis

The first step is requirements modeling where you define and describe
business process .During the next tasks, data modeling, process modeling
and object modeling to develop a logical model of business process the
system must support.

29
Systems Design

The purpose of system design is to create a blue print for the new
system that will satisfy all documented requirements .Whether a system is
being developed in house or purchased as a package.

Systems Implementation

During systems implementation, the new system is constructed.


Whether the developers used structured analysis or O-O methods, the
procedure is same –programs are written, tested and documented and the
system is installed.
Systems Operation and Support

During systems operation and support, the IT staff maintains and


enhances the system. Maintenance changes correct errors and adapt to
changes in the environment, such as new tax rates.

30
PROJECT DESIGN

31
DATA FLOW DIAGRAMS

CONTEXT LEVEL:

database

A GUI
user Oracle
tool

LEVEL 1:

Valid Data
user SQL base
Login Executio

Ne Login
w
user process

Registration

LEVEL 2:

1.Create
databas Login
Database

SQL 2.DDL
Execution

3.DML

4.TCL

32
LEVEL 2.1.1:

User
Detail 2.1.1.2.
2.1.1.1.Get the Execute the
s
Username and command
password

Resul
t

login
Data
Base

LEVEL 2.1.2:

New user
2.1.2.3
2.1.2.1 2.1.2.2 Get the
Get user Register the Privilege
name user

Sql grant
statements privilege

2.1.2.4
login Execute the
Data Base command

33
LEVEL 2.2:

2.2.1.Create
table
Data
base
2.DDL 2.2.2.Alter
table

2.2.3.Truncate
table

2.2.4.Drop
table

LEVEL 2.2.1:
Create table:
Scheme
name
2.2.1.1.Get 2.2.1.2.Get
the the
Scheme name Object name

Sql create Column Object


statements details name
Data
base 2.2.1.4.Execute the
create command 2.2.1.3.Get
the
Column
result details

34
LEVEL 2.2.2:
Alter Table

Scheme
name
2.2.2.1.Get the 2.2.2.2.Get the
Scheme name Object name

Login Column
Sql alter details
Data base
statements
2.2.2.3.Get
2.2.2.4.Execute the
the alter command Column

LEVEL
2.2.3:
Truncate table

Scheme
name
2.2.3.1.Get the 2.2.3.2.Get the
Scheme name Object name

Object
name
Sql truncate
statements
Login
Data base
2.2.3.4.Execute the 2.2.3.3.Get the
truncate command Column details

result Column
details

35
LEVEL 2.2.4:

Drop
Table

Scheme
name
2.2.4.1.Get 2.2.4.2.Get
the the
Scheme name Object name

Objec
t
login
name
database
Sql drop
statements
2.2.4.3.Execute
the
drop command
result

LEVEL 2.3

DML STMTS
2.3.1.Select
table
login
databas
2.3.2.Insert e
table
3.DML
2.3.3.Update
table

2.3.4.Delete
table

36
LEVEL 2.3.1:
Select table

Scheme Object
name name
2.3.1.1.Get the 2.3.1.2.Get the 3.3.1.3.Get the
Scheme name Object name Column details

Sql select
login
statements
database
2.3.1.5.Execute
the select 2.3.1.4.Get the
commands conditions
result
conditions

LEVEL 2.4

TCL STMTS 2.4.1.Commi


t

User
database
2.4.2.Rollbac
4.TCL k

2.4.3.Define
Save
Point

2.4.4.Rollback
To save point

37
PROCESS FLOW DIAGRAMS

38
DATA MODEL

Introduction

A data model is an abstract model that describes how data is


represented and used.

The term data model has two generally accepted meanings:


1. A data model theory i.e., a formal description of how data may be
structured and used.
2. A data model instance i.e., applying a data model theory to create a
practical data model instance for some particular applications.

A data model theory has three main components:

 The structural part: a collection of data structures which are


used to create databases representing the entities or objects
modeled by the database.
 The integrity part: a collection of rules governing the constraints
placed on these data structures to ensure structural integrity.
 The manipulation part: a collection of operators which can be
applied to the data structures to update and query the data
contained in the database.

For example, in the relation model, the structural part is based


on a modified concept of the mathematical relation; the integrity part is
expressed in first order logic and the manipulation part is expressed using the
relation algebra, tuple calculus and domain calculus.

Data modeling is the process of creating a data model instance


by applying a data model theory. This is typically done to solve some
business enterprise requirement.

39
Business requirements are normally captured by a semantic
logical data model. This is transformed into a physical data model instance
from which is generated a physical database.

Data Dictionary:-

A data dictionary is a set of metadata that contains definitions


and representations of data elements. Within the context of a DBMS, a data
dictionary is a read-only set of tables and views. Amongst other things, a data
dictionary holds the following information:

 Precise definition of data elements


 Usernames, roles and privileges
 Schema objects
 Integrity constraints
 Stored procedures and triggers
 General database structure
 Space allocations

One benefit of a well-prepared data dictionary is a consistency


between data items across different tables. For example, several tables may
hold telephone numbers; using a data dictionary the format of this telephone
number field will be consistent.

When an organization builds an enterprise-wide data dictionary,


it may include both semantics and representational definitions for data
elements. The semantic components focus on creating precise meaning of
data elements. Representation definitions include how data elements are
stored in a computer structure such as an integer, string or date format. Data
dictionaries are one step along a path way of creating precise semantic
definitions for an organization.

40
Initially, data dictionaries are some times simply a collection of
data base columns and the definitions of what is the meaning and type of the
columns contain. Data dictionaries are more precise than glossaries (terms
and definitions) because they frequently have one or more representations of
how data is structured. Data dictionaries are usually separate from data
models since data models usually include complex relationships between data
elements.

Data dictionaries can evolve into full ontology (computer


science) when discrete logic has been added to data element definitions.

LOGIN:-

COLUMN NAME DATA TYPE CONSTRAINTS

username Varchar2 Primary key

Password Varchar2

41
APPLICATION DESIGN
Modules

 Create database.
 Data Definition Language(DDL).
 Data Manipulation Language(DML).
 Transaction Control Language(TCL).

Create Database:

In which user creates its own database .If it is a valid user can enter
into th home page, but if a new user must use the registration button in login
page to create its own database. By this we are providing security in which
each user has its own database and others cannot view it.

Data Definition Language:

The language is used to define the data in the database is called data
definition language(DDL). In simple words DDL is used to create the
database, alter the database and delete the database. The result of
compilation of DDLstatements is a set of tables that is stored in a special file
called data dictionary.
The DDL is used by the conceptual schema to store or retrieve the
records to or from the database respectively , where these records describes
entities, attributes and relationships. The DDL is also known as data storage
and definition language used by the internal schema which describes how the
data is actually store.

The result of compilation of the statements of this language of this


specifies the impementation details of the database schemas, details are
usually hidden from the users. DDL commands are create,alter,truncate,drop.

42
DDL statements are used to define the structure of the data and include
statements like :

• CREATE :
It is used to create new tables.

• ALTER :
It is used to alter the structure of the data.

• DROP :
It is used to delete a table.

• TRUNCATE :
It is used to delete all the records from table

Data Manipulation Language:

The language is used to manipulate the data in the database is called


data manipulation language(DML). The DML is used to retrieve the data from
the database , insertion of new data into the database and deletion or
modification of existing data.

The operation of retrieving the data from the database using DML is
called as query. A query is a statement in the DML that requests the retrieval
of the data from database. The portion of DML used to pose query is known
as query language.

The query language contains commands to select and retrieve the data
from the database. Commands are also provided to insert, delete, select and
update the records.

43
• INSERT :

This is used insert the data into the Database table.


Note : Number and sequence of data values must match that of
columns in the table.

• UPDATE :

• It is used to update the records in the Table.

• DELETE :

It is used to delete the all the rows from the table as well as
specified rows from the table.

• SELECT:

It is used to display the required information from the table.

• Select : used to select the specified rows.


• From : specifies the table from which rows are to be selected.
• Where : specifies the condition to restrict the selection of rows.
• Group by : this clause groups rows in 2 ways :
 It groups rows with similar values in the specified grouping columns.
 It suppresses rows that are duplicate with respect to all columns,
counting each set of duplicate rows as a group.

Note: except group by field, all the other selected values should be
function of some column

44
Transaction Control Language:

TCL commands are used to control the (transactions) changes made


by data Manipulation Language commands. These statements include :

• COMMIT :

It is used to end current transaction and make permanent all


changes performed in the transaction. i.e., it is used to store the data
permanently.

• ROLLBACK :

Discards all changes made by the current transaction in the


database. An abnormal termination also causes the transaction to
ROLLBACK

• SAVE POINT :

To get back the data up to certain point.

45
USER INTERFACES
Screens:

If the user enters username and password then the user must click the submit
button and enters the home page but if a new user must click the registration
button and user goes to the create database page.In which user can create its
own database.

Welcome to home page

If the user enter correct username and password it enter into home page in
this he can click any one of the module .

46
Creation of a Database:

If a new user clicks registration button in the loginpage it enter into this page
in which user can create its own database, in which user gives username and
password to create new database.

47
Take Grant Permissions:

If the new user clicks submit button in create database and it enter into this
page,in which user get the grant permissions.

48
If new user get grant permissions it again enter login page to test whether
database created or not, if created it enter into home page,if not user must
again click registration button and goes to the create database page.

Welcome to Home page:

If the user is valid it enter into the home page and here user can click any of
the modules, firstly the user clicks the DDLStatements to create, alter,truncate
and to drop the table.

49
Welcome to DDLStatements:

when the user clicks the DDLStatement button in home page it enter into this
page in which user can choose any of the sub modules like create , alter ,
truncate and drop.

50
Welcome to Create table page:

In which user create the table by giving the table name , database name and
fields name, if user click the save button the table is saved in database

51
Welcome to alter table page:

If user selects alter command in the DDLStatements it enter into this page in
which user can add the fields by using save button and can modify the fields
using modify button.

52
Truncate table page:

In this user truncate the table ,if any fields to be removed this
command is used by giving the table name, database name and
fieldname.

53
Drop Table:

In this user can delete the whole table by using drop command , in
this we give the table name and database name in textfields and
click the delete button.

54
Welcome to DMLStatements:

If the user clicks the DMLStatements in home page the user enter
into this page in which can insert delete select and update the
values of the fields in the table

55
Insert table:

In this user insert the values to the table which is created by user in
DDL page

56
Delete Table:

In which user delete the fields in the table

57
Update Table:

In this page if user want to change any values in the table it can be
used.

58
Select Table:

In this user can select the values in the table by using this
command

59
Welcome to TCL Statements:

If the user wants to control the transactions in the table by using


commit, rollback and savepoint.

60
Commit :

If user wants to commit any commands in DML it can be used

61
Rollback:

If the user does not want to change any saved points then the user
can use this command

62
Save point:

If user wants to change some saved and unsaved points savepoint


can be used.

63
TESTING

64
TESTING

Black Box Testing:

By the use of this technique the missing functions for identified and
placed in their positions.
The errors in interfaces were identified and corrected.
This technique was also used to identify the initialization and
termination error and correct them.

Test case:

Test case #1: login screen testing


Test Objective : To check whether the login page is functioning
properly or not.
Test Description: when the user enters the login page and ask to fill
the entries of username and password only the entered values match
with the available values in the database , user is allowed to enter the
home page.
Requirements verified: yes.
Test Environment: editplus, oracle9i.
Test setup/pre-conditions: validate for the length of the names and
connection should be established.
Actions Expected Results
User selects the submit button on the login page then the home page is
displayed
Problems/Issues:None.
Note: successfully tested and executed.

65
CONCLUSION

66
CONCLUSION

The main objective of this projects is to develop GUI tool for the oracle
installation. A GUI tool would be the best thing to implement as it is more user
can give, and most people who have used a GUI in some form or other, while
most will not have used a command line interface. Even if a student has never
used a computer before , they will be using a GUI when using the computers
at the organization, and so will have formed some sort of mental model of how
a GUI looks and works, and so will find it much easier to adapt to command
line interface.

Once developed the tool will have to be tested thoroughly for any bugs.
A through test of the tool should cover aspects as whether or not it connects
to the correct oracle database , whether or not it can execute SQL queries
correctly and deliver the correct results, and whether or not it can execute
database updates and connect them. It reduces the time complexity.
It easily for every user.

To understand the design principles of graphical user interfaces. To be


able to builds graphical user interfaces. It can execute the SQL queries
correctly and deliver the correct results. It is much easier to adapt to
command line interface. Students can easily access this GUI tool without any
computing experience.

67
BIBILOGRAPHY

68
BIBILOGRAPHY

WEB SITES:

• www.java2s.com
• www.sun.java.com
• www.java.sun.com/doc/languageenvironment
• www.bpbpub.com

Text books referred:

• The Complete Reference by Herbert Schildt.


• Systems Analysis and Design by Shelly/Cashman/Rosenbaltt.
• Software Engineering by S.Rogers Pressman.
• The programming language of oracle by Ivan Bayross.

69

Das könnte Ihnen auch gefallen