You are on page 1of 77

ABSTRACT

News Portal aims at establishing a comprehensive portal for providing news. This
portal is an organized conduit and online, for providing up-to-date news information on
the Internet. The portal will consist of sections addressing different information needs. It
informs, provides extensive resources, and services online for the general public. It
provides a vast range of new opportunities for feedback, customization of content,
instant publishing,(hyper)linking, articles etc. It is concerned with the development of a
system that is simple and easy to use yet a powerful web application for sharing,
managing and controlling the news items in a secured manner.

The main facilities of this project are


1. Provision for dynamic linking
2. Ability to read news items posted in a chronological manner.
3. Ability to post feedback, write articles, etc.
4. Provision for uploading multiple news using single XML file.
5. Ability to search through published news based on date of publish, place or word
6. Provision for users to mail news contents

TABLE OF CONTENTS

1. INTRODUCTION ............................................................................................................. - 2 -
2. SPECIFICATION REQUIREMENT ................................................................................ - 5 -
3. TECHNOLOGIES USED ................................................................................................. - 8 -
4. BEHAVIORAL DESCRIPTION .................................................................................... - 15 -
5. SYSTEM DESIGN .......................................................................................................... - 37 -
6. Testing and Implementation ............................................................................................ - 48 -
7. OUT-PUT RESULTS ...................................................................................................... - 55 -
8. Conclusion ....................................................................................................................... - 76 -

-1-
9. Bibliography .................................................................................................................... - 77 -

1. INTRODUCTION
India Study Channel is a comprehensive tool providing information about the organizations
providing educational Services. It is an online search engine to find list of various college,
Universities, educational Institute, etc.

The portal provides detailed information on educational institutions, examinations, education


system, exam results, entrance examinations, previous years university question papers etc,
to its members. The User has to get registered to enjoy all the facilities in the portal. The
registered member can be student or any teaching faculty or any one who is in need of the
information.

The website provide details like the courses, fee structure offered by the educational academy,
or details of the old student as per the course and year in the academy details. There are two
groups involved in the working of the portal

-2-
Administrator
Administrator is a person who administers the portal. He updates the details of the educational
services provided by the website. He adds edits and deletes college or university or any other
educational services details.

User
User is a person who needs the details of colleges, courses, fee structures etc.

Features

The website is provides full-fledged details of various colleges, Universities,


Academic institutions, courses offered by them, fees, etc.
The user has to get registered if they would like to enjoy the complete facilities
offered by the website.
The portal even provides detailed information on educational institutions,
examinations, education system, exam results, entrance examinations, previous
years university question papers etc to its members.
The administrator administers the website; he edits, adds or delete the required
details.
1.1 Purpose
The main objective of the system is that providing educational institutions informations and
their services to students and colleges etc. This is a totally web based search engine, its main
aim is that provide all education services details in one place, user does not need to search
different sites to get information about any University or Educational services. India study
channel gives the full details of the all educational services information and Examination
notifications etc at one system.

1.1.1 Advantages

India study channel main advantage is all sorts of educational services information
will be available in one place
It provides the details of Universities and affiliated college details and respective
course details at one system.

-3-
In India study channel we can add the new University, college and course to increase
the selecting options for the students
User should have a one desktop or system is enough for using all facilities staying
anywhere in the world.

1.2 Scope

1.2.1 Existing System with Limitations

The existing system has lot of flaws, because here they have to work more on manually
instead of working on system. In present system they have to go through lots of news papers
and magazines to know the information about the details of Colleges and Universities. They
wont get the detailed information with out going the different sites /News papers /
Magazines. In this system they have to spent lot of time, money etc to getting the exact
information. In some cases he may misses the examinations notifications and entrance exam
dates in that conditions he will loss the valuable chance in his career life. This system is
developed to overcome the flaws and problems in existing system. They want replace with a
system which gives the total information in a one tool, which is user friendly, time saving etc.

1.2.2 Proposed System Features

India Study Channel is an educational portal providing reliable and comprehensive


information on educational institutions in India and Abroad.
Students and their parents can find information on Schools, Colleges, Universities,
Examination results, Educational announcements, events and news.
Proposed system is developed with convenient modules, it takes the user where he
wants to go.
This system provides the total information about the courses, colleges and Universities
in India and abroad
It provides the details about the educational services provided by the registered
Colleges and Universities
In College module, we can find details about colleges in India, and search the colleges
by name and various other parameters.

-4-
Courses module gives the courses available in India and abroad, and can view the
courses with its branches and offering colleges.

2. SPECIFICATION REQUIREMENT

2.1 Software requirement Specification

HTML
Java Server Pages and Servlets
Java Script, Java Mail, JDBC
My SQL
Win NT/2000

2.2 Hardware Requirement Specification

Pentium III/IV
20 GB Hard Disk, 64 -128 MB RAM or Above
10 Mbps Network Interface Card.

-5-
2.3 Communication Protocols

TCP/IP Protocol Transmission Control Protocol/Internet Protocol


FTP Protocol File Transfer Protocol
HTTP Protocol Hyper Text Transfer Protocol
HTML Hyper Text Markup Language

1. TCP /IP
TCP/IP stands for Transmission Control Protocol / Internet Protocol
TCP/IP was developed prior to the OSI model. Therefore Layers of TCP/IP protocol
suite do not match exactly with OSI model
TCP/IP consists of 5 Layer
Application Layer
Transport Layer
Internet Layer
Network Access Layer
Physical Layer

Application Layer
Provides access to the OSI environment for users and also provides distributed
information services
Transport Layer
Provides reliable transport, Transfer of data between end points
Internet Layer
It is used for establishing, maintaining and terminating connection
Network Layer
Provides a reliable transfer of data across the physical link sends blocks of data with
necessary synchronization
Physical Layer
Concerned with transmission of unstructured bit stream over physical medium
deals with mechanical, electrical, functional and procedural characteristics to
access the physical medium

