java

Document Sample
java Powered By Docstoc
					                        INDEX


S. No.               SBJECT                   PAGENo.
  1                      PREFACE                  4
  2             OBJECTIVE OF TRAINING             5
  3      INTRODUCTION &OBJECTIVE OF PROJECT      6-7
  4                    ABOUT JAVA               8-10
  5                   JAVA SWINGS               11-13
  6                        JDBC                 14-15
  7               JDBC ARCHITECTURE             16-18
  8             REQUIREMENT ANALYSIS            19-21
  9                FEASIBILITY STUDY            22-23
  10                DESIGN ANALYSIS              24
  11              THE java.sql PACKAGE           25
  12       CRAETING DATA SOURCE NAME(DSN)       26-30
  13       JAVA CLASSES USED IN THE PROJECT     31-40
  14                    BACK END                 41
  15             QUALITY ASSURANCE              42-45
  16                IMPLEMENTATION               46
  17      UNIQUE FEATURES OF THE COMPONENT      47-48
  18           SECURITY OF THE SYSTEM            49
  19                  CONCLUSION                 50
  20                   REFRENCES                 51




                          -1-
                               PREFACE

BEACON, one of the leading training houses in Rajasthan, has interest in
providing quality education and prepares IT professionals who can meet with
the international standards.

Even before Beacon was formally established its staff members have been
involved in preparing students for Sun Certification, Microsoft
Certification, Oracle Certification. Success rate of students have been 100%
so far. Some of its students have done exceptionally well and secured 100% in
Microsoft & Oracle Certifications. Beacon is the pioneer in Rajasthan as far as
Java Technologies are concerned.

Beacon has produced hundreds of Sun Certified Java Professionals so far. It is
the only institute that has been involved in preparing students for online
exams. Students of Beacon are working in the leading IT companies all over
the world and some of them have got certificate of excellence wherever they
are working.

The achievement of Beacon is consolidated by the fact that the students have
been coming for various courses from various parts of world including U.S.A,
CANADA etc.

At Beacon the aim is to prepare professionals who have in-depth knowledge
of programming languages. Students at Beacon are taught what happens in
language along with why it happens, so that students are able to develop
logical approach.

At Beacon, all the staff members are certified professionals (Sun Certified
Java Programmer, Microsoft Certified Solution Developer and Oracle
Certified Associates). So they know how to guide students for online
certifications and getting skills honed. Many of the students, who are working
in leading MNC‟s admit that they have learnt how to work hard and learn a
programming language at Beacon. Students are so well trained and well
settled that their success speaks about Beacon.




                                     -2-
                  OBJECTIVE OF TRAINING


In today‟s world competition is increasing more day by day. Today, in the rat
race if we want to be a winner then we should have some extra achievements
or extra knowledge, so that we can succeed them. This Summer Training was
the little achievement for me. For some it could be a burden but for me it was
a good source of knowledge. Because of only this span of summer training I
was able to pursue the course in Core Java at Beacon.


The main purpose to pursue course in CORE JAVA was to gain knowledge in
Java Technologies and to achieve good command over the language which
would help me to attain good programming skills that would help me to keep
myself updated and ahead in this quick changing world of technological
advancements.


In the end not to forget to thanks our college administration & Computer
Department for providing us a great opportunity to gain and enhance my
knowledge in Java (Core) that would help me to accomplish my future
dreams.




                                     -3-
      INTRODUCTION AND OBJECTIVE OF THE
                                PROJECT

Introduction

“Student Profile Maintenance Module For Placement & HR” contains profile
of students. The project created by using core java. The main components
used are :


 Core Java as language
 JDBC (Java Database Connectivity)
 Java Swings
 Microsoft Access for creating tables


The project will ask user name, user password to login for both students and
administrator. Student has facility to maintain and update his profile and can
also change his password. He/She can‟t assess any other student‟s profile.
Administrator has right to create and delete profile of student. He can assesses
profile of any student and update it as well as change his password.
Administrator can also change his own login password and username.




                                      -4-
Objective

