Upload
rajesh-insb
View
223
Download
0
Embed Size (px)
Citation preview
8/3/2019 Student Mgt Documentation
1/104
ACKNOWLEDGEMENT
TABLE OF CONTENTS
8/3/2019 Student Mgt Documentation
2/104
S.NO. CONTENTS
1. INTRODUCTION
1.1 ORGANIZATION PROFILE
1.2 ABSTRACT
2 . SYSTEM ANALYSIS
2.1 EXISTING SYSTEM
2.3 PROPOSED SYSTEM
2.4 REQUIREMENT ANALYSIS
2.5 REQUIREMENT SPECIFICATIONS
2.6 FEASIBILITY STUDY
3. SYSTEM DESIGN
3.1 PROJECT MODULES
3.2 DATA DICTIONARY
3.3 HARDWARE AND SOFTWARE REQUIRMENTS
4. SYSTEM TESTING
6. TECHNICLAL NOTES
6.1 INTRODUCTION TO REAL TIME PROGRAMMING
6.2 INTRODUCTION TO OOPS AND WINDOWS6.3 INTRODUCTION TO JAVA
7. BIBILOGRAPHY
1. INTRODUCTION
8/3/2019 Student Mgt Documentation
3/104
The main objective of the proposed solution is to be automated
the various functions and activities of the Student Information
through standard application program. The solution will facilitate
to the student details with the different modules. This solution is
very much necessary for the Administrator of the entire system.The Information system will take a new feature having to modify
and updated the database . Using this solution the student
information can generate various kinds of reports.
STUDENT INFORMATION MANAGEMENT
SYSTEMThe Student Information management System application is a record
keeping system. This application allows the administrative department of an
educational institution to collect accurate and comprehensive student
information. It allows authorized users to access the system by typing a
valid login name and password. This application enables you to enter the
details of new students joining the institute. It also enables due to modify
the records of existing students and delete the records of students that have
left the institute. This application provides an interface using java swings
and uses java database connectivity(JDBC) for establishing connection with
the student database.
EXISTING SYSTEM:
Currently, whenever a Student wants to a join in a institute, he go to there
for enquiry the councilor takes all the details of the student. Here we maintain
all details in a book. It is a time consuming process to modify and remove the
records. There may be a chance to do the mistakes but the system never.
PROPOSED SYSTEM:
In order to eliminate the drawbacks of the existing system, a system has
been developed due to which the councilor need not spend much time in
taking the details of a student, he can easily modify and delete the records
of a student. The database is built that takes care of every transaction
thereby reducing the burden on administrator.
8/3/2019 Student Mgt Documentation
4/104
PURPOSE:
The purpose of the system, which has been developed, is to allow an
administrator to enter the details of a student , modify the details andwhenever the student completes his course it can be deleted. This will also
save a lot of time and gives the accurate information.
Hardware and Software requirements
Software requirements
Technologies : Java
Operating System : windows 2000 /SP
Hardware requirements
Processor : Intel Pentium based
system
Processor Speed : 250 MHz to 833 MHz
RAM 256 MB
2.SYSTEM ANALYSIS
EXISTING SYSTEM:
8/3/2019 Student Mgt Documentation
5/104
Currently, whenever a Student wants to a join in a institute, he go to there
for enquiry the councilor takes all the details of the student. Here we maintain
all details in a book. It is a time consuming process to modify and remove the
records. There may be a chance to do the mistakes but the system never.
PROPOSED SYSTEM:
In order to eliminate the drawbacks of the existing system, a system has
been developed due to which the councilor need not spend much time in
taking the details of a student, he can easily modify and delete the records
of a student. The database is built that takes care of every transaction
thereby reducing the burden on administrator.
PURPOSE:
The purpose of the system, which has been developed, is to allow an
administrator to enter the details of a student , modify the details and
whenever the student completes his course it can be deleted. This will also
save a lot of time and gives the accurate information.
Modules:
AdminModule:This module deals with the registration of students, taking the
on line registration in feature this is able to deal with the all components of the
system in this module the privilizers are given to the different users who are
accessing this system .
Login Module:The login module will validate the user based on the user
name and password, if the entered userid and pwd is valid then based on the
designation the privileges are being accessed by that user.
Student Report : In this report we can take the student details based on the
student id .
8/3/2019 Student Mgt Documentation
6/104
SYSTEM ANALYSIS
SYSTEM DEFINITION:
Requirement Analysis: -
A requirement is a feature that must be included in the system.
Before the actual design and implementation start, getting to know the
system to be implemented is of prime importance.
Main emphasis should be on:
The inputs to the system.
The outputs expected from the system.
The people involved in the working of the system.
The volume of DATA (INPUTS) and the amount of
INFORMATION (outputs) that will be involved.
With respect to the system itself, the following facts should be
taking into consideration
The major processes involved.
The main points of application.
The processing rules for the collected data.
The exceptions that may be present.
The checks that should be in place in order to avoid wrong
entries.
8/3/2019 Student Mgt Documentation
7/104
PROJECT SCHEDULE STUDY PHASE
In the study phase we do the preliminary investigation and
determine the system requirements. We study the system and collect
the data to draw the dataflow diagrams. We follow the methods like
questions and observation to find the facts that are involved in the
process. This is an important because if the specification study is not
done properly then following design phase etc will go wrongly.
DESIGN PHASE
In this design phase we design the system making use of study
phase and the data flow diagrams. We make use the general access
methods for designing. We consider the top down approach. In the
design phase we determine the entities and their attributes and the
relationships between the entities. We do both logical and the physical
design of the system.
DEVELOPMENT PHASE
In the development phase we mostly do the coding part following
the design of the system. We follow modular programming for
development and after development and after developing each and
every module we do the unit testing followed by the integrationtesting.
IMPLEMENTATION PHASE
8/3/2019 Student Mgt Documentation
8/104
The last phase of the project is the implementation phase.
Quality assurance is the primary motive in this phase. The quality
assurance is the review of software products and related
documentation for completeness, correctness, reliability andmaintainability. The philosophy behind the testing is it finds errors. The
testing strategies are of two types, the code testing and the
specifications testing. In the code testing we examining the logic of the
program. On the surface, code testing seems to be ideal methods for
testing software, but no tall software errors are uncovered.
FEASIBILITY STUDY
Investigation
For the study of the project, I went for the various software
Development organizations There I met the Admin There we got the
Information about various levels of student management system
assigned for each phase.
The different functions are LonginDetails, AnalysisDetails, and
Student Activity analysis. The data all about the above are stored in
different registers (admin register, subadmin register, student register,
course register) in different departments.
In manual process whenever project came they maintain
registers to store Admin details, student proposed for each phase like
analysis, design.
According to the requirements we divided this manual process
Into 3phases:
AdminPhase:
8/3/2019 Student Mgt Documentation
9/104
StudentPhase:
Report Phase:
After problem is clearly understood and Solutions are proposed
the next step is to conduct the feasibility study, which is the part of the
system analysis. The main objective of this study is to determine
whether the proposed system is feasible or not. Solutions strategies
are usually generated \without regard for feasibility because one
cannot be both creative & critical at the same time. Hence feasibility
analysis is a must to arrive at the most appropriate solution strategy.
This feasibility analysis is done after the thorough study of the system.
The planning objective is achieved through a process of
information discovery that leads to reasonable estimation.
Keeping the following aspect in mind the system analysis for the
development of the project
Identify the drawbacks of the existing system.
Identify the need for conversion.
Perform feasibility study.
Identify hardware, software and the database requirements.
Create a system definition that forms the foundation for the
subsequent work.
Software scope:
8/3/2019 Student Mgt Documentation
10/104
The first activity in software project planning is the determination
of software scope. Function and performance allocated to software
should be assessed to establish a project scope. Software scope
describes function, performance, constraints and reliability.
Estimation :
Software project planning estimate can do many ways, such as
LOC (line of code)-based estimation, FP (function point) estimation.
Process-based estimation. We should select best of one depending on
the requirement.
Resource availability:
The resources, which are common to any system consist, of
human effort, information and development resource. Developing any
system any system without satisfactory resources is inappropriate and
impossible.
The design development team for this project consists of three
members who are responsible for software development and internal
testing. Information assembly is to this project as with every other
project. Various sources of Information are available.
Human resources:
The number of people required for a software development can
be determined only after an estimate of development effort. The
8/3/2019 Student Mgt Documentation
11/104
planner begins by evaluating scope and selecting the skills required to
complete development.
Reusable software resources:
Existing software that can be acquired from a third party or that has been
developed internally for past project.
Environmental resources:
The environment that supports the software, often called a
software engineering environment (SEE). Hardware provides theplatform that supports the tools required.
Operational feasibility:
It determines how much effort will go into educating, selling and
training the user staff on a candidate system. People are inherently
resistant to change and computers have been known to facilitate
changes. An estimate should be made of how strong a reaction the
user staff is likely to have towards the development of a computerized
system.
Operational feasibility checks the operational scope of the
system. The system under consideration should have enough
operational reach. It is observed that the proposed system would
provide a very interactive means to share information and have a far
and wide reach. The proposed system would make the information
more interactive. Thus operational feasibility of the proposed system is
found to be high.
8/3/2019 Student Mgt Documentation
12/104
Technical feasibility:
Technical feasibility centers on the existing computer system and
to what extent it can support the proposed addition. The benefits such
as high accuracy, minimum response time and user friendliness of the
proposed system our weights cost for designing and installing the new
system.
The level of technology comprises of the software tools, the
development platform and the machine environment, which already
exists within the organization. Since all the required tools and platform
that were mentioned above were already available, the technicalfeasibility of this project ids justified.
The procedure in the economic feasibility analysis is to determine
the benefits and savings that we expected from a candidate system
and compare them with cost. If benefits overweigh cost then design
decision is made to design and implement the system. The major
disadvantages of the existing system are slow transmission of
information between various locations and increased average waiting
time. By the candidate system we can reduce processing charges and
time of processing. By comparing the benefits with the cost of the
proposed system benefits out weights costs.
System analysis.
3.1 PROJECT MODULES
The modules and their roles are:
8/3/2019 Student Mgt Documentation
13/104
Login user: the user enter to the system, and enter the login form, the login user name and
password is valid or not . The user is to maintain the student information about the project.
Administrator: The Administrator is the main user and the admin will have to privilege to entire
the system, so Administrator will have to update and delete the student details of the entire
system.
DESIGN PHASE
INTRODUCTION:
Design is the first step in the development of any engineered product or system. It
may be defined as the process of applying various techniques and principles for the
purpose of defining a device, a processor or a system insufficient detail to permit its
physical reallzation.
In the design phase the detailed design of the system selected in
the study takes place. System design is stated by reviewing the study
phase activities and making decisions as to which functions are to be
performed by hardware, software or manually. This process through
which the initial requirements are specified in the study phase are
translated into a representation of the software. Initially, the
representation depicts holistic view of the software. Subsequent
refinement leads to a design representation, which is very close to that
of the source code. The design phase recommendations are presented
as reports to the user. The following steps are followed in designing
software.
a. The statements of functions desired from software to be
developed are recognized.
8/3/2019 Student Mgt Documentation
14/104
b. The database design steps are applied to identify the various
entities and relationships between them.
c. General access methods are then applied to the conceptual
schema to get the logical model, which is then further transformed into
relational tables.
d. The concept of software engineering is then applied to get
the logical architecture of the system comprising of different
modules, each containing all related functions.
3.2 DATA DICTIONARY
Data dictionary consists of descriptions of all the data used in the system. It consists of
logical characteristic of current systems data stores including name, description, aliases,
contents and organization. Data dictionary serves as basis for identifying databases
requirements during requirements during system design. Data dictionary is a catalog a
repository of the elements in the system. The Data dictionary is used to manage the detail in
large systems, to communicate a common meaning for all system elements, to document the
features of the system elements, to document the feature of the system, to locate errors and
omissions in the system.
Data dictionary contains two types of description for the data flowing through the
system: Data element and Data structure. Data Element are used to group together to make
up the Data Structure. The most fundamental level is the data element. Data Structure is a set
of data items data related to one another and collectively describe a component in the system.
The description of the data elements consists of data names, data description, aliases, and
length and data values. The description of data structure consists sequence relationship,selection , Iteration relationship and option relationship.
TABLE NAME: LOGIN
8/3/2019 Student Mgt Documentation
15/104
This table describes the user and password for the Admin To
Login
To the system
Ser.NO FIELD NAME DATA TYPE CONSTRAINT
1. NAME VARCHAR2(20)
NULL
2. PASSWORD VARCHAR2(20)
NULL
S.NO FIELD NAME DATATYPE CONSTRAIN
1. STUDENTID NUMBER(6)
PrimaryKey
2. LASTNAME VARCHAR2(15)
NULL
3. FIRSTNAME VARCHAR2(15)
NULL
4. JOINDATE VARCHAR2(15)
NULL
8/3/2019 Student Mgt Documentation
16/104
TABLE NAME: STUDENT
This table describes the all the details of the student with uniqueids and the name of the
student this table maintains the master details of the student only
once.
UML Diagrams
3.4 UMLDIAGRAMS
UML is a notation that resulted from the unification
Of Object Modeling Technique and Object Oriented Software Technology
.UML has been designed for broad range of application.
Hence, it provides constructs for a broad range of systems and activities.
AN OVERVIEW OF UML IN FIVE NOTATIONS
1.USE CASE DIAGRAMS
Use cases are used during requirements elicitation and analysis
8/3/2019 Student Mgt Documentation
17/104
To represent the functionality of the system. Use cases focus on the behaviour of the
system from the external point of view. The actor is
Outside the boundary of the system, whereas the use cases are inside the boundary of
the system.
2.CLASS DIAGRAMS
Class diagrams to describe the structure of the system. Classes
Are abstraction that specify the common structure and behaviour of a set
Of objects.
Class diagrams describe the system in terms of objects, classes, attributes,
operations and their associations.
3.SEQUENCE DIAGRAMS
Sequence diagrams are used to formalize the behaviour of the system and to
visualize the communication among objects. They are useful for identifying additional objects
that participate in the use cases. A Sequence diagram represents the interaction that take place
among these objects.
4.STATECHART DIAGRAMS
State chart diagrams describe the behaviour of an individual object as a number
of states and transitions between these states. A state represents a particular set of values for
an object. The sequence diagram focuses on the messages exchanged between objects, the
state chart diagrams focuses on the transition between states .
5.ACTIVITY DIAGRAMS
8/3/2019 Student Mgt Documentation
18/104
An activity diagram describes a system in terms of activities. Activities are states
that represent the execution of a set of operations. Activity diagrams are similar to flowchart
diagram and data flow.
Class diagram for student management:
Sequence Diagram:
8/3/2019 Student Mgt Documentation
19/104
Use Case Diagram:
8/3/2019 Student Mgt Documentation
20/104
Activity Diagram:
4.Technical Notes
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
8/3/2019 Student Mgt Documentation
21/104
Java is loosely based on C++ syntax, and is menat to be
Object-Oriented Structure of java is midway between an
interpreted and a compiled language . java programs are
compiled by the java compiler into Byte Codes which are secure
and portable across different platforms . these byte codes are
essentially instructions encapsulated in single type, to what is
known as ajava virtual machine (JVM) which resides instandard
browser.
JVM verifies these byte codes when downloaded by the browser
for integrity. Jvms are available for almost all OS. JVM converts
these byte codes into machine specific instructions at runtime.
FEATURES OF JAVA
java is object-oriented language and supports
encapsulation, inheritance , polymorphism and
dynamic binding , but does not support multiple
inheritance.every thing in java is an object except some
primitive datatypes .
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.
8/3/2019 Student Mgt Documentation
22/104
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 .
JAVA ENVIRONMENT
8/3/2019 Student Mgt Documentation
23/104
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
When 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 .
PARADIGM OF JAVA
Dynamic down loading applets(small application
programs);
8/3/2019 Student Mgt Documentation
24/104
8/3/2019 Student Mgt Documentation
25/104
The GridBagLayout class is a flexible layout manager that aligns components
vertically and horizontally, without requiring that the components be of the same size. Each
GridBagLayout object maintains a dynamic, rectangular grid of cells, with each componentoccupying one or more cells, called its display area.
Each component managed by a GridBagLayout is associated with an instance of
GridBagConstraints. The constraints object specifies where a component's display area should
be located on the grid and how the component should be positioned within its display area. In
addition to its constraints object, the GridBagLayout also considers each component's minimum
and preferred sizes in order to determine a component's size.
The overall orientation of the grid depends on the container'sComponentOrientation property.
For horizontal left-to-right orientations, grid coordinate (0,0) is in the upper left corner of the
container with x increasing to the right and y increasing downward. For horizontal right-to-leftorientations, grid coordinate (0,0) is in the upper right corner of the container with x increasingto the left and y increasing downward.
The GridLayout class is a layout manager that lays out a container's components
in a rectangular grid. The container is divided into equal-sized rectangles, and one component is
placed in each rectangle.
If the container's ComponentOrientation property is horizontal and left-to-right, the aboveexample produces the output shown in Figure 1. If the container's ComponentOrientation
property is horizontal and right-to-left, the example produces the output shown in Figure 2.
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/GridBagConstraints.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/GridBagConstraints.html8/3/2019 Student Mgt Documentation
26/104
Figure 1: Horizontal, Left-to-Right Figure 2: Horizontal, Right-to-Left
When both the number of rows and the number of columns have been set to non-zero values,
either by a constructor or by the setRows and setColumns methods, the number of columns
specified is ignored. Instead, the number of columns is determined from the specified number or
rows and the total number of components in the layout. So, for example, if three rows and two
columns have been specified and nine components are added to the layout, they will be displayedas three rows of three columns. Specifying the number of columns affects the layout only when
the number of rows is set to zero.
A layout manager that allows multiple components
to be laid out either vertically or horizontally. The componentswill not wrap so, for example, a vertical arrangement of
components will stay vertically arranged when the frame is
resized.
Nesting multiple panels with different combinations of horizontaland vertical gives an effect similar to GridBagLayout, without the
complexity. The diagram shows two panels arranged horizontally,
each of which contains 3 components arranged vertically.
The BoxLayout manager is constructed with an axis parameter that specifies the type of layoutthat will be done. There are four choices:
X_AXIS - Components are laid out horizontally from left to right.
Y_AXIS - Components are laid out vertically from top to bottom.
LINE_AXIS - Components are laid out the way words are laid out in a line, based on the
container's ComponentOrientation property. If the container's ComponentOrientation is
horizontal then components are laid out horizontally, otherwise they are laid out vertically. For
horizontal orientations, if the container's ComponentOrientation is left to right thencomponents are laid out left to right, otherwise they are laid out right to left. For verticalorientations components are always laid out from top to bottom.
PAGE_AXIS - Components are laid out the way text lines are laid out on a page, based on the
container's ComponentOrientation property. If the container's ComponentOrientation is
horizontal then components are laid out vertically, otherwise they are laid out horizontally. For
horizontal orientations, if the container's ComponentOrientation is left to right then
8/3/2019 Student Mgt Documentation
27/104
components are laid out left to right, otherwise they are laid out right to left. For vertical
orientations components are always laid out from top to bottom.
For all directions, components are arranged in the same order as they were added to thecontainer.
BoxLayout attempts to arrange components at their preferred widths (for horizontal layout) or
heights (for vertical layout). For a horizontal layout, if not all the components are the same
height, BoxLayout attempts to make all the components as high as the highest component. Ifthat's not possible for a particular component, then BoxLayout aligns that component vertically,
according to the component's Y alignment. By default, a component has a Y alignment of 0.5,
which means that the vertical center of the component should have the same Y coordinate as the
vertical centers of other components with 0.5 Y alignment.
Similarly, for a vertical layout, BoxLayout attempts to make all components in the column as
wide as the widest component. If that fails, it aligns them horizontally according to their X
alignments. ForPAGE_AXIS layout, horizontal alignment is done based on the leading edge of thecomponent. In other words, an X alignment value of 0.0 means the left edge of a component if
the container's ComponentOrientation is left to right and it means the right edge of the
component otherwise.
Instead of using BoxLayout directly, many programs use the Box class. The Box class is alightweight container that uses a BoxLayout. It also provides handy methods to help you use
BoxLayout well. Adding components to multiple nested boxes is a powerful way to get the
arrangement you want.
A border layout lays out a container, arranging and resizing its components to fit
in five regions: north, south, east, west, and center. Each region may contain no more than one
component, and is identified by a corresponding constant: NORTH, SOUTH, EAST, WEST, and
CENTER. When adding a component to a container with a border layout, use one of these five
constants
In addition, BorderLayout supports the relative positioning constants, PAGE_START,
PAGE_END, LINE_START, and LINE_END. In a container whose ComponentOrientation is set to
ComponentOrientation.LEFT_TO_RIGHT, these constants map to NORTH, SOUTH, WEST, and
EAST, respectively.
For compatibility with previous releases, BorderLayout also includes the relative positioning
constants BEFORE_FIRST_LINE, AFTER_LAST_LINE, BEFORE_LINE_BEGINS and
AFTER_LINE_ENDS. These are equivalent to PAGE_START, PAGE_END, LINE_START and LINE_END
respectively. For consistency with the relative positioning constants used by other components,
the latter constants are preferred.
8/3/2019 Student Mgt Documentation
28/104
Mixing both absolute and relative positioning constants can lead to unpredicable results. If you
use both types, the relative constants will take precedence. For example, if you add components
using both the NORTH and PAGE_START constants in a container whose orientation is
LEFT_TO_RIGHT, only the PAGE_START will be layed out.
NOTE: Currently (in the Java 2 platform v1.2), BorderLayout does not support verticalorientations. The isVertical setting on the container's ComponentOrientation is not
respected.
The components are laid out according to their preferred sizes and the constraints of the
container's size. The NORTH and SOUTH components may be stretched horizontally; the EAST and
WEST components may be stretched vertically; the CENTER component may stretch both
horizontally and vertically to fill any space left over.
Here is an example of five buttons in an applet laid out using the BorderLayout layout manager:
The code for this applet is as follows:
A CardLayout object is a layout manager for a container. It treats each component in the
container as a card. Only one card is visible at a time, and the container acts as a stack of cards.The first component added to a CardLayout object is the visible component when the container
is first displayed.
8/3/2019 Student Mgt Documentation
29/104
The ordering of cards is determined by the container's own internal ordering of its component
objects. CardLayout defines a set of methods that allow an application to flip through these
cards sequentially, or to show a specified card.
2 Applets
An applet is a special kind of Java program that a browser enabled
with Java technology can download from the internet and run. An
applet is typically embedded inside a web-page and runs in the
context of the browser. An applet must be a subclass of the
java.applet.Applet class, which provides the standard
interface between the applet and the browser environment.
Swing provides a special subclass of Applet, called
javax.swing.JApplet, which should be used for all applets that
use Swing components to construct their GUIs.
By calling certain methods, a browser manages an applet life cycle, if
an applet is loaded in a web page.
Life Cycle of an Applet:
Basically, there are four methods in the Applet class on which any
applet is built.
init: This method is intended for whatever
initialization is needed for your applet. It is called after
the param attributes of the applet tag.
start: This method is automatically called after
init method. It is also called whenever user returns to
the page containing the applet after visiting other
pages.
8/3/2019 Student Mgt Documentation
30/104
stop: This method is automatically called
whenever the user moves away from the page
containing applets. You can use this method to stop an
animation.
destroy: This method is only called when the
browser shuts down normally.
Thus, the applet can be initialized once and only once, started and
stopped one or more times in its life, and destroyed once and onlyonce.
For more information on Life Cylce of an Applet,
please refer toThe Life Cycle of an Applet section.
Applets vs. Applications
In the early days of Java, one of the critical advantages that Java
applets had over Java applications was that applets could be easily
deployed over the web while Java applications required a more
cumbersome installation process. Additionally, since applets are
downloaded from the internet, by default they have to run in a
restricted security environment, called the "sandbox", to ensure they
don't perform any destructive operations on the user's computer, such
as reading/writing to the filesystem.
However, the introduction of Java has made it possible for Java
applications to also be easily deployed over the web, as well as run in
a secure environment. This means that the predominant difference
http://java.sun.com/docs/books/tutorial/deployment/applet/lifeCycle.htmlhttp://java.sun.com/docs/books/tutorial/deployment/applet/lifeCycle.html8/3/2019 Student Mgt Documentation
31/104
between a Java applet and a Java application is that an applet runs in
the context of a web browser, being typically embedded within an
html page, while a Java application runs standalone, outside the
browser. Thus, applets are particularly well suited for providing
functions in a web page which require more interactivity or animation
than HTML can provide, such as a graphical game, complex editing,
or interactive data visualization. The end user is able to access the
functionality without leaving the browser.
Loading Applets in a Web Page
In order to load an applet in a web page, you
must specify the applet class with appropriate applet
tags. A simple example is below:
For development and testing purposes, you can run your applet using
the lightweight appletviewer application that comes with the JDK.
For example, if AppletWorld.html is the html file name, then you run
the command as
appletviewer AppletWorld.html
Once you know your applet runs within the appletviewer, it isimportant to test your applet running in a web browser by loading the
applet's web page into the browser window. The browser can retrieve
the class files either from the internet or from the local working
directory used during development. If you make changes to your
8/3/2019 Student Mgt Documentation
32/104
applet's code while it is loaded in the browser, then you must
recompile the applet and press the "Shift + Reload" button in the
browser to load the new version.
Swings
Swing is important to develop Java programs with a graphical user interface
(GUI). There are many components which are used for the building of GUI in
Swing. The Swing Toolkit consists of many components for the building of GUI.
These components are also helpful in providing interactivity to Java
applications. Following are components which are included in Swing toolkit:
list controls
buttons
labels
tree controls
table controls
The main characteristics of the Swing toolkit
platform independent
customizable
extensible
configurable
lightweight
8/3/2019 Student Mgt Documentation
33/104
Swing is probably the most advanced toolkit on this planet. It has
a rich set of widgets. From basic widgets like Buttons, Labels,
Scrollbars to advanced widgets like Trees and Tables.
All AWT flexible components can be handled by the Java Swing. Swing toolkit
contains far more components than the simple component toolkit. It is unique to
any other toolkit in the way that it supports integrated internationalization,a
highly customizable text package, rich undo support etc. Not only this you can
also create your own look and feel using Swing other than the ones that are
supported by it. The customized look and feel can be created using Synth which is
specially designed. Not to forget that Swing also contains the basic user interface
such as customizable painting, event handling, drag and drop etc.
Swing is a part of JFC, Java Foundation Classes. It is a collection
of packages for creating full featured desktop applications. JFC
consists of AWT, Swing, Accessibility, Java 2D, and Drag and
Drop. Swing was released in 1997 with JDK 1.2. It is a maturetoolkit.
The Java platform has Java2D library, which enables developers
to create advanced 2D graphics and imaging.
There are basically two types of widget toolkits.
Lightweight
Heavyweight
8/3/2019 Student Mgt Documentation
34/104
A heavyweight toolkit uses OS's API to draw the widgets. For
example Borland's VCL is a heavyweight toolkit. It depends on
WIN32 API, the built in Windows application programming
interface. On Unix systems, we have GTK+ toolkit, which is built
on top of X11 library. Swing is a lightweight toolkit. It paints it's
own widgets. It is in fact the only lightweight toolkit I know
about.
The Java Foundation Classes (JFC) which supports many more features
important to a GUI program comprises ofSwing as well. The features which are
supported by Java Foundation Classes (JFC) are the ability to create a program
that can work in different languages, the ability to add rich graphics
functionality etc.
The features which are provided by Swing and the Java Foundation Classes are
as follows:
Swing GUI Components
There are several components contained in Swing toolkit such as check boxes,
buttons, tables, text etc. Some very simple components also provide sophisticated
functionality. For instance, text fields provide formatted text input orpasswordfield behavior. Furthermore, the file browsers and dialogs can be used according
to one's need and can even be customized.
8/3/2019 Student Mgt Documentation
35/104
Programming has become more interactive with Java 2D API. You can add
images, figures, animation to yourGUI and even pass visual information with the
help of Java 2D API. You can easily use 2D within Swing components such as
drop shadows since Swing is built on 2D package.
Pluggable Look and Feel
The Java Swing supports the plugging between the look and feel features. The
look and feel that means the dramatically changing in the component like JFrame,
JWindow, JDialog etc. for viewing it into the several types of window. You can
create your own look and feel using Synth package. There are many of existing
look and feels which are available to Swing programs provided by GTK+ look
and feel. Moreover, the look and feel of the platform can be specified by the
program while running and also to use Java look and feel can be specified by it.
The pluggable look and feel indicates that the whole look of the GUI element
can be changed i.e. both the visual representation and behavior of a GUI can be
changed at the time of display of the component. The new object which is created
by the Swing application i.e. a new button by instantiating the JButton class
already knows that how to react to mouse movements and mouse clicks. Some
tasks are only performed by certain specialized classes like mouse handling that is
why there is no need to change the code to modify the look. However, if the code
is contained by the button itself that creates its visual representation then this
code would be required to be changed to modify the look and feel of the GUI. Due
to this reason only Swing provides custom look and feel.
Compiling and Running Swing Programs
https://cis.med.ucalgary.ca/http/java.sun.com/docs/books/tutorial/uiswing/start/compile.htmlhttps://cis.med.ucalgary.ca/http/java.sun.com/docs/books/tutorial/uiswing/start/compile.html8/3/2019 Student Mgt Documentation
36/104
Install the latest release of the Java SE platform, if you haven't already done
so.
Create a program that uses Swing components.
Compile the program.
Run the program.
About the JFC and Swing
JFC is short for Java Foundation Classes, which encompass a
group of features for building graphical user interfaces (GUIs) and
adding rich graphics functionality and interactivity to Java
applications. It is defined as containing the features shown in the
table below.
Features of the Java Foundation Classes
Feature Description
Swing GUI
Components
Includes everything from buttons to split panes to tables. Many
components are capable of sorting, printing, and drag and drop,
to name a few of the supported features.
Pluggable Look-
and-Feel Support
The look and feel of Swing applications is pluggable, allowing a
choice of look and feel. For example, the same program can use
either the Java or the Windows look and feel. Additionally, the
Java platform supports the GTK+ look and feel, which makes
hundreds of existing look and feels available to Swing
programs. Many more look-and-feel packages are available
from various sources.
Accessibility APIEnables assistive technologies, such as screen readers and
Braille displays, to get information from the user interface.
8/3/2019 Student Mgt Documentation
37/104
Java 2D API
Enables developers to easily incorporate high-quality 2D
graphics, text, and images in applications and applets. Java 2D
includes extensive APIs for generating and sending high-quality
output to printing devices.
Internationalization
Allows developers to build applications that can interact with
users worldwide in their own languages and cultural
conventions. With the input method framework developers can
build applications that accept text in languages that use
thousands of different characters, such as Japanese, Chinese, or
Korean.
This trail concentrates on the Swing components. We help you
choose the appropriate components for your GUI, tell you how to
use them, and give you the background information you need to
use them effectively. We also discuss other JFC features as they
apply to Swing components.
AWT stands for Abstract Windowing Toolkit. It contains all classes to write the
program that interface between the user and different windowing toolkits. You can
use the AWT package to develop user interface objects like buttons, checkboxes,
radio buttons and menus etc. This package provides following interfaces and
classes as follows:
Interfaces and Descriptions of AWT Package:
ActionEvent This interface is used forhandling events.
Adjustable This interface takes
numeric value to adjust
within the bounded range.
8/3/2019 Student Mgt Documentation
38/104
Composite This interface defines
methods to draw a graphical
area. It combines a shape,
text, or image etc.
CompositeContext This interface allows the
existence of several context
simultaneously for a single
composite object. It handles
the state of the operations.
ItemSelectable This interface is used for
maintaining zero or more
selection for items from the
item list.
KeyEventDispatcher The KeyEventDispatcher
implements the current
KeyboardFocusManager
and it receives KeyEventsbefore despatching their
targets.
KeyEventPostProcessor This interface also
implements the current
KeyboardFocusManager.
The
KeyboardFocusManager
receives the KeyEvents
after that dispatching their
targets.
LayoutManager It defines the interface class
8/3/2019 Student Mgt Documentation
39/104
and it has layout containers.
LayoutManager2 This is the interface extends
from the LayoutManager
and is subinterface of that.MenuContainer This interface has all menu
containers.
Paint This interface is used to
color pattern. It used for the
Graphics2D operations.
PaintContext This interface also used the
color pattern. It provides an
important color for the
Graphics2D operation and
uses the ColorModel.
PaintGraphics This interface provides
print a graphics context for
a page.
Shape This interface used for
represent the geometric
shapes.
Stroke This interface allows the
Graphics2D object and
contains the shapes to
outline or stylistic
representation of outline.
Transparency This interface defines the
transparency mode for
implementing classes.
8/3/2019 Student Mgt Documentation
40/104
Classes and Descriptions of AWT Package:
AlphaComposite This class
implements the
basic alpha
compositing rules.
It combines the
source and
destination pixels
to achieve
transparency
effects to graphics
and images.
AWTEvent This is a supper
class of all AWT
Events.
AWTEventMulticaster This class
implements thread-safe multi-cast
event and it is
despatching for the
AWT event. The
AWT events
defined in the
java.awt.event
package.
AWTKeyStroke This class used to
key action on the
8/3/2019 Student Mgt Documentation
41/104
keyboard or
equivalent input
devices.
AWTPermission This class uses for
the AWT
permissions.
BasicStroke This class defines
the basic set of
rendering attributes
for using outlines
of graphics.
BorderLayout This class uses to
arranging the
components. It has
five components
such as: east, west,
north, south and thecenter.
BufferCapabilities This class has
properties of
buffers.
BufferCapabilities.FlipContents This class has a
type-safe
enumeration of
buffer. It contains
after page-flipping.
Button This class used to
create a label
8/3/2019 Student Mgt Documentation
42/104
button
Convas It represents the
blank rectanglular
area on screen. It
can draw or trap
input events from
the user.
CardLayout It is a layout
manager for a
comtainer.
Chaeckbox It is a graphical
component. It has
two states. True
state that means
"on" or false sate
that means "off".
CheckboxGroup This class to be
used together
multiple checkbox
buttons.
CheckboxMenuItem This class
represents the
checkbox and also
include the menu.Choice This class
represents pop-up
menu to user's
choice.
8/3/2019 Student Mgt Documentation
43/104
Color This class has
colors. The default
color is RGB color.
Color library
specify the all
color, it identified
by ColorSpace.
Component This is a graphical
representation to
interacted by user.
It displays on the
screen.
ComponentOritentation This class
encapsulates the
language-sensitive
orientation. It also
used the order the
element of
component or text..
Container A generic AWT
container object
has other AWT
components.
ContainerOrderFocusTraversalPolicyIt determines the
traversal order
based on the order
of child
8/3/2019 Student Mgt Documentation
44/104
components in a
container.
Cursor This class
represents the
bitmap
representation of
the mouse cursor.
DefultFocusTraversalPolicy This class
determines the
traversal order on
the order of child
components of
container.
DefultKeyboardFocusManager This class used for
handle the AWT
applecations.
Dialog This is a top label
window. It has title
and border. It can
be used for taking a
some input of
users.
Dimension This class describe
the height and
width of a
component in a
single object.
DisplayMode This class
8/3/2019 Student Mgt Documentation
45/104
encapsulates the bit
depth, height,
width and refresh
rate of a
GraphicsDevice.
Event This class available
only for the
backwards
compatilibility.
EventQueue It is a platform
independent class.
It has both classes
underlying peer
class and trusted
application class.
DBMS
A data base management, or DBMS, gives the user access to their data helps them transform
the data into information. Such as management system include dbase, paradox, SQL and SQL
server. These systems allow users to create update and extract from their database.
a database is a structured collection of data. Data refers to the characterstics of people, things
and events, SQL server stores each data in its own fields. In sql server the fields relating to
particular person, thing or event are bundled together to form a single complete unit of data,
called a record (it can also be referred to as a row or an occurrence). Each record is made up ofa number of fields .no two fields in a record can have the same field.
During an SQL server database design project the analysis of your business needs identifies all
the fields or attributes of interest .if your business needs change over time, you define any
additional fields or change the defination of existing fields. SQL sever tables
8/3/2019 Student Mgt Documentation
46/104
SQL server stores records relating to each other in a table. Different tables are created for the
various groups of information. Related tables are grouped together to form a database.
PRIMARY KEY
Every table in SQL server has a field or a combination of fields that uniquely identifies each
record in table. The unique identifier is called the primary key, or simply the key. The primary
key provides the means to distinguish one record from all
Relational database Some times all the information of interest to business operation can be
stored in one table .sql Server makes it very easy to link the data in multiple tables. Matching an
employee to the department in which they work is one example. This is what makes sql server a
relational database management system, or RDBMS. It stores data in two or more tables and
enables you to define relationships between the tables and enables you to define relationships
between the tables.
FOREIGN KEY
When a field is one table matches the primary key of another field is referred to as a foreign key.
A foreign key field or a group of fields in one table whose values match those of the primary key
of another table.
REFERENTIAL INTEGRITY
Not only does SQL Server allow you to link multiple tables, it also maintains consistency
between them. Ensuring that the data among related tables is correctly matched is referred to
as maintaining referential integrity.
DATA ABSTRACTION
8/3/2019 Student Mgt Documentation
47/104
A major purpose of database system is to provide users with an abstract view of the data. This
system hides certain details of how data is stored and maintained. Data abstraction is divided
into three levels.\
Physical level: this is the lowest level of abstraction at which one describes how the data are
actually stored.
Conceptual Level: At this level of database abstraction all attributed and what data are actually
stored is described and relationship among them
View Level: this is the highest level of abstraction at which one describes only part of the
database.
ADVANTAGES OF RDBMS
Redundancy can be avoided
Inconsistency can be eliminated
Data can be shared
Standards can be enforced
Security restrictions can be applied
Integrity can be maintained
Conflicting requirements can be balanced
Data independence can be achieved.
DISADVANTAGES OF DBMS
A significant disadvantage of the DBMS System is cost. In addition to the cost of
purchasing of developing the software, the hardware has to be upgrade to allow for the
extensive programs and the workspace required for their execution and storage. While
centralization reduces duplication requires that the database be adequately backed up so
that in case of failure the data can be recovered.
8/3/2019 Student Mgt Documentation
48/104
FEATURES OF SQL SERVER (RDBMS)
SQL Server is one of the leading database management system (DBMS) because it is the only
Database that that meets the uncompromising requirements of todays most demanding
information systems. From complex decision support system (DSS) to the most rigorous online
transaction processing (OLTP) application, even application that require simultaneous DSS
and OLTP access to the same critical data, SQL Server
Leads the industry in both performance and capability
SQL SERVER is a truly portable, distributed, and open DBMS that delivers unmatched
performance, continuous and support for every database.
Sql SERVER RDBMS is high performance fault tolerant DBMS which is specially designed
for online transaction processing and for handling large database application.
SQL SERVER with transaction processing option offers two features which contribute to
very high level of transaction processing throughput, which are
The row level lock manager
ENTERPRISE WIDE DATA SHARING
The unrivaled portability and connectivity of the sql server DBMS enables all the systems
in the organization to be linked into a single, integrated computing resource.
PORTABILITY
SQL SERVER is fully portable to more 80 distinct hardware and operating systems platforms,
including UNIX, MSDOS, OS/2, Macintosh and dozens of proprietary platforms. This portability
gives complete freedom to choose the database server platform that meat the system
requirements.
8/3/2019 Student Mgt Documentation
49/104
OPEN SYSTEM
SQL SERVER offers a leading implementation of industry-standard SQL. SQL Servers open
architecture integrates SQL SERVER and non-SQL SERVER DBMS with industries most
comprehensive collection of tools, application, and third party software products SQL Servers
open architecture provides transparent to data from other relational database and even non-
relational database.
DISTRIBUTED DATA SHARING
SQL Servers networking and distributed database capabilities to access data stored on remote
server with the same ease as if the information was stored on a single local computer. A single
SQL statement can access data multiple sites. You can store data where system requirements
such as performance, security or availability dictate.
UNMATCHED PERFORMANCE
The most advanced architecture in the industry allows SQL SEVER DBMS to deliver
unmatched performance.
SOPHISTICATED CONCURRENCY CONTROL
Real world applications demand access to critical data. With most database Systems
applications becomes connection bound- which performance is limited not by the CPU power
or by disk I/O, but user waiting on one another contention free queries to minimize and in many
cases entirely eliminates contention wait times.
8/3/2019 Student Mgt Documentation
50/104
NO I/O BOTTLENECKS
SQL Servers fast commit groups commit and deferred write technologies dramatically reduce
disk I/O bottlenecks. While some database write whole data block to disk at commit time, SQL
SERVER commits transactions with at most sequential log file on disk at commit time, On high
throughput systems, one sequential log file on disk at commit multiple transactions. Data read
by the transaction remains as shared memory so that other transactions may access that data
with out reading it again from disk. Since fast commits write all data necessary to the recovery
to the log file, modified blocks are written back to the database independently of the
transactions commit, when written from memory to disk.
6. TESTING
TESTING
Testing is a process, which reveals errors in the program. It is the major
quality measure employed during software development. During software development.
During testing, the program is executed with a set of test cases and the output of the
program for the test cases is evaluated to determine if the program is performing as it is
expected to perform.
In order to make sure that the system does not have errors,
the different levels of testing strategies that are applied at differing phases of
software development are:
1. UNIT TESTING
Unit Testing is done on individual modules as they are completed and
become executable. It is confined only to the designer's requirements.
8/3/2019 Student Mgt Documentation
51/104
Each module can be tested using the following two strategies:
I) BLACK BOX TESTING:
In this strategy some test cases are generated as input
conditions that fully execute all functional requirements for the program. This
testing has been uses to find errors in the following categories:
a) Incorrect or missing functions
b) Interface errors
c) Errors in data structure or external database access
d) Performance errors
e) Initialization and termination errors.
In this testing only the output is checked for correctness. The logical
flow of the data is not checked.
ii) WHITE BOX TESTING
In this the test cases are generated on the logic of each module by
drawing flow graphs of that module and logical decisions are tested on all the
cases.
It has been uses to generate the test cases in the following cases:
a) Guarantee that all independent paths have been executed.
b) Execute all logical decisions on their true and false sides.
c) Execute all loops at their boundaries and within their operational bounds.
d) Execute internal data structures to ensure their validity.
2. INTEGRATING TESTING
Integration testing ensures that software and subsystems work together
as a whole. It tests the interface of all the modules to make sure that the
modules behave properly when integrated together.
8/3/2019 Student Mgt Documentation
52/104
3. SYSTEM TESTING
Involves in-house testing of the entire system before delivery to the user.
Its aim is to satisfy the user the system meets all requirements of the client's
specifications.
4. ACCEPTANCE TESTING
It is a pre-delivery testing in which entire system is tested at client's site
on real world data to find errors.
VALIDATION:
The system has been tested and implemented successfully and
thus ensured that all the requirements as listed in the software requirements
specification are completely fulfilled. In case of erroneous input corresponding
error messages are displayed.
TEST PLAN:
The importance of software testing and its implications can be over
emphasized. Software testing is a critical element of software quality assurance and
represents the ultimate review of specifications, design and coding. The main
objective of testing is to uncover a host of errors, systematically and with minimum
effort and time stating formally we can say.
Testing is a process of executing a program of intent of finding and error.
A successful test is one that uncovers an as yet undiscovered error
8/3/2019 Student Mgt Documentation
53/104
A good test case is one that has a high probability of finding error, if it exists .
But there is one thing that testing cant do testing cannot show the absence of defects, it can
be so that defects are present. As the test results are gathered and evaluated. They
begin to give a qualitative indication of the reliability of the software if severe errors
the overall quality of software is a natural suspect. If, one the other hand, all the
errors, which are encountered is easily modifiable, the one of two conclusions can
be made
1. The tests are inadequate to detect possible present errors .
2. The software more or less confirms to the quality and reliable standards .
TESTING STRATEGY:
A testing strategy is a roadway, giving through how to conduct a test out testing strategy is
flexible enough to promote customization that may be necessary in due course of development
process for instance during coding we find that a change in design we maintain a change a log
and refer to it at appropriate time during the testing .
INTEGRATION TESTING:
Integration is a systematic technique for constructing the program structure while conducting
tests at the same time to uncover errors associated with interfacing we have used incremental
integration testing for this module.
VALIDATION TESTING:
At the time of culmination of integration testing the software is complete as a package and the
interfacing errors have been uncovered and fixed and final test validation testing may begin
validation test succeed when the software performs exactly in the manner as expected by the
user.
8/3/2019 Student Mgt Documentation
54/104
TEST CASE DESIGN:
The techniques that are used in deriving the test cases are explained below
CONDITION TESTING:
Condition testing is a test case design method that exercises the logical conditions contained in
the program the possible components in a condition statement are a Boolean operator, Boolean
variable, relational operator, arithmetic expression and parenthesis simple or compound
conditions the condition testing method focuses on testing each condition in the program.
BOUNDARY VALUE ANALYSIS :
Boundary value analysis leads to a selection of test cases that exercise the boundary conditions
or boundary values it has been observed that a large number of errors tend to appear at the
boundaries of the input domain than in the center.
EQUIVALENCE PORTIONING:
Equivalence portioning is a black box testing method that divides the input domain of a program
into classes of data from which test cases can be derived a typical test uncovers a class errors
might otherwise require many more test cases before the error is observed.
Equivalence classes for input determine the valid and invalid inputs for the program.
8/3/2019 Student Mgt Documentation
55/104
Screens and Reports
DATA DICTIONARY
FEATURES OF DATA DICTIONARV
The Volume of data in most Information system applications is
substantially more than a single user can easily keep track of data
dictionaries are an integral component of structural analysis, since
data flow diagrams by themselves do not fully describe the subject of
investigation. The data dictionary provides additional information
about the system.
What is Data Dictionary?
A Data Dictionary a repository of the elements in a system. As
the name suggests, these elements center around data and the way
they are structured to meet user requirements and organization needs.
In a data dictionary we will find a list of all elements composing the
data flowing through a system. The major elements are data flows,
data stores and process the Data Dictionary stores details and
descriptions of these elements.
8/3/2019 Student Mgt Documentation
56/104
Why is a data dictionary important?
Analysts use data dictionaries for five important reasons.
1. To manage the detail in large systems.
2. To communicate a common meaning for all elements.
3. To document the features of the system.
4. To facilitate analysts of details in order to evaluate
characteristics and determine where system changes would be made.
5. To locate errors and omissions in the system.
Manage Detail
Large systems have huge volumes of data flowing them in the
form of documents, reports and even. Similarly many different
activities take place that use existing data or create new details. The
best organized or most effective analysis use automated data
dictionaries designed specifically for systems analysis and design.
Communicate Meaning
Data dictionaries assist in ensuring common meanings for system
elements and activities. Data dictionaries record additional details
about the data flow in a system; so that the persons who are involved
may look up the description if data flows, data stores and processes.
Document System Features
Documenting the features of an information system is the third
reason for using the data dictionary systems. Features include
the parts or components and the characteristics that distinguish
8/3/2019 Student Mgt Documentation
57/104
each. Having to formally describe, system features will produce a
more complete understanding.
Facilitate Analysis
The Fourth reason for using data dictionaries is to determine
whether new features are needed in a system or whether change of
any type is in order. For any situation, system analysts will typically
focus on the following system characteristics.
a) Nature if transaction
b) Inquiries
c)Output and Report generation
DataBase Design:
TABLE NAME: LOGIN
Ser.NO FIELD NAME DATA TYPE CONSTRAINT
8/3/2019 Student Mgt Documentation
58/104
1. NAME VARCHAR2(20)
2. PASSWORD VARCHAR2(20)
S.NO FIELD NAME DATATYPE CONSTRAIN
1. STUDENTID NUMBER(6)
PrimaryKey
2. LASTNAME VARCHAR2(15)
3. FIRSTNAME VARCHAR2(15)
4. JOINDATE VARCHAR2(15)
8/3/2019 Student Mgt Documentation
59/104
S.NO FIELD NAME DATA TYPE CONSTRAINT
1 STUDENTID NUMBER(6)
ForeignFromStudent
2 LASTNAME VARCHAR2(15)
3 FIRSTNAME VARCHAR2(15)
4 COURSE VARCHAR2(15)
ForeignKeyfrom CourseTable
5 LOGINTIME VARCHAR2(15)
6 LOGOUTTIME VARCHAR2(15)
7 DATE1 DATE
8 DATE2 DATE
TABLE NAME: COURSES
S.NO FIELD NAME DATA TYPE CONSTRAINT
8/3/2019 Student Mgt Documentation
60/104
1 COURSEID NUMBER(6)
PrimaryKey
2 COURSENAME VARCHAR2(15)
PrimaryKey
3 ENTERDATE VARCHAR2(15)
4.Technical Notes
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 menat to be
Object-Oriented Structure of java is midway between an
interpreted and a compiled language . java programs are
compiled by the java compiler into Byte Codes which are secure
and portable across different platforms . these byte codes are
essentially instructions encapsulated in single type, to what is
known as ajava virtual machine (JVM) which resides instandard
browser.
8/3/2019 Student Mgt Documentation
61/104
JVM verifies these byte codes when downloaded by the browser
for integrity. Jvms are available for almost all OS. JVM converts
these byte codes into machine specific instructions at runtime.
FEATURES OF JAVA
java is object-oriented language and supports
encapsulation, inheritance , polymorphism and
dynamic binding , but does not support multiple
inheritance.every thing in java is an object except some
primitive datatypes .
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
8/3/2019 Student Mgt Documentation
62/104
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 .
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
8/3/2019 Student Mgt Documentation
63/104
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
When 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 .
PARADIGM OF JAVA
Dynamic down loading applets(small application
programs);
Elimination of flatware phenomenon that is providing
those features of a product that user needs at a time.
The remaining features of a product can remain in the
server.
Changing economic model of the software
Up-to-date software availability
Supports network entire computing
Supports CORBA & DCOM
8/3/2019 Student Mgt Documentation
64/104
AWT
A user interface object such as a button or a scrollbar is called, in AWT terminology, a
component. The Component class is the root of all AWT components. See Component for a
detailed description of properties that all AWT components share.
Some components fire events when a user interacts with the components. The AWTEvent classand its subclasses are used to represent the events that AWT components can fire. See
AWTEvent for a description of the AWT event model.
A container is a component that can contain components and other containers. A con tainer can
also have a layout manager that controls the visual placement of components in the container.The AWT package contains several layout manager classes and an interface for building your
own layout manager. See Container and LayoutManager for more information.
A flow layout arranges components in a left-to-right flow, much like lines of text in a paragraph.
Flow layouts are typically used to arrange buttons in a panel. It will arrange buttons left to rightuntil no more buttons fit on the same line. Each line is centered.
For example, the following picture shows an applet using the flow layout manager (its default
layout manager) to position three buttons:
The GridBagLayout class is a flexible layout manager that aligns components
vertically and horizontally, without requiring that the components be of the same size. EachGridBagLayout object maintains a dynamic, rectangular grid of cells, with each component
occupying one or more cells, called its display area.
8/3/2019 Student Mgt Documentation
65/104
Each component managed by a GridBagLayout is associated with an instance of
GridBagConstraints. The constraints object specifies where a component's display area should
be located on the grid and how the component should be positioned within its display area. Inaddition to its constraints object, the GridBagLayout also considers each component's minimum
and preferred sizes in order to determine a component's size.
The overall orientation of the grid depends on the container'sComponentOrientation property.
For horizontal left-to-right orientations, grid coordinate (0,0) is in the upper left corner of the
container with x increasing to the right and y increasing downward. For horizontal right-to-left
orientations, grid coordinate (0,0) is in the upper right corner of the container with x increasingto the left and y increasing downward.
The GridLayout class is a layout manager that lays out a container's components
in a rectangular grid. The container is divided into equal-sized rectangles, and one component is
placed in each rectangle.
If the container's ComponentOrientation property is horizontal and left-to-right, the above
example produces the output shown in Figure 1. If the container's ComponentOrientation
property is horizontal and right-to-left, the example produces the output shown in Figure 2.
Figure 1: Horizontal, Left-to-Right Figure 2: Horizontal, Right-to-Left
When both the number of rows and the number of columns have been set to non-zero values,
either by a constructor or by the setRows and setColumns methods, the number of columns
specified is ignored. Instead, the number of columns is determined from the specified number or
rows and the total number of components in the layout. So, for example, if three rows and two
columns have been specified and nine components are added to the layout, they will be displayedas three rows of three columns. Specifying the number of columns affects the layout only when
the number of rows is set to zero.
A layout manager that allows multiple components to be laid out either vertically
or horizontally. The components will not wrap so, for example, a vertical arrangement ofcomponents will stay vertically arranged when the frame is resized.
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/GridBagConstraints.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/GridBagConstraints.htmlhttp://java.sun.com/j2se/1.4.2/docs/api/java/awt/ComponentOrientation.html8/3/2019 Student Mgt Documentation
66/104
8/3/2019 Student Mgt Documentation
67/104
BoxLayout well. Adding components to multiple nested boxes is a powerful way to get the
arrangement you want.
A border layout lays out a container, arranging and resizing its components to fit
in five regions: north, south, east, west, and center. Each region may contain no more than one
component, and is identified by a corresponding constant: NORTH, SOUTH, EAST, WEST, and
CENTER. When adding a component to a container with a border layout, use one of these five
constants
In addition, BorderLayout supports the relative positioning constants, PAGE_START,
PAGE_END, LINE_START, and LINE_END. In a container whose ComponentOrientation is set to
ComponentOrientation.LEFT_TO_RIGHT, these constants map to NORTH, SOUTH, WEST, and
EAST, respectively.
For compatibility with previous releases, BorderLayout also includes the relative positioning
constants BEFORE_FIRST_LINE, AFTER_LAST_LINE, BEFORE_LINE_BEGINS and
AFTER_LINE_ENDS. These are equivalent to PAGE_START, PAGE_END, LINE_START and LINE_END
respectively. For consistency with the relative positioning constants used by other components,
the latter constants are preferred.
Mixing both absolute and relative positioning constants can lead to unpredicable results. If youuse both types, the relative constants will take precedence. For example, if you add components
using both the NORTH and PAGE_START constants in a container whose orientation is
LEFT_TO_RIGHT, only the PAGE_START will be layed out.
NOTE: Currently (in the Java 2 platform v1.2), BorderLayout does not support vertical
orientations. The isVertical setting on the container's ComponentOrientation is not
respected.
The components are laid out according to their preferred sizes and the constraints of thecontainer's size. The NORTH and SOUTH components may be stretched horizontally; the EAST and
WEST components may be stretched vertically; the CENTER component may stretch both
horizontally and vertically to fill any space left over.
Here is an example of five buttons in an applet laid out using the BorderLayout layout manager:
8/3/2019 Student Mgt Documentation
68/104
The code for this applet is as follows:
A CardLayout object is a layout manager for a container. It treats each component in the
container as a card. Only one card is visible at a time, and the container acts as a stack of cards.
The first component added to a CardLayout object is the visible component when the container
is first displayed.
The ordering of cards is determined by the container's own internal ordering of its component
objects. CardLayout defines a set of methods that allow an application to flip through these
cards sequentially, or to show a specified card.
2 Applets
An applet is a special kind of Java program that a browser enabled
with Java technology can download from the internet and run. An
applet is typically embedded inside a web-page and runs in the
context of the browser. An applet must be a subclass of the
8/3/2019 Student Mgt Documentation
69/104
java.applet.Applet class, which provides the standard
interface between the applet and the browser environment.
Swing provides a special subclass of Applet, called
javax.swing.JApplet, which should be used for all applets that
use Swing components to construct their GUIs.
By calling certain methods, a browser manages an applet life cycle, if
an applet is loaded in a web page.
Life Cycle of an Applet:
Basically, there are four methods in the Applet class on which any
applet is built.
init: This method is intended for whatever
initialization is needed for your applet. It is called after
the param attributes of the applet tag.
start: This method is automatically called after
init method. It is also called whenever user returns tothe page containing the applet after visiting other
pages.
stop: This method is automatically called
whenever the user moves away from the page
containing applets. You can use this method to stop an
animation.
destroy: This method is only called when the
browser shuts down normally.
8/3/2019 Student Mgt Documentation
70/104
Thus, the applet can be initialized once and only once, started and
stopped one or more times in its life, and destroyed once and only
once.
For more information on Life Cylce of an Applet,
please refer toThe Life Cycle of an Applet section.
Applets vs. Applications
In the early days of Java, one of the critical advantages that Java
applets had over Java applications was that applets could be easily
deployed over the web while Java applications required a more
cumbersome installation process. Additionally, since applets are
downloaded from the internet, by default they have to run in a
restricted security environment, called the "sandbox", to ensure they
don't perform any destructive operations on the user's computer, such
as reading/writing to the filesystem.
However, the introduction of Java has made it possible for Java
applications to also be easily deployed over the web, as well as run in
a secure environment. This means that the predominant difference
between a Java applet and a Java application is that an applet runs in
the context of a web browser, being typically embedded within an
html page, while a Java application runs standalone, outside the
browser. Thus, applets are particularly well suited for providing
functions in a web page which require more interactivity or animation
than HTML can provide, such as a graphical game, complex editing,
or interactive data visualization. The end user is able to access the
functionality without leaving the browser.
http://java.sun.com/docs/books/tutorial/deployment/applet/lifeCycle.htmlhttp://java.sun.com/docs/books/tutorial/deployment/applet/lifeCycle.html8/3/2019 Student Mgt Documentation
71/104
Loading Applets in a Web Page
In order to load an applet in a web page, you
must specify the applet class with appropriate applet
tags. A simple example is below:
For development and testing purposes, you can run your applet using
the lightweight appletviewer application that comes with the JDK.
For example, if AppletWorld.html is the html file name, then you run
the command as
appletviewer AppletWorld.html
Once you know your applet runs within the appletviewer, it is
important to test your applet running in a web browser by loading the
applet's web page into the browser window. The browser can retrieve
the class files either from the internet or from the local working
directory used during development. If you make changes to your
applet's code while it is loaded in the browser, then you must
recompile the applet and press the "Shift + Reload" button in the
browser to load the new version.
Swings
Swing is important to develop Java programs with a graphical user interface
(GUI). There are many components which are used for the building of GUI in
8/3/2019 Student Mgt Documentation
72/104
Swing. The Swing Toolkit consists of many components for the building of GUI.
These components are also helpful in providing interactivity to Java
applications. Following are components which are included in Swing toolkit:
list controls
buttons
labels
tree controls
table controls
The main characteristics of the Swing toolkit
platform independent
customizable
extensible
configurable
lightweight
Swing is probably the most