-6-
2) Ftp
Ftp Stands for File Transfer Protocol
Ftp is the standard mechanism provided by TCP/IP. For copying a file from one
host to another.
Transferring files may be simple and straight forward, But some problems must be
delt as follows
Two systems may have different ways to represent text
Two systems have different directory structure
All of these have been solved by Ftp in every simple and elegant
approach
Ftp differs from other client server applications in that it establishes two connections
between the hosts, one connection is used for data transfer, the other for control
information separation of commands and data transfer makes Ftp more efficient
Ftp uses two well known TCP ports Port 21 is used for control connection, and port
20 is used for data connection

3) Http
Http stands for Hypertext Transfer Protocol
Http is a protocol used in the client side web browser used mainly in the
access of data on the World Wide Web
To facilitate the access of documents distributed throughout the world,
Http uses Locators
The URL stands for uniform resource locator for specifying any kind of
information on the internet
The URL defines 4 things Protocol, Host computer, ports and path
The protocol is the Client-Server program used to retrieve the document
.Many different protocols can retrieve a document among them are
Gopher, Ftp ,Http, News And Telnet the Most common is HTTP

-7-
The host is the computer on which the information is located although the
name of the computer can be alias which begin with the characters
WWW this is not mandatory

3. TECHNOLOGIES USED

3.1. JAVA SERVER PAGES

JSP not only enjoys cross-platform and cross-Web-server support, but effectively melds
the power of server-side Java technology with features of static HTML pages.
JSP Advantages
Separation of static from dynamic content: In JSP, the logic to generate the dynamic
content is kept separate from the static presentation templates by encapsulating it within
external Java beans components. When a page designer makes any changes to the
presentation template, the JSP page is automatically recompiled and reloaded into the web
server by the JSP engine.
Write Once Run Anywhere: JSP technology brings the Write Once, Run anywhere
paradigm to interactive Web pages.

-8-
Dynamic content can be served in a variety of formats: There is nothing that mandates the
static template data within a JSP page to be of a certain format.
JSP Architecture
The purpose of JSP is to provide a declarative, presentation-centric method of
developing servlets. JSP pages are subject to a translation phase and a request-processing
phase. The translation phase is carried phase is carried out only once, unless the JSP page
changes, in which case it is repeated. The JSP engine itself typically carries out the translation
phase, when it receives a request for the JSP page for the first time.
Life Cycle of A JSP: Life cycle of a JSP consists of the following three methods:
_jspInit
_jspService
_jspDestroy
JSP Syntax
Directives
JSPs can define information for the container with directives. Here is what directives look like
in a general form:
<%@ directive attribute="some Value" attribute="another Value" ... %>
There are three directives:
<%@ page ... %> specifies information that affects the page
<%@ include ... %> includes a file at the location of the include directive (parsed)
<%@ taglib ... %> allows the use of custom tags in the page
<%@ page language="java" %> will always be the first line of every JSP file.
Declarations
Declarations are used to specify supplemental methods and variables. You can think of these
are the page's private functions; they can only be called by the JSP where they are defined, or
by another JSP that includes it (using the <@ include > directive).
Here is a sample declaration:
<%! // this integer can be used anywhere in this JSP page
private int myVariable = -1; // this function can be called from anywhere in this JSP page
public boolean isPositive() {
return ( myVariable > 0 );
}
%>

-9-
Scriptlets
Scriptlets are bits of Java code. They can do anything but they will most likely concentrate on
generating HTML code or setting up variables to be part of later expressions.
Expressions
Expressions are special-purpose mini-Scriptlets used for evaluating expressions. This
could be something as simple as outputting the value of a variable, or a more complicated
Java expression, like calling a function and outputting the result.

3.2 Servlets

A servlet is a java programming language class that is used to extend the capabilities of
servers that host applications access via a request-response programming mode. Servlets are
Java technologys answer to Common Gateway Interface (CGI) Programming. They are
programs that run on a Web server, acting as middle layer between request coming from a
Web browser or other HTTP client and databases of applications on the HTTP server.

Read any data sent by the user: This data usually entered in a form on a Web page, but
could also come from a java applet or a custom HTTP client program.

Look up any other information about the request that is embedded in the HTTP
request: This information includes details about browser capabilities, cookies, the host name
of the requesting client, and so froth.

Generate the results: This process may require talking to a database, executing an RMI or
CORBA call, invoking a legacy application, or computing the response directly.

Format the results inside a document: In most cases, this involves embedding the
information inside an HTML page.

Set the appropriate HTTP response parameters: This means telling the browser what type
of document is being returned (e.g.HTML), setting cookies and caching parameters, and other
such tasks.

Send the document back to the client: This document may be sent in text format (HTML),
binary format (GIF images), or even in a compressed format like gzip that is layered on top of
some other underlying format.

- 10 -
The Javax.servlet and javax.servlet.http packages provide interfaces and classes for
writing servlets. All servlets must implement the Servlet interface, which defines life-cycle
methods. When implementing a generic service, you can use or extend the GenericServlet
class provided with the java Servlet API. The HttpServlet classes provide methods, such as
doGet and do Post, for handling HTTP-specific services.
To be a servlet, a class should extend HTTPServlet and override doGet or do Post (or
both), depending on whether the data is being sent by GET or by POST. These methods take
two arguments: An HttpServletRequest and an HttpServletResponse.The HttpServletRequest
have methods that let you find out about incoming information such as FORM data, HTTP
request headers, and the like. Finally, note that doGet and do Post are called by the service
method, and sometimes you may want to override service directly.

Servlet Life Cycle: The life cycle of a servlet is controlled by the container in which the
servlet has been deployed. When a request is mapped to a servlet, the container performs the
following steps.

1. If an instance of the servlet does not exist, the Web container:

Loads the servlet class.

Creates an instance of the Servlet class.


Initializes the servlet instance by calling the init method.
2. Invokes the service method, passing request and response objects.
If the container needs to remove the servlet, it finalizes the servlet by calling the servlets
destroy method.
3.3 History of MySQL
We started out with the intention of using the MySQL database system to connect to our
tables using our own fast low-level (ISAM) routines.This resulted in a new SQL interface to
our database but with almost the same API interface as MySQL.