The main objective behind the development of this project is to create
software with the following features:
 Highly user-friendly
 Enterprise independent
 Cross-platform
 Easy-to-use
 Tested system to track unnoticed error
 Data entry restricted to valid domains to avoid errors




                                        -5-
                                    JAVA

The entire component has been developed using Java technology. Java has
been chosen as the platform because of its feature rich nature. The Java
Platform provides robust end-to-end solutions for networked applications as
well as a trusted standard for embedded applications. So Java was a natural
choice for development process.


Characteristics of Java


Object Oriented:
            Java is object oriented to the truest sense of the word. Everything
in Java is represented as objects. Variables and methods both are encapsulated
in objects. Java is the purest object-oriented language.


Robust:
 Java is a very robust language owing to the following features.
 Excellent exception handling facilities.
 Memory management relief for the user. User does not have to worry about
   allocation and deallocation of memory.
 Strict compile-time and runtime checks for data types.




                                       -6-
Portable and Architecture-neutral (Platform Independent):
Java is portable and platform independent so much that they satisfy “write
once; run anywhere, anytime, forever”. This feature is implemented in the
following ways:


 Compiler generates machine independent byte-code instructions which can
     be run on any machine supporting Java Virtual Machine.
 Size of primitive data type is machine independent.


Multithreaded:
 Programs can do many things simultaneously using different threads.
 Provides a solution for multiprocess synchronization.
 Allows the creation of networked and interactive programs.


Distributed:
 Open access        to remote objects by the use of RMI(Remote Method
     Invocation).
 Brings a level of abstraction to client/server programming.


Secure:
       Security is achieved by confining a java program to the java execution
        environment and not allowing access to other parts of the user
        computer.
       Absence of pointers provide memory related security as encroachment
        of memory        is avoided Proper measures for prevention of viral
        infection and malicious intent.


                                          -7-
Dynamic and Extensible:
 Facilitates linking in of new classes, objects and methods.
 Supports native methods (methods written in other languages like C ,C++).
 Programs carry with them a substantial amount of runtime type information
   that is used to verify and resolve accesses to objects at run-time.


High Performance:
        Just-In-Time (JIT) compilers are used to convert byte-code into native
machine code resulting in very high performance. These JIT compilers can be
used on a real time, piece by piece demand basis to perform on-the-fly
compilation of byte-code into native-code.


Compilation and Interpretation

Java programs are implemented as a two-stage system.
Compilation: Source code to byte-code and not machine instructions.
Interpretation: Byte-code to machine code (for any system that supports using
JVM)
Thus cross-platform programs can be written.




                                       -8-
                             JAVA SWINGS

"Swing" refers to the new library of GUI controls (buttons, sliders,
checkboxes, etc.) that replaces the somewhat weak and inflexible AWT
controls.


The Swing classes eliminate Java's biggest weakness: its relatively primitive
user interface toolkit. Java Swing helps you to take full advantage of the
Swing classes, providing detailed descriptions of every class and interface in
the key Swing packages. It shows you how to use all of the new components,
allowing you to build state-of-the-art user interfaces and giving you the
context you need to understand what you're doing. It's more than
documentation; Java Swing helps you develop code quickly and effectively.

1. Main New Features

   Lightweight. Not built on native window-system windows.
   Much bigger set of built-in controls.: Trees, image buttons, tabbed panes,
    sliders, toolbars, color choosers, tables, text areas to display HTML or
    RTF, etc.
   Much more customizable. Can change border, text alignment, or add
    image to almost any control. Can customize how minor features are drawn.
    Can separate internal representation from visual appearance.
   "Pluggable" look and feel. Can change look and feel at runtime, or design
    own look and feel.
   Many miscellaneous new features. Double-buffering built in, tool tips,
    dock able tool bars, keyboard accelerators, custom cursors, etc.


                                      -9-
2. Components are named JXxx.

E.g. JFrame, JPanel, JApplet, JDialog, JButton, etc.


J Component
The J Component class is the root of the Visual component class hierarchy in
JFC. All Swing components are implemented as subclass of J components
class, which inherits from the Container class. Swing component inherit the
following functionality from J Component


