Escolar Documentos
Profissional Documentos
Cultura Documentos
INTRODUCTION
In this new era of Science and Technology, computer is one of the most important components in our life.
Works can be done in a better way by the help of computer.
The main aim of this project is to create a web based application system which is a search engine application
system for the users that will enable them in increasing the efficiency and effectiveness in retrieving the
projects. The system will be user-friendly, ease to use and administrate.
1
2. OVERVIEW OF THE PROJECT
2.1. PURPOSE:
The purpose of search engine for academic projects is to search academic projects in an efficient manner and
no time wasting for retrieving the projects from different resources. The main objective of search engine for
academic projects is to efficiently gather the academic projects information through a fully automated system
that not only saves lot of time but also gives fast results.
Administrator has a privilege to add, update and delete the projects from the database and can see all the
projects. Particular user or student can register, login and search for particular project with his specific
keyword , and can see all the projects which are stored in the database.
The earlier system is not computerized. We need to gather the information manually , evaluate it manually
and store the projects information in records which is not safe and secure. It is difficult to store and maintain
the projects manually. It is also tedious to maintain all the records.
The whole process of collecting the project records was done manually till date. Maintaining the project
records is tedious work to handle and there is a chance of losing data. Any student if he want to start a project
he need to do lot of background work like new ideas for developing the project and after getting an idea he
need to check is that idea is already developed by any one or not if that idea is already implemented then he
need to search for another it is time consuming process because in existing system all this is manual system.
Manual process will take much time to complete this process. Time consumption is the major disadvantage in
the existing system.
2
DISADVANTAGES OF CURRENT SYSTEM
In proposed system we are planning to create a web application for academic projects search engine. That
means any student who wanted to start a project can search information and projects which already exist in
the college so he can go with new project idea .here the projects are uploaded by administrator.
As we have many problems in the existing system we proposed a new system which is computerized so it will
take less time for searching of projects which are already existing.
In comparison to the present system the proposed system will be less time consuming and is more efficient.
Analysis will be very easy in proposed system as it is automated.
3
3. PROBLEM STATEMENT AND SYSTEM ANALYSIS
Problem Statement:
From many years it has been a practice to access the academic projects information by the college
personnel, students, and the general users (guests) has been done by searching them. Maintaining and
retrieving the projects is difficult with the existing system. They reside on different systems and gathering
them is time consuming process.
System Analysis:
It is a process of gathering and interpreting facts library problems and using the information to recommend
improvements to the system.
4
4. LITERATURE SURVEY
Technologies and Frameworks used:
4.1. HTML:
HTML, which stands for Hypertext Markup Language, is predominant markup language for web pages.
HTML is the basic building-blocks of WebPages.
HTML is written in the form of HTML elements consisting of tags, enclosed in angle brackets (like <html>),
within the web page content. HTML tags normally come in pairs like <h1> and </h1>. The first tag in a pair
is the start tag, the second tag is the end tag (they are also called opening tags and closing tags). In between
these tags programmers can add text, tables, images, etc.
The purpose of a web browser is to read HTML documents and compose them into visual or audible web
pages. The browser does not display the HTML tags, but uses the tags to interpret the content of the page.
HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded
and can be used to create interactive forms. It provides a means to create structured documents by denoting
structural semantics for text such as headings, paragraphs, lists, links, quotes and other items
Web browsers can also refer to Cascading Style Sheets (CSS) to define the appearance and layout of text and
other material. The W3C, maintainer of both the HTML and the CSS standards, encourages the use of CSS
over explicitly presentational HTML markup.
The World Wide Web is composed primarily of HTML documents transmitted from web servers to web
browsers using the Hypertext Transfer Protocol (HTTP). However, HTTP is used to serve images, sound, and
other content, in addition to HTML.
4.2. JavaScript:
5
JavaScript is a simple programming language used to make web pages more interactive. JavaScript code was
invented to validate form fields before a form is submitted, saving the user the trouble of waiting to hear back
from the web server if the problem is a simple one, like a missing digit in a 10-digit phone number.
JavaScript code is inserted into a page using the <script> element, like this:
<script>
alert ("This displays a message box to the user");
</script>
4.3. Java:
Java is a programming language, a runtime system, a set of development tools; an application programming
interface (API).The Java API contains predefined software packages with numerous platform-independent
“hooks” into the native windowing and networking capabilities of the host operating system. The Java API
provides a single common API across all operating system to which Java is ported. Java applications are
typically compiled to byte code (class file) that can run on any Java Virtual Machine (JVM) regardless of
computer architecture. Java is a general-purpose, concurrent, class-based, object-oriented language that is
specifically designed to have as few implementation dependencies as possible. It is intended to let application
developers “write once, run anywhere”. Java is currently one of the most popular programming languages in
use, and is widely used from application software to web applications. Java is provided in three editions:
J2SE: Java 2 Standard version with which developers can develop desktop applications more efficiently.
J2EE: Java 2 Enterprise Edition with which developers can build the huge Enterprise applications.
J2ME: Java 2 Micro Edition with which developers can build the application for the mini or micro devices.
6
The powerful windowing and networking features included in the Java API make it easier for programmers to
develop software that is both attractive and platform independent.
Platform independence is nothing but the ability to run software in different operating systems. Portability
deals with the hardware and the operating system architecture. The created exe file can be run on any
platform. This is portability. In case of java the .class file formed in windows OS can be run on Linux without
making any changes, because it does not depend upon the hardware or OS architecture. This is platform
independent.
Features of java:
Secure: Java is secured because there is no possible way of getting the garbage values because of data
encapsulation. And also Java doesn’t provide direct access to the memory with pointers, no pointers
concepts provided for the developers. No unauthorized code we cannot write any code with may disturb
other applications or other applications code disturbing the java code.
Robust in Memory Management: Programmer doesn’t need to concentrate on the memory because
Garbage Collector is a demon thread will run with the JVM and it looks after the unused objects it deletes
them.
Multi-Threaded Programming: Java is not Process based it is a thread based so everything in java is
thread and it supports the multi-threading concept.
GUI Programming: In Java we have two packages with helps the developers to write GUI programming
easily when compared to other languages. AWT and Swings.
Web Based (applets): In Java the developers are provided with Applets with which Web Based
application can be developed. Applet is Program which can be downloaded and sits in the client system.
Runtime Exception Handling: In Java Exception handling is very easy and efficient when compared to
the other languages. A class called Exception is provided and developers can write user defined
Exceptions also.
Networking Based Applications: Java API provides java.net package with which the networking can be
easily done. Compared to other language it is much easily to implement with provided socket class and
datagram class.
7
4.4. JSP Technology and Java Servlets:
Java Server Pages (JSP) technology enables Web developers and designers to rapidly develop and easily
maintain, information-rich, dynamic Web pages that leverage existing business systems. As part of the Java
technology family, JSP technology enables rapid development of Web-based applications that are platform
independent. JSP technology separates the user interface from content generation, enabling designers to
change the overall page layout without altering the underlying dynamic content.
Java Server Pages technology is an extension of the Java Servlet technology. Servlets are platform-
independent, server-side modules that fit seamlessly into a Web server framework and can be used to extend
the capabilities of a Web server with minimal overhead, maintenance, and support. Together, JSP technology
and servlets provide an attractive alternative to other types of dynamic Web scripting/programming by
offering: platform independence; enhanced performance; separation of logic from display; ease of
administration; extensibility into the enterprise; and, most importantly, ease of use.
Today servlets are a popular choice for building interactive Web applications. Third-party servlet containers
are available for Apache Web Server, Microsoft IIS, and others. Servlet containers are usually a component of
Web and application servers, such as BEA WebLogic Application Server, IBM WebSphere, Sun Java System
Web Server, Sun Java System Application Server, and others.
A Servlet is a Java programming language class used to extend the capabilities of servers that host
applications accessed via a request-response programming model. Although servlets can respond to any type
of request, they are commonly used to extend the applications hosted by Web servers.
For such applications, Java Servlet technology defines HTTP-specific servlet classes.
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.
4.5. JDBC:
Java Database Connectivity, commonly referred to as JDBC, is an API for the Java programming language
that defines how a client may access a database. It provides methods for querying and updating data in a
database. JDBC is oriented towards relational databases. A JDBC-to-ODBC bridge enables connections to
any ODBC-accessible data source in the JVM host environment.
The JDBC classes are contained in the Java package java.sql and javax.sql.
8
JDBC allows multiple implementations to exist and be used by the same application. The API provides a
mechanism for dynamically loading the correct Java packages and registering them with the JDBC Driver
Manager. The Driver Manager is used as a connection factory for creating JDBC connections.
JDBC drivers are client-side adapters (installed on the client machine, not on the server) that convert requests
from Java programs to a protocol that the DBMS can understand.
There are commercial and free drivers available for most relational database servers. These drivers fall into
one of the following types:
Type 1 that calls native code of the locally available ODBC driver.
Type 2 that calls database vendor native library on a client side. This code then talks to database over
network.
Type 3, the pure-java driver that talks with the server-side middleware those then talks to database.
Type 4, the pure-java driver that uses database native protocol.
Apache Tomcat (or Jakarta Tomcat or simply Tomcat) is an open source Servlet container developed by the
Apache Software Foundation (ASF). Tomcat implements the Java Servlet and the Java Server Pages (JSP)
specifications from Sun Microsystems, and provides a "pure Java" HTTP web server environment for Java
code to run.
Tomcat should not be confused with the Apache web server, which is a C implementation of an HTTP web
server; these two web servers are not bundled together. Apache Tomcat includes tools for configuration and
management, but can also be configured by editing XML configuration files.
9
5. PROPOSED SYSTEM
The most important objective behind this project is to minimize cd’s and hardcopies and are replaced by a central
data bank, which is equipped to store and provide information as an when required.
Online based: It is a web based project. Nothing to download or install, works for anyone who can view this
web page including WEB TV, Mac, and Linux users. So it is online based
Time saver: As we retrieving the projects from different hard copies requires time. By using this search
engine we can retrieve within a short period of time.
Keyword Density Analyzer: This search engine searches the projects based on the keyword we entered.
Ranking and reporting: It will give the ranking to the projects which are frequently searched.
10
6. FEASIBILITY ANALYSIS
The main objective of the feasibility study is to test the Technical, Operational and Economical feasibility for
adding new modules and debugging old running system. All systems are feasible if they have unlimited
resources and infinite time. There are aspects in the feasibility study portion of the preliminary investigation.
In this search engine, we have two computer systems. The web server which is used to store the applications
and the data server which is used to store the data and browser to connect .
6.3. ECONOMICFEASIBILITY
11
7. SOFTWARE REQUIRMENT SPECIFICATION
7.1 Functional Requirements:
7.1.1 Functional Requirements for Administrator:
Requirement Description
ID
1 Should be registered.
12
10 Should be able to manage database and Resources
Requirement Description
ID
13
Table2: Functional requirements for User
Requirement Description
Id
1 Reusability
2 Scalability
3 Portability
4 Maintainability
Requirement Description
ID
14
1 The screens are user friendly from the perspective of
navigation and operations
The recommended hardware specified by the respective software would suffice the needs. The memory and
processing power needed would increase as the number of records increase. The estimated hardware
requirements are as specified.
15
8. SYSTEM DESIGN:
It is a process of planning a new business system or one to replace existing one’s.
16
register
login
validate Unauthorized
logout
17
regis tration
login
addprojec t
delet eprojec t
updateprojec t
logout
18
register
login
post idea
user search
admin
download view idea
add project
delete project
View Projects
logout
19
8.1.4. Class Diagram
20
8.1.5.1. Sequence Diagram for User:
user searchengine
registration
login
enterkeyword
showresult
downloadproject
successfully downloaded
logout
21
8.1.5.2. Sequence Diagram for Administrator:
administrator searchengine
registration
login
addproject
successfully added
deleteproject
successfully deleted
update data
successfully updated
logout
22
8.1.6.1. Collaboration Diagram for User:
1: registration
8: logout
user 2: login
3: enterkeyword
5: see project description
6: downloadproject
7: successfully downloaded
4: showresult searche
ngine
1: registration
9: logout
2: login
administ
3: addproject
rator 5: deleteproject
7: update data
4: successfully added
6: successfully deleted searche
8: successfully updated
ngine
23
8.2. DATABASE DESIGN
Database design is an important phase in designing a system. During this phase care should be taken to avoid
redundancy of information storing into a database, since it leads to wastage of memory space. For this purpose
a normalization technique has been applied here exhaustively to design the databases.
ROLLNO VARCHAR2(200) NO - 1
24
8.3.2. PROJECTDATA:
PID NUMBER NO - 1
25
Home Page Design:
<!DOCTYPE html>
<html lang="en"><head>
<title></title>
<meta charset="utf-8">
<!--[if lt IE 9]>
<![endif]-->
</head>
<body>
<header>
<nav>
<div class="container">
<div class="wrapper">
<p> </p>
26
<ul>
<li><a href="login.html">Login</a></li>
<li><a href="register.html">Register</a></li>
<li><a href="contact.html">contacts</a></li>
<li><a href="help.html">help</a></li>
</ul>
</div>
</div>
</nav>
<section class="adv-content">
<div class="container">
<ul class="breadcrumbs">
</ul>
</div>
</header>
<section id="content">
<div class="top">
<div class="container">
<div class="clearfix">
<section id="gallery">
</section>
<section id="intro">
<div class="inner">
<br><br>
</div>
28
</section>
</div>
</div>
</div>
<div class="middle"></div>
<div class="bottom">
<div class="container">
<d
</div>
</div>
</section>
<footer>
<div class="container">
<div class="wrapper">
</div>
</div>
</footer>
<script type="text/javascript">
$(document).ready(function() {
$('.pics').cycle({
fx: 'toss',
next: '#next',
prev: '#prev'
});
29
});
</script>
</body></html>
<!DOCTYPE html>
<html lang="en"><head>
<title></title>
<meta charset="utf-8">
<!--[if lt IE 9]>
<![endif]-->
<style type="text/css">
<!--
.style1 {
font-size: medium;
30
color: #009999;
-->
</style>
</head>
<body>
<header>
<nav>
<div class="container">
<div class="wrapper">
<p> </p>
<ul>
</ul>
</div>
</div>
</nav>
<section class="adv-content">
31
<div class="container">
</div>
</section><div class="ic"></div>
</header>
<section id="content">
<div class="top">
<div class="container">
<div class="clearfix">
<section id="gallery">
</section>
<section id="intro">
<div class="inner">
<br><br>
</div>
</section>
</div>
</div>
</div>
<div class="middle"></div>
<div class="bottom">
</div>
</section>
<footer>
<div class="container">
<div class="wrapper">
33
</div>
</div>
</footer>
</body>
</html>
34
9. ARCHITECTURE
Architecture flow:
Below architecture diagram represents mainly flow of requests from users to database through web server. In
this scenario overall system is designed in three tires separately using three layers called user interface or web
browser, logic layer and data base layer. This project was developed using 3-tire architecture.
User Interface:
This layer is also called as client or web browser , comprises of components that are dedicated to presenting
the data to the user. For example: Windows/Web Forms and buttons, edit boxes, Text boxes, labels, grids, etc.
Search Engine for Academic Projects System user interface has Registration pages for the new users, Login
page for a all users, home page, etc.
Logic Layer:
This layer encapsulates the Business rules or the business logic of the encapsulations. To have a separate layer
for business logic is of a great advantage. This is because any changes in Business Rules can be easily
handled in this layer. As long as the interface between the layers remains the same, any changes to the
functionality/processing logic in this layer can be made without impacting the others.
Search Engine for Academic Projects System business logic layer has .java files which are created using
Servlet and JSP technologies.
35
Database Layer:
This layer comprises of the Database Components such as Database files, Tables, Views, etc. The Actual
database could be created using MySQL, oracle, MS Access, etc.
Search Engine for Academic Projects System Database layer uses ORACLE as its database and has tables.
36
10. PSEUDO CODE
Login.jsp:
<%@ page import="java.sql.*" %>
<%!
Connection con;
PreparedStatement pst,ps;
ResultSet rs,rs1;
String uname,pwd;
int contact,i=0;
%>
<%
uname=request.getParameter("uname");
pwd=request.getParameter("pwd");
con=conn.getconnection();
pst.setString(1,uname);
pst.setString(2,pwd);
rs=pst.executeQuery();
if(rs.next())
if(uname.equalsIgnoreCase("administrator"))
%>
<jsp:forward page="admin.html"/>
37
<%
else
%>
<jsp:forward page="usersearch.html"/>
<%
/* else
ps.setString(1,uname);
ps.setString(2,pwd);
rs1=ps.executeQuery();
if(rs1.next())
out.println("ur account not activated wait untile administrator activate your account");
*/ else
%>
38
Register.jsp:
<%@ page import="java.sql.*" %>
<%!
Connection con;
PreparedStatement pst,ps;
ResultSet rs;
String name,rno,email;
int i=0;
long contact;
%>
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="utf-8">
<!--[if lt IE 9]>
39
<script type="text/javascript" src="js/html5.js"></script>
<![endif]-->
<style type="text/css">
<!--
-->
</style>
</head>
<body>
<header>
<nav>
<div class="container">
<div class="wrapper">
<p> </p>
<ul>
<li><a href="login.html">Login</a></li>
<li><a href="register.html">Register</a></li>
<li><a href="contacts.html">contacts</a></li>
</ul>
</div>
</div>
</nav>
40
<section class="adv-content">
<div class="container">
<ul class="breadcrumbs">
</ul>
</div>
</section>
</header>
<section id="content">
<div class="top">
<div class="container">
<div class="clearfix">
<section id="gallery">
</section>
<section id="intro">
<div class="inner">
<%
name=request.getParameter("name");
rno=request.getParameter("rno");
email=request.getParameter("email");
contact=Long.parseLong(request.getParameter("contact"));
con=conn.getconnection();
ps.setString(1,rno);
rs=ps.executeQuery();
if(rs.next())
else
42
pst.setString(1,name);
pst.setString(2,rno);
pst.setString(3,email);
pst.setLong(4,contact);
pst.setString(5,"no");
pst.setString(6,rno);
i=pst.executeUpdate();
if(i!=0)
else
out.println("registration Failed");
%>
<form action="login.jsp">
</tr>
<tr>
43
<td width="114" class="style8">User Name</td>
</tr>
<tr>
<td class="style8">Password</td>
</tr>
<tr>
</tr>
</table>
</form>
</section>
</div>
</div>
</div>
<div class="middle"></div>
<div class="bottom">
<div class="container">
</div>
</div>
</section>
44
<footer>
<div class="container">
<div class="wrapper">
</div>
</div>
</footer>
</body>
</html>
45
11. TEST CASES
Having test cases that are good at revealing the presence of faults is central to successful testing. The reason
for this is that if there is a fault in a program, the program can still provide the expected behavior for many
inputs. Only for the set of inputs that exercise the fault in the program will the output of the program deviate
from the expected behavior. Hence, it is fair to say that testing is as its test cases.
46
11.2. Registration:
47
11.3. Complaint Form:
48
11.4. Complaint Status:
49
11.6. ADMIN LOGIN by Administrator:
50
11.7. View Complaints by Administrator:
51
11.9. Give Cautions by Administrator:
1. Enter the message All the values are stored in the -do- P
and Police station database and displayed when police
name. department clicks on the view
messages.
52
12. TEST PLAN
A process of executing a program with the explicit intention of finding errors, that is making the
program fail.
Software Testing:
It is the process of testing the functionality and correctness of software by running it. Process of
executing a program with the intent of finding an error.
A good test case is one that has a high probability of finding an as yet undiscovered error. A
successful test is one that uncovers an as yet undiscovered error. Software Testing is usually performed for
one of two reasons:
Defect detection
Reliability estimation
Applies to software systems or module, tests functionality in terms of inputs and outputs at
interfaces.Test reveals if the software function is fully operational with reference to requirements
specification.
1. Unit testing
2. Integration testing
3. Validation testing
4. System testing
53
Unit testing
It concentrates on each unit of the software as implemented in source code and is a white box
oriented. Using the component level design description as a guide, important control paths are tested to
uncover errors within the boundary of the module. In the unit testing,
Integration testing:
Here focus is on design and construction of the software architecture. Integration testing is a systematic
technique for constructing the program structure while at the same time conducting tests to uncover errors
associated with interfacing. The objective is to take unit tested components and build a program structure that
has been dictated by design.
Validation testing:
In this, requirements established as part of software requirements analysis are validated against the
software that has been constructed i.e., validation succeeds when software functions in a manner that can
reasonably expected by the customer.
System testing: In this software and other system elements are tested as a whole.
The testing phase involves the testing of the development system using various test data. Preparation of test
data plays a vital role in system testing. After preparing test data, the system under study will be tested using
these test data. Testing steps and corrections will also be noted for future use. Thus a series of test likes:
Integration testing, System testing and Acceptance testing will be performed.
Unit Testing
This deals with the testing of different modules against the specification produced during design for the
modules.
Integration Testing
The tested modules are combined into subsystem, which are then tested. Here the goal is to see if the modules
can be integrated properly.
54
System and Acceptance Testing
Here the entire software system is tested. The reference document for this process is the requirement
document and the goal is to see if the software meets its requirements.
Acceptance testing is generally performed with realistic data of the client to demonstrate the software
behaviour of the system. The internal logic of the program is not emphasized.
LEVELS OF TESTING
55
13. SCREEN SHOTS
56
13.2. Administrator Login Page:
57
13.3. Administrator Home Page Screen:
58
13.4. Add Project Page Screen:
59
13.5. Screen For View Projects Page:
60
13.6. Screen for Search Project Page:
61
13.7. Change Password Screen for Administrator:
62
13.8. User Registration Page Screen:
63
13.9. Screen for User Login Page:
64
13.10. Home Page Screen for User:
65
13.11. View Projects Page for User:
66
14. CONCLUSION AND FURTHER ENHANCEMENTS
The system provides a number of interfaces for different functionalities and operations. This enables
customers to quickly complete all works and also to verify the results of various transactions.
In present system all traditional works are done either manually or using Internet. This requires customers to
visit the facility to complete the work or one has to access an Internet facility. This often wastes time and
results in more effort.
67
The proposed system is a web based application and provides a centralized database with all related
information. The application is a banking facility through which all payments can be done at a single place.
The system provides a number of interfaces for different functionalities and operations. This enables
customers to quickly complete all works and also to verify the results of various transactions.
15. BIBLIOGRAPHY
JAVA Technologies:
HTML:
16. REFERENCES
http://www.tutorialpoint.com/wml/index.htm
http://www.w3schools.com/html/
http://www.javacommerce.com/displaypage.jsp?name=wap3.sql&id=18236
http://developers.sun.com/mobility/enterprise/articles/wap/intro/
http://www.tutorialspoint.com/wml/wml_submit_data.htm
http://www.oracle-dba-online.com/export_and_import.htm
http://www.internet4mobile.com/internet_on_mobile_from_laptop_wifi.aspx
69