The following list describes some of the important characteristics of the MySQL Database
Software. See also Section 1.6, MySQL Development Roadmap, for more information
about current and upcoming features.

Internals and Portability

Written in C and C++.

- 11 -
Tested with a broad range of different compilers.

Works on many different platforms.

Uses GNU Automake, Autoconf, and Libtool for portability.

APIs for C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl are available.

Data Types

Many data types: signed/unsigned integers 1, 2, 3, 4, and 8 bytes long, FLOAT,


DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME,
TIMESTAMP, YEAR, SET, ENUM, and OpenGIS spatial types.
Fixed-length and variable-length records.

Statements and Functions

Full operator and function support in the SELECT and WHERE clauses of queries.
For example:
mysql> SELECT CONCAT(first_name, ' ', last_name)
FROM citizen

Security

A privilege and password system that is very flexible and secure, and that allows host-based
verification. Passwords are secure because all password traffic is encrypted when you connect
to a server.

Scalability and Limits

Handles large databases. We use MySQL Server with databases that contain 50 million
records. We also know of users who use MySQL Server with 60,000 tables and about
5,000,000,000 rows.

Connectivity

- 12 -
Clients can connect to the MySQL server using TCP/IP sockets on any platform. On
Windows systems in the NT family (NT, 2000, XP, or 2003), clients can connect using named
pipes. On Unix systems, clients can connect using Unix domain socket files.

In MySQL 4.1 and higher, Windows servers also support shared-memory


connections if started with the --shared-memory option. Clients can connect
through shared memory by using the --protocol=memory option.

Localization

The server can provide error messages to clients in many languages. See
Section 5.11.2, Setting the Error Message Language.

Full support for several different character sets, including latin1 (cp1252), german,
big5, ujis, and more. For example, the Scandinavian characters , and are
allowed in table and column names. Unicode support is available as of MySQL
4.1.

Clients and Tools

MySQL Server has built-in support for SQL statements to check, optimize, and repair
tables. These statements are available from the command line through the mysqlcheck
client. MySQL also includes myisamchk, a very fast command-line utility for
performing these operations on MyISAM tables. See Chapter 5, Database
Administration.

All MySQL programs can be invoked with the --help or -? options to obtain online
assistance.

3.4 TOMCAT

Apache Tomcat is the servlet container that is used in the official Reference Implementation
for the Java Servlet and Java Server Pages technologies. The Java Servlet and Java Server
Pages specifications are developed by Sun under the Java Community Process.

Tomcat 5 implements the Servlet 2.4 and Java Server Pages 2.0 specifications and
includes many additional features that make it a useful platform for developing and deploying
web applications and web services.

- 13 -
Directories and files: Directories and Files

$CATALINA_HOME represents the root of your Tomcat installation. When we say,


"This information can be found in your $CATALINA_HOME/README.txt file" we mean to
look at the README.txt file at the root of your Tomcat install.

These are some of the key tomcat directories, all relative to $CATALINA_HOME:

/bin - Startup, shutdown, and other scripts. The *.sh files (for Unix systems)
are functional duplicates of the *.bat files (for Windows systems). Since the
Win32 command-line lacks certain functionality, there are some additional
files in here.

/conf - Configuration files and related DTDs. The most important file in here is
server.xml. It is the main configuration file for the container.

/logs - Log files are here by default.

/webapps - This is where your webapps go.

INSTALLING TOMCAT

Installing Tomcat on Windows can be done easily using the Windows installer. Installation
as a service: Tomcat will be installed as a Windows NT/2k/XP service no matter what setting
is selected. Using the checkbox on the component page sets the service as "auto" startup, so
that Tomcat is automatically startup when Windows starts. For optimal security, the service
should be affected a separate user, with reduced permissions (see the Windows Services
administration tool and its documentation).

Java location: The installer will use the registry or the JAVA_HOME
environment variable to determine the base path of the JDK or a JRE. If only a
JRE (or an incorrect path) is specified, Tomcat will run but will be unable to
compile JSP pages at runtime. Either all webapps will need to be precompiled
(this can be easily done using the Tomcat deployed), or the lib\tools. Jar file
from a JDK installation must be copied to the common\lib path of the Tomcat
installation.

- 14 -
Architecture Overview

Server: In the Tomcat world, a Server represents the whole container. A Server element
represents the entire Catalina servlet container. Therefore, it must be the single outermost
element in the conf/server.xml configuration file. Its attributes represent the characteristics of
the servlet container as a whole. Tomcat provides a default implementation of the Server
interface, and this is rarely customized by users.

4. BEHAVIORAL DESCRIPTION

4.1 Data Flow

Data Flow Diagrams

There are three types of DFDs they are


1. Context Level DFD
2. Top Level DFD and
3. Detailed Level DFD

- 15 -
Context Level DFD

In the Context Level the whole system is shown as a single process.

No data stores are shown.


Inputs to the overall system are shown together with data sources (as External
entities).
Outputs from the overall system are shown together with their destinations (as
External entities).

4.1.1 DFD

4.1.2. Use Case Documentation

USE CASE DIAGRAM


A use case diagram is a diagram that shows a set of use cases and actors and
relationships.
Contents
Use case commonly contain
Use cases
Actors
Dependency, generalization and association relationships

- 16 -
Administrator Use Case

Login

Student

Universities

Administrator

Colleges

Courses

Logout

User Use Case

- 17 -
Run Application

Universities

Colleges
User

Courses

Student

- 18 -
4.2 Data Flow Tables

DATA FLOW REPORT


FOR PROJECT

MODEL

Version

- 19 -
Process tree
0 Main process (0.level)
1 ISC (1.level)
1.1 Registration (2.level)
1.2 Login (2.level)
1.3 Universities (2.level)
1.4 colleges (2.level)
1.5 courses (2.level)
1.6 students (2.level)