a). Borders- Using the setBorder() method, you can specify the border that a
component displays around its edges. You can specify that component have
extra space around its edges using an EmptyBorder instance.


b). Double Buffering- It can improve the appearance of frequently changing
components. Now you do not have to write the double buffering code because
Swing provides it for you. By default Swing components are double buffered.


c). Tool Tips- By specifying a string with the setToolTipNext() method, you
can provide help to users of a components. When the cursor pauses over the
components, the specified string is displayed in small window near the
component.
d). Look and Feel- Subject to the security restriction, you can choose the look
and   feel   used    by    all   Swing        components   by   invoking   the
UIManager.setLookAndFeel() method.




                                     - 10 -
3. There is an almost-equivalent Swing component for most AWT
components.


4. Instead of adding components directly to frames or applets, we can use the
content pane.

   Add to content pane via getContentPane().add
   Replace content pane via setContentPane

5. Model-View-Controller architecture let us change the internal data
representation for lists, trees, tables, etc.


6. Swing was in the com.sun.java.swing package in beta releases of 1.2.
Switched to javax.swing in 1.2 final.


7. Default "look and feel" is a Java-specific one.

   Need special call to get native look
   Default called "Java look & feel"

8. Mixing AWT and Swing is doomed.
AWT components are always on top, and z-ordering problems catch you in
many unexpected ways. Stick with the AWT or move completely to Swing.




                                         - 11 -
                                    JDBC


The JDBC is a set of the database access classes. The very term JDBC stands
for “Java Database Connectivity”. It was developed by Java Soft. JDBC
technology is an API (Application Program Interface) that allows virtual
access to any tabular data source from the Java programming language by
means of some connecting software called Drivers. It provides cross-DBMS
connectivity to a wide range of SQL databases. JDBC defines a set of
interfaces to enable developers to access data independently of the actual
database product used to store the data. JDBC allow Java applets, Servlets,
and application to access data in famous database management systems.

It also provides access to other tabular data sources, such as spreadsheets or
flat files. The JDBC API allows developers to take advantage of the Java
platform's "Write Once, Run Anywhere" capabilities for industrial strength,
cross-platform applications that require access to enterprise data. With a JDBC
technology-enabled driver, a developer can easily connect all corporate data
even in a heterogeneous environment. The JDBC API is the industry standard
for database-independent connectivity between the Java programming
language and a wide range of databases. The JDBC API makes it possible to
do three things:

   Establish a connection with a database or access any tabular data source
   Send SQL statements
   Process the results




                                     - 12 -
Steps in using JDBC

1) Create a Connection type of object (A) denoting a connection to the
   database.
2) Create a Statement type of object (B) using the A.
3) Use B to execute either update the database or send a query request.
4) The result of the query operation in step 3 is a Result Set type of object(C)
5) C is actually a small table (D) consisting of the result of the query.
6) D can be handled according to the user needs
7) Close C,B and A

SQL

SQL stands for Structured Query Language, better known as “sequel”. It is
used for:

1. querying a database by editing the SQL statements.

2. querying a database within a program

3. defining data organization.

4. administrating data

5. accessing multiple data servers

6. managing transaction.




                                      - 13 -
                      JDBC ARCHITECTURE

The JDBC API contains two major sets of interfaces:

 JDBC API for application writers
 Lower-level JDBC driver API for driver writers

JDBC drivers are divided into four types or levels. Each type defines a JDBC
driver   implementation    with   increasingly higher   levels   of   platform
independence, performance, and deployment administration. The four types
are:

   Type 1: JDBC-ODBC Bridge
   Type 2: Native-API/partly Java driver
   Type 3: Net-protocol/all-Java driver
   Type 4: Native-protocol/all-Java driver

Type 1: JDBC-ODBC Bridge