Process list

Lowest Subprocess
Process no Process name External Process
level count
1 ISC NO NO Main process 6
1.1 Registration YES NO ISC -----
1.2 Login YES NO ISC -----
1.3 Universities YES NO ISC -----
1.4 colleges YES NO ISC -----
1.5 courses YES NO ISC -----
1.6 students YES NO ISC -----
Main process
Process list
Lowest Subprocess
Process no Process name External Process
level count
1 ISC NO NO Main process 6

Process 'ISC'
Process no 1
Process name ISC External NO
Level 1 Lowest level NO

Reference list for object 'ISC'


Object Object
Connected via Connected to Object type
source destination
X Permission Admin terminator
X viewInfo Admin terminator
X create college Admin terminator
X Login User terminator
X create course Admin terminator
X create university Admin terminator
X create student Admin terminator
X view course User terminator
X view university User terminator
X view student User terminator
X logout User terminator

- 20 -
Process 'ISC'

Process list
Lowest Subprocess
Process no Process name External Process
level count
1.1 Registration YES NO ISC -----
1.2 Login YES NO ISC -----
1.3 Universities YES NO ISC -----
1.4 colleges YES NO ISC -----
1.5 courses YES NO ISC -----
1.6 students YES NO ISC -----

Process 'Registration'
Process no 1.1
Process name Registration External NO
Level 2 Lowest level YES

Reference list for object 'Registration'


Object Object
Connected via Connected to Object type
source destination
X Registration User terminator-external
X Write Registration DB data store
X viewInfo Admin terminator-external

Process 'Login'
Process no 1.2
Process name Login External NO
Level 2 Lowest level YES

Reference list for object 'Login'


Object Object
Connected via Connected to Object type
source destination
X Permission Admin terminator-external
X Read Registration DB data store
X Login User terminator-external
X logout User terminator-external

- 21 -
Process 'Universities'
Process no 1.3
Process name Universities External NO
Level 2 Lowest level YES

Reference list for object 'Universities'


Object Object
Connected via Connected to Object type
source destination
X write University DB data store
X read University DB data store
X create university Admin terminator-external
X view university User terminator-external

Process 'colleges'
Process no 1.4
Process name colleges External NO
Level 2 Lowest level YES

Reference list for object 'colleges'


Object Object
Connected via Connected to Object type
source destination
X write College DB data store
X read College DB data store
X create college Admin terminator-external

Process 'courses'
Process no 1.5
Process name courses External NO
Level 2 Lowest level YES

Reference list for object 'courses'


Object Object
Connected via Connected to Object type
source destination
X write Course DB data store
X read Course DB data store
X create course Admin terminator-external
X view course User terminator-external
X request User terminator-external

- 22 -
Process 'students'
Process no 1.6
Process name students External NO
Level 2 Lowest level YES

Reference list for object 'students'


Object Object
Connected via Connected to Object type
source destination
X write Student DB data store
X read Student DB data store
X create student Admin terminator-external
X view student User terminator-external
X request User terminator-external

Terminator list
Terminator name Process External
User Main process NO
Admin Main process NO
User ISC YES
Admin ISC YES

Terminator details
Terminator 'User'
Terminator name User External NO

Reference list for object 'User'


Object Object
Connected via Connected to Object type
source destination
X Login ISC process
X view course ISC process
X view university ISC process
X view student ISC process
X logout ISC process

- 23 -
Terminator 'Admin'
Terminator name Admin External NO

Reference list for object 'Admin'


Object Object
Connected via Connected to Object type
source destination
X Permission ISC process
X viewInfo ISC process
X create college ISC process
X create course ISC process
X create university ISC process
X create student ISC process

Terminator 'User'
Terminator name User External YES

Reference list for object 'User'


Object Object
Connected via Connected to Object type
source destination
X Registration Registration process
X Login Login process
X view course courses process
X view university Universities process
X view student students process
X logout Login process
X request courses process
X request students process

Terminator 'Admin'
Terminator name Admin External YES

Reference list for object 'Admin'


Object Object
Connected via Connected to Object type
source destination
X Permission Login process
X viewInfo Registration process
X create college colleges process
X create course courses process
X create university Universities process
X create student students process

- 24 -
Datastore list
Data store name Process Entity name External
Registration DB ISC ----- NO
University DB ISC ----- NO
College DB ISC ----- NO
Course DB ISC ----- NO
Student DB ISC ----- NO
Data store details
Data store 'Registration DB'
Data store name Registration DB External NO
Entity name -----

Reference list for object 'Registration DB'


Object Object
Connected via Connected to Object type
source destination
X Write Registration process
X Read Login process

Data store 'University DB'


Data store name University DB External NO
Entity name -----

Reference list for object 'University DB'


Object Object
Connected via Connected to Object type
source destination
X write Universities process
X read Universities process

Data store 'College DB'


Data store name College DB External NO
Entity name -----

Reference list for object 'College DB'


Object Object
Connected via Connected to Object type
source destination
X write colleges process
X read colleges process

Data store 'Course DB'


Data store name Course DB External NO
Entity name -----

Reference list for object 'Course DB'


Object Object
Connected via Connected to Object type
source destination
X write courses process
X read courses process

- 25 -
Data store 'Student DB'
Data store name Student DB External NO
Entity name -----

Reference list for object 'Student DB'


Object Object
Connected via Connected to Object type
source destination
X write students process
X read students process

Data flow list


Data flow name Process External
Permission Main process NO
Permission ISC YES
Registration ISC NO
Write ISC NO
Read ISC NO
write ISC NO
read ISC NO
write ISC NO
read ISC NO
write ISC NO
read ISC NO
write ISC NO
read ISC NO
viewInfo Main process NO
viewInfo ISC YES
create college Main process NO
create college ISC YES
Login Main process NO
Login ISC YES
create course Main process NO
create course ISC YES
create university Main process NO
create university ISC YES
create student Main process NO
create student ISC YES
view course Main process NO
view course ISC YES
view university Main process NO
view university ISC YES
view student Main process NO
view student ISC YES
logout Main process NO
logout ISC YES
request ISC NO
request ISC NO