The type 1 driver, JDBC-ODBC Bridge, translates all JDBC calls into ODBC
(Open Database Connectivity) calls and sends them to the ODBC driver. As
such, the ODBC driver, as well as, in many cases, the client database code,
must be present on the client machine. Figure 1 shows a typical JDBC-ODBC
Bridge environment.




                                     - 14 -
                 JAVA APPLICATION




                JDBC DRIVER MANAGER



                     JDBC/ODBC
                       BRIDGE


                      ODBC
                     DRIVER                   DATABASE




                      Figure 1. Type 1: JDBC-ODBC Bridge


Pros: The JDBC-ODBC Bridge allows access to almost any database, since
the database's ODBC drivers are already available. Type 1 drivers may be
useful for those companies that have an ODBC driver already installed on
client machines.

Cons: The performance is degraded since the JDBC call goes through the
bridge to the ODBC driver, then to the native database connectivity interface.
The result comes back through the reverse process. Considering the
performance issue, type 1 drivers may not be suitable for large-scale
applications.



                                    - 15 -
The ODBC driver and native connectivity interface must already be installed
on the client machine. Thus any advantage of using Java applets in an intranet
environment is lost, since the deployment problems of traditional applications
remain. We have used JDBC-ODBC Bridge Type Drivers




                                    - 16 -
                  REQUIREMENT ANALYSIS

For analysis of requirement for the software to be developed first of all we set
some guidelines and following those only we start analyzing in specific
manner. The whole analysis work is divided in following activities:

   1. Problem Recognition
   2. Problem Evaluation and Solution Synthesis
   3. Modeling
   4. Creation Of Specification
   5. Review Of Analysis

Problem Recognition:

    We deeply assess the use and technical feasibility of the software        to
      be developed
    We meet the users and select all the persons who will be helping in
      specifying requirements and then understand their organizational bias.
    Then we define the technical environment into which the product or
      system was to be placed of the software.
    Then we identify the „Domain Constraints‟ i.e the specific environment
      needed for effective application. This helps us to limit the functionality
      and performance of the software.
    We choose the team meeting with users to elect one or more
      requirement.




                                     - 17 -
Problem Evaluation and Solution Synthesis:

   We observe all the data objects to be used by us and according to
     requirement.
   Then according to the objects and functions we have analyzed we now
     decided the flow of the information as per the requirements
   Then we define the software functions which we must make to obtain
     the flow and results with the data and achieve the projects objective.
   Now we analyze the behavior of the software in context with the
     software after defining all above tasks so as to fix the performance.
   Now we planned and analyzed the way which we must apply to have
     the asked type of user interface as per demand of the functions and data
     flow we have decided to use.
   Now we decide the requirements keeping in mind the system
     specifications. Also keeping in mind the information which we have to
     input to and output from the system so as to achieve the proper
     connectivity and transparency regarding the data.




Modeling:

    The modeling is performed by designing the DFDs for all the possible
      states of the software.




                                    - 18 -
Creation Of Specification:

The specifications were made as per the design analysis. It was confirmed
that:

     Is each requirement consistent with the product design?
     Is the requirement really necessary or just the add-on feature?
     Does any requirement conflicts with the other requirements?
     Is the requirement achievable in the specific technical environment?

Review Of Requirements:

In this stage we just review all the requirements listed by us and see aren‟t we
missing any one during our calculation and logic planning‟s. Here also we
follow some basic guidelines:

    Here we study the function and performance of computer based system
        and the constraints.
    The final statement of requirement was examined by the original
        sources.
    All the requirements related with a particular are listed in dependency
        traceability.
    The requirements which were testable were marked with tests to
        exercise the requirements later.
    It was made clear that the requirement is traceable to overall
        system/product objectives.
    The requirements associated with the system performance, behavior,
        and operational characteristics were clearly stated.


                                       - 19 -
                     FEASIBILITY ANALYSIS

Introduction of Feasibility Study:

Many feasibility studies are disillusions for both user and analysts. First , the
study often presupposed that when the feasibility of a document is being
prepared, the analyst is in a position to evaluate solution. Second, most studies
tend to overlook the confusion inherent in the system development. If the
feasibility study is to serve as a decision document, it must answer three
questions

    1. Is there a new and better way to do the job that will benefit the user?
    2. What are the costs and saving of the alternative(s)?
    3. What is recommended?

The most successful system projects are not necessarily the biggest or most
visible in a business but rather those that truly meet user expectations. Most
projects fail because of inflated expectation than for any other reason.

Feasibility Study:

As not every imagination is feasible, not even in software, evanescent a sit
may appear to outsiders. On the contrary, software feasibility has five solid
dimensions:

Technical Feasibility

Is the prepared technology practical? Technical feasibility centers around the
existing computer system and to what extent it can support the proposed
addition. But in this case since earlier all the work was manual and there was


                                      - 20 -
no existing system, so the system proposed is technically feasible. Also, the
new system should be brought according to the specification of the product
being designed.

Operational Feasibility

Is the problem worth solving? Will the solution to problem work? The answer
to the above question is yes. As the problem is worth solving because the
manual work is very inefficient and from the statement of the problem gives
us a clue that there is a solution to the problem and there are pretty good
chances that the solution will work.

Economic Feasibility

 It is used to measure the cost effectiveness of a project which is commonly
known as cost-benefit analysis. The project is also economically feasible as
the only requirement involving expenses are related to the cost of buying a
new system and a printer for the hard copies. And the maintenance involved in
this is only the maintenance of the computer and that does not cost much. So
according to the requirements the system is economically fit.

Legal Feasibility

Legal feasibility means that the software developed is legal; it is not violating
any governmental constraints and it is following all the legal laws. Since the
project is developed for use within a particular college only, it can by no mean
violate any legal laws.
Therefore, it is said to be legally feasible too.

Behavioral Feasibility

Behavioral feasibility is an estimate of how strong reaction the user staff is
likely to have towards the development of a computer system. Since this
project lightens the burden of the manual work in the cell, so the end users of
the software will always be encouraging towards the use of computer. Also,
no jobs are going to be replaced in this case.




                                      - 21 -
                        DESIGN ANALYSIS

Designing is the most important part of the software development lifecycle. It
requires careful planning and logical thinking on the part of the software
designer. Designing the software means how the various parts of the software
are going to meet the user requirement and goals. It should be done with
utmost care as a simple mistake or miscalculation at this stage can result in
errors which can be compounded manifold as the development process moves
up the development hierarchy. This compounded error can result in low
performance, more processing time, and more coding and extra load.

System Design attempts to accomplish the following:

    Improve productivity of analysts and programmers.
    Improve      documentation     and      subsequent   maintenance     and
      enhancements.
    Cut down drastically on cost over runs and delays.
    Improved communication among the users ,analysts, designers and
      programmers
    Standardize the approach to analysis and design
    Simplify design by segmentation




                                    - 22 -
                      The java.sql PACKAGE

The implementation of JDBC is made through the java.sql package. This
package contain all the JDBC classes and method that allows the developers to
create databases application .The topmost class in the class hierarchy of JDBC
classes is the DriverManager, which keeps the driver information, state
information and more. When each driver is loaded, it is registered with the
DriverManager. Whenever a connection is made, the DriverManager selects
the driver depending on JDBC URL.


The JDBC URL is a string that is used by the drivers to locate and access
databases. The syntax of a JDBC URL is:
jdbc:<subprtocol>:<subname>
The <protocol> defines the type of drive and <subname> provides the
network-encoded name.




                                    - 23 -
        CREATING DATA SOURCE NAME (DSN)

Before starting the program using JDBC ODBC bridge drivers, create tables in
Microsoft Access according to requirement. Let its name be emp and fields
ename, design, hiredate, deptno.
Now let‟s create a DSN by name empdb, which we will use in the program
based on JDBC ODBC drivers. The steps to create DSN are given below


1. Goto Control panel, click on Administrative Tool and then click on ODBC
Data Sources as shown in figure 2 and 3.




                    Figure 2. Selecting Administrative Tool


                                    - 24 -
                         Figure 3. Selecting ODBC


2. Click on Add button of User DSN as shown in figure 4




                                   Figure 4


                                   - 25 -