- 26 -
Data flow details
Data flow 'Permission'
Data flow name Permission External NO
Type Data flow

Data flow direction


Source Destination
Object name Admin ISC
Object type Terminator process

Data flow 'Permission'


Data flow name Permission External YES
Type Data flow

Data flow direction


Source Destination
Object name Admin Login
Object type terminator-external process

Data flow 'Registration'


Data flow name Registration External NO
Type Data flow

Data flow direction


Source Destination
Object name User Registration
Object type terminator-external process

Data flow 'Write'


Data flow name Write External NO
Type Data flow

Data flow direction


Source Destination
Object name Registration Registration DB
Object type Process data store

Data flow 'Read'


Data flow name Read External NO
Type Data flow

Data flow direction


Source Destination
Object name Registration DB Login
Object type data store process

- 27 -
Data flow 'write'
Data flow name write External NO
Type Data flow

Data flow direction


Source Destination
Object name Universities University DB
Object type Process data store

Data flow 'read'


Data flow name read External NO
Type Data flow

Data flow direction


Source Destination
Object name University DB Universities
Object type data store process

Data flow 'write'


Data flow name write External NO
Type Data flow

Data flow direction


Source Destination
Object name colleges College DB
Object type Process data store

Data flow 'read'


Data flow name read External NO
Type Data flow

Data flow direction


Source Destination
Object name College DB colleges
Object type data store process

Data flow 'write'


Data flow name write External NO
Type Data flow

Data flow direction


Source Destination
Object name courses Course DB
Object type Process data store

- 28 -
Data flow 'read'
Data flow name read External NO
Type Data flow

Data flow direction


Source Destination
Object name Course DB courses
Object type data store process

Data flow 'write'


Data flow name write External NO
Type Data flow

Data flow direction


Source Destination
Object name students Student DB
Object type Process data store

Data flow 'read'


Data flow name read External NO
Type Data flow

Data flow direction


Source Destination
Object name Student DB students
Object type data store process

Data flow 'viewInfo'


Data flow name viewInfo External NO
Type Data flow

Data flow direction


Source Destination
Object name ISC Admin
Object type Process terminator

Data flow 'viewInfo'


Data flow name viewInfo External YES
Type Data flow

Data flow direction


Source Destination
Object name Registration Admin
Object type Process terminator-external

- 29 -
Data flow 'create college'
Data flow name create college External NO
Type Data flow

Data flow direction


Source Destination
Object name Admin ISC
Object type Terminator process

Data flow 'create college'


Data flow name create college External YES
Type Data flow

Data flow direction


Source Destination
Object name Admin colleges
Object type terminator-external process

Data flow 'Login'


Data flow name Login External NO
Type Data flow

Data flow direction


Source Destination
Object name User ISC
Object type Terminator process

Data flow 'Login'


Data flow name Login External YES
Type Data flow

Data flow direction


Source Destination
Object name User Login
Object type terminator-external process

Data flow 'create course'


Data flow name create course External NO
Type Data flow

Data flow direction


Source Destination
Object name Admin ISC
Object type Terminator process

- 30 -
Data flow 'create course'
Data flow name create course External YES
Type Data flow

Data flow direction


Source Destination
Object name Admin courses
Object type terminator-external process

Data flow 'create university'


Data flow name create university External NO
Type Data flow

Data flow direction


Source Destination
Object name Admin ISC
Object type Terminator process

Data flow 'create university'


Data flow name create university External YES
Type Data flow

Data flow direction


Source Destination
Object name Admin Universities
Object type terminator-external process

Data flow 'create student'


Data flow name create student External NO
Type Data flow

Data flow direction


Source Destination
Object name Admin ISC
Object type Terminator process

Data flow 'create student'


Data flow name create student External YES
Type Data flow

Data flow direction


Source Destination
Object name Admin students
Object type terminator-external process

- 31 -
Data flow 'view course'
Data flow name view course External NO
Type Data flow

Data flow direction


Source Destination
Object name ISC User
Object type Process terminator

Data flow 'view course'


Data flow name view course External YES
Type Data flow

Data flow direction


Source Destination
Object name courses User
Object type Process terminator-external

Data flow 'view university'


Data flow name view university External NO
Type Data flow

Data flow direction


Source Destination
Object name ISC User
Object type Process terminator

Data flow 'view university'


Data flow name view university External YES
Type Data flow

Data flow direction


Source Destination
Object name Universities User
Object type Process terminator-external

Data flow 'view student'


Data flow name view student External NO
Type Data flow

Data flow direction


Source Destination
Object name ISC User
Object type Process terminator

- 32 -
Data flow 'view student'
Data flow name view student External YES
Type Data flow

Data flow direction


Source Destination
Object name students User
Object type Process terminator-external

Data flow 'logout'


Data flow name logout External NO
Type Data flow

Data flow direction


Source Destination
Object name ISC User
Object type Process terminator

Data flow 'logout'


Data flow name logout External YES
Type Data flow

Data flow direction


Source Destination
Object name Login User
Object type Process terminator-external

Data flow 'request'


Data flow name request External NO
Type Data flow

Data flow direction


Source Destination
Object name User courses
Object type terminator-external process

Data flow 'request'


Data flow name request External NO
Type Data flow

Data flow direction


Source Destination
Object name User students
Object type terminator-external process

- 33 -
Data flow table
Read Write Datastore Process
Registration DB ISC
x Registration DB Registration
x Registration DB Login
Registration DB Universities
Registration DB colleges
Registration DB courses
Registration DB students
University DB ISC
University DB Registration
University DB Login
x x University DB Universities
University DB colleges
University DB courses
University DB students
College DB ISC
College DB Registration
College DB Login
College DB Universities
x x College DB colleges
College DB courses
College DB students
Course DB ISC
Course DB Registration
Course DB Login
Course DB Universities
Course DB colleges
x x Course DB courses
Course DB students
Student DB ISC
Student DB Registration
Student DB Login
Student DB Universities
Student DB colleges
Student DB courses
x x Student DB students