3. Select Microsoft Access Driver & then click Finish as shown in figure 5




             Figure 5. Selecting Microsoft Access Driver




                                 - 26 -
4. Write Data Source name as empdb and click on Select button then select
.mdb file where it is stored and click on OK as shown in figure 6 and 7.




                                 Figure 6




                                Figure 7




                                 - 27 -
5. Now at last click on OK as shown in figure 8.




                                 Figure 8




                                 - 28 -
         JAVA CLASSES USED IN THE PROJECT

  welcome.java
  login.java
  editprofile.java
  loginwelcome.java
  change.java
  createprofile.java
  editprofile2.java
  dbconnection.java


1) welcome.java:-

This class is used as a welcome window to the software which is made using
frames in java. This window welcome the user in this class, and the message
shown is - “WELCOME “. There is one scrolling message- “Student Profile
Maintenance Module For Placement & HR” which is the name of project.


Here user has two choices
1. login as administrator
2. login as student




There are two buttons-
1 Ok


                                   - 29 -
2 Quit.
 User first has to select category to login and then click on Ok button after this
login window appears.




                        Figure 9.The welcome window




                                      - 30 -
2 login.java:-
This class is used as a login widow .This window appears after welcome
window. In this window user is asked to enter its user name and password for
both student and administrator. The user name and password is stored in a
database. There are three buttons-
1.) Submit
2.) Quit
3.) Back
When “Submit” is selected, this window is decomposes and next window is
opened depending on whether user is student or administrator. When “Quit” is
selected, the user exits from the software and when “Back” button is clicked
welcome window appears




                           Figure 10 Login window



                                     - 31 -
3. editprofile.java
This window appears when user login as student. This window contain
complete profile of student which is already existing stored in database .This
contain features like name, address, percentage etc.
Here student can change the data and update his profile .Student can also
change his password here. There are two buttons in window.
1.) Update
2.) Quit
By clicking on “Update” button his profile stored in data base is updated.
“Quit” button is used to exit from software.




              Figure 11. Window To Update Profile By Student



                                     - 32 -
4. loginwelcome.java
This window appears when user login as administrator. This window asks user
what to do. User has three choices
1. Visit profile of student
2. Create new profile
3. Change administrator username or password
There are two buttons in this window
1. Ok
2. Quit
Administrator first has to select one of the choices and the click on “Ok”
button. By selecting first choice Administrator can Visit profile of any student
and update it. for second choice he/she can create new profile of student. In
third choice there is facility to change username or password.




                        Figure 12. loginwelcome window


                                     - 33 -
5. editprofile2.java
This window appears when administrator chooses first choice in last window.
Here Student can edit profile of any student. So first administrator has to
select name of student from combo box and then edit his profile and then
update it .There is also facility to change password of any student.
Administrator can also delete profile of any student. There are four buttons in
this window
1. Update
2. Delete
3. Back
4. Quit




  Figure 13. Window which can edit profile of any student by administrator


                                     - 34 -
6. createprofile.java
This window appears when administrator chooses second option in
loginwelcome window. This window is for creating new profile for student.
This window contains information like username, name, percentage, email,
password, address etc. So only administrator has right to create profile of
student. Profile information will be stored in database.
This window contain three buttons
1. Create
2. Back
3. Quit




                   Figure 14. Window to create new profile




                                      - 35 -
7. change.java
This window appears when administrator chooses third option in
loginwelcome window. In this window administrator can change his username
and password.
There are two parts of this window. Upper part is used two change username
while lower part is to change password. There is “Change” button upper part
to change username. In lower part there is “Ok” button to change password.
Other buttons are “Quit” and “Back”.




     Figure 15. Window to change administrator username and password




                                   - 36 -
8. dbconnection.java : -
This class provides cross-DBMS connectivity to a wide range of SQL
databases. It also provides access to other tabular data sources such as
spreadsheets or flat files.
This class serves four things:
 Establish a connection with a database or access any tabular data source.
 Send SQL statements.
 Process the results.
In this case,
 A Connection type of object conn denoting a connection to the database is
    created.
 A Statement type of object stmt is created using the Connection object i.e.
    conn.
 Use stmt to execute either update the database or send a query request.
This class has four functions:


1) It connects to the database by openConnection() method.
public Connection openConnection()
{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection
conn=DriverManager.getConnection("jdbc:odbc:stu_prof_maintainance");
    System.out.println("********connection opened*********");
    return conn;



                                     - 37 -
}


2) It executes query : -
public ResultSet execSQLCommand (String qry, Connection conn)
{
    ResultSet rs = null;
    Statement stmt = null;
    stmt = conn.createStatement();
    rs = stmt.execute Query(qry);
    return rs;
}


3 ) It updates query : -
public int updatetable (String qry, Connection conn)
{
    ResultSet rs = null;
    Statement stmt = null;
    stmt = conn.createStatement();
    rs = stmt.executeUpdate(qry);
    return retvalue;
}


4) It closes the Connection : -
public void closeConnection(Connection conn)
{
    conn.close();
    stmt.close();


                                     - 38 -
}

                               BACK END

The back end, which is the tool used for the designing of the database required
in the application was chosen to be Microsoft Access, which provides
powerful tools for managing and analyzing. The various tables used are-


1. adminfo- This table contain administrator name and administrator password
which are used to login through login window by administrator.




         Figure 16 table containing administrator name and password


2. personaldata - This table personal information of student profile like name,
password and e-mail, percentage.




        Figure 17. Table containing information about student profile




                                     - 39 -
                      QUALITY ASSURANCE


There are basically three levels of Quality Assurance, namely, testing,
validation and certification. Each of these is described below:


1 Testing


The purpose of system testing is to identify and correct errors in the system
and also to judge    if the system meets the requirements of the user or not.
There are three levels of system testing. They are as follows:


Unit Testing:


This type of testing focuses on the verification of the smallest unit of software
design namely the module. Using the procedural description as a guide,
important control paths are tested to uncover the errors within the boundary of
a module. Unit testing is normally white-box oriented, and the steps can be
conducted in parallel for multiple modules. In this project the sub-modules
have been individually tested.


Following checks were made:


   Given set of data was taken as input to the module and the output was
    observed
   Logic and boundary conditions for input and output were also checked
   Interfaces between two modules were also checked


                                      - 40 -
   Runtime Exceptions were thrown which were detected and rectified by
    taking the Stack Trace
   Also all the possible situation were anticipated with the help of the user to
    conduct thorough tests of the system.


Integration Testing:


In this type of testing the main aim is to take the unit tested modules and build
a program structure which can be directed and dictated by the design.
This includes:


   Top-down Testing
   Bottom-up testing
   Regression Testing


The last of the above was particularly important in this project which helped in
ensuring changes without introducing unintended behavior in addition.


System Testing:


This type of testing consists of a series of tests whose primary purpose is to
fully exercise the computer based system – all work to verify that system
elements have been properly integrated and that they perform specified
functions.




                                      - 41 -
When the individual program modules are working, we combined the modules
into single working system. This integration was planned and conducted in
such a way that whenever an error occurs we get an idea about the source of it.


The entire system was viewed as a hierarchy of modules. We began with the
module at the highest level of design and worked down. Then the next
modules to be tested were those that called previously tested modules.


Functional Testing:
Once it was certain that information passed between modules according to the
design description, the system was tested to assure whether the functions
describing the requirement specification were performed by the system.


Acceptance Testing:


When the functional test completes. The user gets involved to make sure that
the system works according to the user‟s expectation.


2 Validation


System validation checks the quality of the software in both simulated and live
environments. It has two phases.

Alpha Testing:


In this the software goes through a phase in which errors and failures based
on simulated user requirements are verified and studied. The modified
software is then subjected to Beta Testing.


                                     - 42 -
Beta Testing:


This is testing the software in the actual user‟s site or a live environment .The
system is used regularly with live transaction .After a scheduled time, failures
and errors are documented and final correction and enhancements are made
before the package is released for use.