- 34 -
4.3 Process Flow

4.3.1 Activity Diagrams

An activity diagram shows the flow from activity to activity. An activity is an ongoing non-
atomic execution within a state machine.
Activities ultimately result in some action, which is made up of executable atomic
computations that result in a change in state of the system or the return of a value.
Activity diagrams commonly contain
Activity states and action states
Transitions
Objects

Like all other diagrams, activity diagrams may contain notes and constrains

Administrator Process

Login

Validation

Universitites Colleges Courses Student

Create/Upd
ate/Delete

Logout

- 35 -
User Process

Universities

Colleges Courses
Student

View

- 36 -
5. SYSTEM DESIGN
The main focus of the analysis phase of Software development is on What needs to be done.
The objects discovered during the analysis can serve as the framework or Design. The classs
attributes, methods and association identified during analysis must be designed for
implementation language. New classes must be introduced to store intermediate results during
the program execution.
Emphasis shifts from the application domain o implementation and computer such as
user interfaces or view layer and access layer. During analysis, we look at the physical entities
or business objects in the system, that is, which players and how they cooperate to do the
work of the application. These objects represent tangible elements of the business.

During the Design phase, we elevate the model into logical entities, some of which
might relate more to the computer domain as people or employees. Here his goal is to design
the classes that we need to implement the system the difference is that, at this level we focus
on the view and access classes, such as how to maintain information or the best way o interact
with a user or present information.

Design process
During the design phase the classes identified in object-oriented analysis Must be revisited
with a shift focus to their implementation. New classes or attribute and Methods must be an
added for implementation purposes and user interfaces. The object-oriented design process
consists of the following activities:

1. Apply design axioms to design classes, their attributes, methods, associations, structure
And protocols Refine and complete the static UML class diagram by adding details to the
UML diagram. This step consists of following activities. *Refine attributes *Design methods
and protocols by utilizing a UML activity diagram to represent the methods algorithms.
*Refine associations between classes
*Refine class hierarchy and design with inheritance
*Iterate and refine again
2. Design the access layer
Create mirror classes: For every business class identified and created. For
example, if there are three business classes, create three access layer classes.

- 37 -
Identify access layer class relationships.
Simplify classes and their relationships: The main goal here is to eliminate
redundant classes and structures.
*Redundant classes: Do not keep two classes that perform similar translate results
activities. Simply select one and eliminate the other.
*Method classes: Revisit the classes that consist of only one or two methods to see
if they can be eliminated or combined with existing classes.
Iterate and refine again.
Define the view layer classes
Design the macro level user interface, identifying view layer objects.
Design the micro level user interface, which includes these activities:
* Design the view layer objects by applying the design axioms and
corollaries.
* Built a prototype of the view layer interface.
Test usability and user satisfaction
Iterate and refine.
3. Iterate refine the whole design process. From the class diagram, you can begin to
extrapolate which classes you will have to built and which existing classes you can reuse.
As you do this, also begin this, also begin thinking about the inheritance structure. If you
have several classes that seem relates but have specific differences.
Design also must be traceable across requirements, analysis, design from the
Requirements model.
DESIGN AXIOMS
Axioms are a fundamental truth that always is observed to be valid and for which there
is no counter example or exception. Such explains that axioms may be hypothesized form a
large number of observations by nothing the common phenomena shared by all cases; they
cannot be proven or derived, but they can be invalidated by counter examples or exceptions.
A theorem is a proposition that may not be self-evident but can be proven from accepted
axioms. If therefore, is equivalent to a law or principle. A corollary is a proposition that
follows from an axioms or another proposition that has been proven. Again, corollary is
shown to be valid or not valid in the same manner as a theorem. In the two important axioms

- 38 -
axiom 1 deals with relationships between system components and axiom 2 deals with the
complexity of design.

The following the two important axioms


Axiom 1: The independence axiom, which maintain the independence of the components.
Axiom 2: The information axioms that maintain the information content of the design.
Axioms1 states that, during the design process, as we go from requirement and use case to a
system component, each component must satisfy that requirement without affecting other
requirements.
An axiom 2 is concerned with simplicity. Scientific theoreticians often rely on a general rule
known as Occams razor, after William of Occam. He says, The best theory explains the
known facts with a minimum amount of complexity and maximum simplicity and
straightforwardness.
The best designs usually involve the least complex code but not necessarily the fewest
number of classes or methods. Minimizing complexity should be the goal, because that
produces the most easily maintained and enhanced application. In an object-oriented system,
the best way to minimize complexity is to use inheritance and the systems built in classes and
to add as little as possible to what already is there.
From the two design axioms, many corollaries may be derived as a direct consequence of the
axioms. These corollaries may be more useful in marking specific design decisions, since they
can be applied to actual situations.
1. Uncoupled design with less information content: Highly cohesive objects can improve
coupling because only a minimal amount of essential information need be passed
between objects. The degree or strength of coupling between two components is
measured by the amount and complexity of information transmitted between them.
2. Single purpose: Each class must have single, clearly defined purposes.
3. Large number of simple classes: Keeping the classes simple allows reusability.
Large and complex classes are too specialized to be reused.
4. Strong mapping: There must be a strong association between the physical system and
logical design. During the design phase, we need to design this class, design its
methods, its association with other objects. So a strong mapping links classes should
be identified.

- 39 -
5. Standardization: promote standardization by designing interchangeable and reusing
existing classes or components.
6. Design with inheritance: Common behavior must be moved to super classes. The
super class-sub class structure must make logical sense.

Refining attributes and methods

Attributes identified in object oriented analyzed must be refined in the design phase. In the
analysis phase, the name of the attributes was sufficient. But in the design phase, detailed
information must be added to the model. The three basic types of attributes are:
1. Single valued attributes: This has only value or state.
2. Multiplicity or multivalue attributes: This has a collection of many values at any point
in time.
3. Instance connection attributes: This is required to provide the mapping needed by an
object to fulfill its responsibilities.

UML attribute presentation

Visibility name: type-expression=initial-value


Visibility indicates either public visibility or protected visibility or private visibility. The
public visibility indicates that the attribute can be accessible to all classes. The protected
visibility indicates that the accessibility is given to the subclasses and operations of the class.
The private visibility indicates that the accessibility can be given only to the operations of the
class only.
Type expression is a language dependent specification of the implementation type of an
attribute. Initial value is a language dependent expression for the initial value is optional.

5.1 Sequence and collaboration diagrams

An interaction diagram shows an interaction, consisting of a set of objects and their


relationships, including the messages that may be dispatched among them.

- 40 -
A sequence diagram is an interaction diagram that emphasizes the time ordering of
messages.
Graphically, a sequence diagram is a table that shows objects arranged along x-axis and
messages, ordered in increasing time, along the y-axis.
Contents
Sequence diagrams commonly contain the following:
Objects
Links
Messages
Like all other diagrams, sequence diagrams may contain notes and constrains

- 41 -
Administrator Sequence Diagram

: Login :Universities :Colleges :Courses :Students


: Administrator

1: Login Reques()
valid()

response()

2: create/update/delete()

response()

3: create/update/delete()

response

4: create/update/delete()
response()

5: create/update/delete()

6: marklist details create()

valid()

response()

- 42 -
User Sequence

: Run :Universities :Colleges :Courses :Student


: User

1: application()

response()

2: view()

response()

3: view()
response()

4: view()
response()

5: view() / search()

response()

- 43 -
Collaboration Diagram
- Collaboration is a society of classes, interfaces, and other elements that work together to
provide some cooperative behavior thats bigger than the sum of all its parts.
- Collaboration is also the specification of how an element, such as a classifier or an
operation, is realized by a set of classifiers and associations playing specific roles used in a
specific way
Contents
Collaboration diagrams commonly contain the following:
Objects
Links
Messages
Like all other diagrams, sequence diagrams may contain notes and constrains.

Administrator Collaboration

2: valid()

: Login
1: 1: Login Reques()

4: 2: create/update/delete()
3: response()
:Universiti
es
: Administrator 5: response()
10: 5: create/update/delete()
11: 6: marklist details create()

12: valid()
13: response()
6: 3: create/update/delete()
7: response

:Students

8: 4: create/update/delete()
:Colleges
:Courses

9: response()

- 44 -
User Collaboration

: Run
1: 1: application()

3: 2: view()
2: response()

:Universiti
: User 4: response() es
9: 5: view() / search()

10: response()

5: 3: view() 7: 4: view()
6: response()
8: response()
:Student

:Colleges
:Courses

Component Diagram
Administratir

User Universities Colleges Courses Student

Database JDBC

- 45 -
Deployment Diagram

- A deployment diagram is a diagram that shows the configuration of run time processing
nodes and the components that live on them.
- Graphically, a deployment diagram is collection of vertices and arcs.

Contents
- Deployment diagram commonly contain the following things:
Nodes
Dependency and association relationships
- Like all other diagrams, deployment diagrams may contain notes and constraints.
- Deployment diagrams may also contain components, each of which must live on some
node.
- Deployment diagrams may also contain packages or subsystems, both of which are used
to group elements of your model into larger chunks.

Database Server

MySQL Server

Application Server

J2SE
Server

USER

Servlets
Application

W eb
Browser

- 46 -
5.2 Class Diagrams

- 47 -
5.3 E-R Diagrams

Registration
University College
User_Id: INTEGER
University_Id: INTEGER College_Id: VARCHAR(45)
User_Name: VARCHAR(45)
Password: VARCHAR(45) University_Name: VARCHAR(45) College_Name: VARCHAR(45)
Address: VARCHAR(45) Location: VARCHAR(45) City: VARCHAR(45)
Phone_Number: INTEGER Phone_Number: INTEGER Category: VARCHAR(45)
EMail_Id: VARCHAR(45) Address: VARCHAR(45) EMail: VARCHAR(45)
EMail_Id: VARCHAR(200) Phone: INTEGER
Unviversity: VARCHAR(45)
Login
User_Id: INTEGER
Pasword: VARCHAR(45)
Role: VARCHAR(45)

Course
Course_Id: INTEGER
Course_Name: VARCHAR(45)
Fee: INTEGER
Seats: VARCHAR(45)
College_Id: VARCHAR(45)

- 48 -
6. Testing and Implementation

Testing
Testing Methodologies
o Black box Testing:
o White box Testing.
o Gray Box Testing.

Levels of Testing
o Unit Testing.
o Module Testing.
o Integration Testing.
o System Testing.
o User Acceptance Testing.

Types Of Testing
o Smoke Testing.
o Sanitary Testing.
o Regression Testing.
o Re-Testing.
o Static Testing.
o Dynamic Testing.
o Alpha-Testing.
o Beta-Testing.
o Monkey Testing.
o Compatibility Testing.
o Installation Testing.
o Adhoc Testing.
o Ext.
TCD (Test Case Documentation)
STLC
o Test Planning.

- 49 -
o Test Development.
o Test Execution.
o Result Analysis.
o Bug-Tracing.
o Reporting.

Microsoft Windows Standards


Manual Testing
Automation Testing (Tools)
o Win Runner.
o Test Director
Testing
The process of executing a system with the intent of finding an error.
Testing is defined as the process in which defects are identified, isolated, subjected for
rectification and ensured that product is defect free in order to produce the quality
product and hence customer satisfaction.
Quality is defined as justification of the requirements
Defect is nothing but deviation from the requirements
Defect is nothing but bug.
Testing --- The presence of bugs
Testing can demonstrate the presence of bugs, but not their absence
Debugging and Testing are not the same thing!
Testing is a systematic attempt to break a program or the AUT
Debugging is the art or method of uncovering why the script /program did not execute
properly.
Testing Methodologies
Black box Testing: is the testing process in which tester can perform testing on an
application without having any internal structural knowledge of application.
Usually Test Engineers are involved in the black box testing.
White box Testing: is the testing process in which tester can perform testing on an
application with having internal structural knowledge.
Usually The Developers are involved in white box testing.