Checks & Constraints:


There are many validations and checks to control input and navigational
errors. These are as follows:
Input validations are done for the following cases:
Essential fields
Character numeric Input
Choosing from certain range of values
Non-repetition of primary key values
No-input or wrong input


3 Certification


The third level of quality assurance is to certify that the program or software
package is correct and conforms to standards.




                                      - 43 -
                         IMPLEMENTATION


1 Hardware Requirements:


Pentium III / IV Processor
256 MB RAM or higher
Printer
Mouse
Keyboard


2 Software Requirements:-


Microsoft Access
Jdk1.3 or higher version
Notepad


3 Installation:

The component comprises of several Java Classes, some image files (Java
Archive).
To start using this component,
- we will save the java files in bin folder of jdk1.5.
- Provide necessary database connection details and information about the
URL‟s.
- Install Microsoft-Access in system.
- And save the various tables used in the project.


                                        - 44 -
      UNIQUE FEATURES OF THE COMPONENT



Platform independent

The component is mostly developed using Java Technology which is
essentially Platform Independent. The fact that on compilation java files get
converted into machine independent byte-code makes it a cross-platform
technology. The byte code can then be run on any machine having the JVM
(Java virtual Machine).


It becomes very easy to reuse the component .Thus it is a completely
pluggable component which can be plugged into any other related system with
very little modification.


Users can perform their operations asynchronously as relational database
tables are used at the back end, which support data integrity and uniformity
Concurrent access anomaly problem is also taken care of.


Highly flexible and customizable

This component can work with any database connection as prior to
installation; users have to provide their database configuration


When the application is first started, the user is asked to provide all the
information regarding the kind of database, username, password etc.


                                      - 45 -
Enterprise Independent

This is a Enterprise Independent Product. So the component can work for any
legacy system. The users just have to provide the connection (Database) name
where their tables are stored. The component can then easily customize itself
so as to work in conjunction with the legacy system.


Any no. of connections can be used in the component. The table can have any
number of fields. Irrespective of the type and number of columns in the legacy
table, the component can work successfully.


The extensive use of graphical representation makes the component simple
and easy to work with. The GUI is simple yet powerful. The whole hierarchy
of the product is represented as a tree. The various branches of the tree
represent the physical branches of the organization. The root of the tree
represents the Database of the organization. The leaf nodes represent the
tables present in a store -room. The layout of a particular node is
represented graphically on a simple mouse click. The view can be either front-
view, back-view or cross-sectional view. The racks, levels and the cells can be
customized graphically; the results are displayed in Graphical form




                                      - 46 -
                  SECURITY OF THE SYSTEM


The following levels of security were provided in order to guard against
unauthorized and malicious use, modification and destruction of data.


Data Level:
At each functional stage the users have access to only those portions of the
data that are necessary for those functions.


Application /Functionality Level:
Only authorized users are allowed to get involved in this application.
Moreover a particular functionality on the application is allowed to be used by
only those users to whom permission has been granted to access and use it.




                                      - 47 -
                            CONCLUSION


From a proper analysis of the positive points and constraints on the
component, it can be safely concluded that the product is a highly efficient
GUI based component. This component can be easily being plugged in many
other systems.

Also the component is highly user friendly. Generally the search and updating
in stores are done by non-technical people. So it is in the best interest of the
organization to use such software which their employees can handle easily.
This software comes with just that solution. Being mostly GUI based, this
component can be used very easily. With very little training, users can learn
the usage of the product. Also the search results are presented in numerous
forms like report format, graphical format etc which makes it versatile. Again
the GUI based system is certainly more eye-catching and attractive. Nowadays
most of the companies are going global .So their business has also become
distributed and diverse.




                                     - 48 -
            REFRENCES




1. The Complete Reference JAVA- Herbert Schildt
2. JDBC –O‟Reilly
3. Java Swing –Eckstein, Loy, Wood; O‟Reilly
4. Database management System -Korth




                    - 49 -

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:30
posted:9/27/2011
language:English
pages:49