- 50 -
Gray Box Testing: is the process in which the combination of black box and white
box techniques are used.
Levels of Testing

Module1 Module2 Module3


Units Units Units

i/p Integration o/p i/p Integration o/p

System Testing: Presentation + business +Databases


UAT: user acceptance testing

Types of Testing
Smoke Testing: is the process of initial testing in which tester looks for the availability of
all the functionality of the application in order to perform detailed testing on them. (Main
check is for available forms)
Sanity Testing: is a type of testing that is conducted on an application initially to check for
the proper behavior of an application that is to check all the functionality are available before
the detailed testing is conducted by on them.
Regression Testing: is one of the best and important testing. Regression testing is the
process in which the functionality, which is already tested before, is once again tested
whenever some new change is added in order to check whether the existing functionality
remains same.
Re-Testing: is the process in which testing is performed on some functionality which is
already tested before to make sure that the defects are reproducible and to rule out the
environments issues if at all any defects are there.
Static Testing: is the testing, which is performed on an application when it is not been
executed. ex: GUI, Document Testing

- 51 -
Dynamic Testing: is the testing which is performed on an application when it is being
executed. ex: Functional testing.
Alpha Testing: it is a type of user acceptance testing, which is conducted on an application
when it is just before released to the customer.
Beta-Testing: it is a type of UAT that is conducted on an application when it is released to
the customer, when deployed in to the real time environment and being accessed by the real
time users.
Monkey Testing: is the process in which abnormal operations, beyond capacity operations
are done on the application to check the stability of it in spite of the users abnormal behavior.
Compatibility testing: it is the testing process in which usually the products are tested on
the environments with different combinations of databases (application servers,
browsersetc) In order to check how far the product is compatible with all these
environments platform combination.
Installation Testing: it is the process of testing in which the tester try to install or try to
deploy the module into the corresponding environment by following the guidelines produced
in the deployment document and check whether the installation is successful or not.
Adhoc Testing: Adhoc Testing is the process of testing in which unlike the formal testing
where in test case document is used, with out that test case document testing can be done of
an application, to cover that testing of the future which are not covered in that test case
document. Also it is intended to perform GUI testing which may involve the cosmotic issues.

TCD (Test Case Document)


Test Case Document Contains
Test Scope (or) Test objective
Test Scenario
Test Procedure
Test case
This is the sample test case document for the Acadamic details of student project:
Test scope
Test coverage is provided for the screen Acadamic status entry form of a student
module of university management system application
Areas of the application to be tested

- 52 -
Test Scenario
When the office personals use this screen for the marks entry, calculate the status
details, saving the information on students basis and quit the form.
Test Procedure
The procedure for testing this screen is planned in such a way that the data entry,
status calculation functionality, saving and quitting operations are tested in terms of
Gui testing, Positive testing, Negative testing using the corresponding Gui test cases,
Positive test cases, Negative test cases respectively

Test Cases
Template for Test Case
T.C.No Description Exp Act Result

Guidelines for Test Cases


1. GUI Test Cases
Total no of features that need to be check
Look & Feel
Look for Default values if at all any (date & Time, if at all any require)
Look for spell check

Example for GUI Test cases:

T.C. Actual
No Description Expected value value Result
Check for all the features in The screen must contain
1 the screen all the features
Check for the alignment of The alignment should be
2 the objects as per the validations in proper way

2. Positive Test Cases:


The positive flow of the functionality must be considered
Valid inputs must be used for testing

- 53 -
Must have the positive perception to verify whether the requirements are justified.
Example for Positive Test cases:
T.C. Description Expected value Actual Result
No value
1 Check for the date Time The date and time of the
Auto Display system must be displayed
2 Enter the valid Roll no into the It should accept
student roll no field

3. Negative Test Cases:


Must have negative perception.
Invalid inputs must be used for test.
Example for Negative Test cases:
T.C. Description Expected value Actual Result
No value
1 Try to modify the information in Modification should not
date and time be allow
2 Enter invalid data in to the It should not accept invalid
student details form, click on data, save should not allow
Save

- 54 -
7. OUT-PUT RESULTS
7.1 Screens

Home Page

- 55 -
Over view of ISC

- 56 -
Contact Us

- 57 -
Privacy Policy

- 58 -
Terms of Use

- 59 -
Registration form

- 60 -
Login Form

- 61 -
Members list

- 62 -
Administrator

- 63 -
Universities

- 64 -
View Universities

- 65 -
Add University

- 66 -
Colleges

- 67 -
Add College

- 68 -
View College List

- 69 -
Courses

- 70 -
Add Course

- 71 -
View Course List

- 72 -
Branch

- 73 -
Add Branch

- 74 -
View Branch list

- 75 -
8. Conclusion

India Study Channel System has developed using Java so that it can be accessed from any

type of system. The system will be capable of providing information about the all types of

educational institutions and their courses in India and Abroad within a give time frame with

no errors and the system should be available and operational all the time. The system is

developed with a aim of usability so that it is an easy to use system that requires the least

amount of user input possible. Using this system user should only have general computer

knowledge is enough? An easy well structured module will show the correct path to reach the

destination. Users will be authenticated to ensure that no unauthorized users gain access to

private information.

- 76 -
9. Bibliography

1. System Analysis And Design

- Lee

2. An Analysis and Design of Information Systems

- James. A. Senn

3. Software Engineering

- Roger. S. Pressman

4. Database Management System

- William. S. Robert

5. JSP: A Beginners Guide

- Madhu Shree Ganguli

6. Java Server Pages Programming: A visual professional guide for Design

- Robert. D. Nero

- 77 -

You might also like