Академический Документы
Профессиональный Документы
Культура Документы
A Mini Project
BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING
Submitted by
M.SUMAPRIYA 07761A0548
N.SRIKANTH 07761A0527
T.NARENDRA 07761A0550
1
LAKIREDDY BALI REDDY COLLEGE OF ENGINEERING
CERTIFICATE
M.SUMAPRIYA 07761A0548
N.SRIKANTH 07761A0527
T.NARENDRA 07761A0550
2
ACKNOWLEDGEMENT
At last but not the least I thank entire Computer Science department
who rendered their full cooperation for successful completion of the project.
3
ABSTRACT
4
INDEX
1. INTRODUCTION 6
6. TESTING 35-38
8. FUTURE ENHANCEMENTS 46
9. CONCLUSION 47
10. BIBILIOGRAPHY 48
5
1. INRODUCTION
Repository Search Engine For The Module uses Java Server Pages
TM is the Java TM 2 Platform, Enterprise Edition (J2EE) technology for building
applications for generating dynamic web content, such as HTML, DHTML. The Java
Server Pages technology enables the easy authoring of web pages that create dynamic
content with maximum power and flexibility. JSP uses a component-based approach that
allows web developers to easily combine static HTML for look-and-feel with Java
components for dynamic features.
6
2. SYSTEM ANALYSIS
Economic Feasibility
Operational Feasibility
Technical Feasibility
Economic Feasibility: It refers to the benefits or outcomes we are deriving from the
product compared to the total cost we are spending for developing the product. If the
benefits are more or less the same as the older system, then it is not feasible to develop
the product.
In the present system, the development of the new product greatly enhances the
accuracy of the system and cuts short the delay in the processing of application.
The errors can be greatly reduced and at the same time providing a great level of security.
Here we don’t need any additional equipment except memory of required capacity. No
need for spending money on client for maintenance because the database used is web
enabled database.
7
analysis. It was found that the additional modules added are isolated modules as far as the
operational is concerned, so the Developed system is operationally feasible.
Technical Feasibility: It refers to whether the software that is available in the market
fully supports the present application. It studies the pros and cons of using particular
software for the development and its feasibility. It also studies the additional training
needed to be given to the people to make the application work.
In the present system, the user interface is user friendly and does not require much
expertise and training. It just needs a mouse click to do any sort of application. The
software that is used for developing is server page fully is highly suitable for the present
application since the users require fast access to the web pages and with a high degree of
security. This is achieved through integration of web server and database server in the
same environment.
IMPLEMENTATION PLAN
The main plan for the system developed is to upgrading existing system to the
proposed system. There are mainly 4 methods of upgrading the existing system to
proposed
Parallel Run System
Direct Cut-Over System
Pilot System
Phase-in Method
Parallel Run System: It is the most secure method of converting from an existing to
new system. In this approach both the systems run in parallel for a specific period of time.
During that period if any serious problems were identified while using the new system,
the new system is dropped and the older system is taken at the start point again.
Direct Cut -Over Method: In this approach a working version of the system is
implemented in one part of the organization such as single work area or department.
When the system is deemed complete it is installed through out the organization either all
at once (direct cut-over) or gradually (phase-in).
8
Phase-in Method: In this method a part of the system is first implemented and over time
other remaining parts are implemented.
9
specified, the software design involves three technical activities: design, coding
generation and testing. The design of the system is in modular form i.e. the software is
logically partitioned into components that perform specific functions and sub functions.
The design phase leads to modules that exhibit independent functional characteristics.
It even leads to interfaces that reduce the complexity of the connections between
modules and with the external environment. The design phase is of main importance
because in this activity, decisions ultimately affect the success of software
implementation and maintenance.
3. Development Phase:
The development phase includes choosing of suitable software to solve the
particular problem given. The various facilities and the sophistication in the selected
software give a better development of the problem.
4. Coding Phase:
The coding phase is for translating the design of the system-produced during the
design phase into code in a given programming language, which can be executed by a
computer and which performs the computation specified by the design.
5. Testing Phase:
Testing is done in various ways such as testing the algorithm, programming code;
sample data debugging is also one of following the above testing.
10
• The institute itself arranges some sort of programs like
meetings and some gatherings. The students are intimated through
letters or postcards.
• The students attend to these meetings and interact or will
interact by their personal.
Draw Backs:
• The problem with this system is that once the information
regarding a student is filed up, the updating may include some
complications.
• Also most of the alumni due to their mechanical life could
not attend the meetings.
• For the problem mentioned as first, the proposed system provides a mean for the
students who registered into the Module can communicate with their mates.
• The proposed system also provides the service like adding friends.
• The user is provided with my profiles page where he can view and update his
details, view his friends, add new friends and thus can maintain contact with
The method followed in the proposed system is Water fall method. This
model suggests a systematic, sequential approach to hardware that begins at the
system level and progress through analysis, design, coding, testing and maintenance.
11
2.4 HARDWARE REQUIREMENTS
Pentium IV
256 MB RAM
40 GB HARDDISK
CD-ROM
Super VGA Display card and Monitor
Mouse and keyboard printer
SOFTWARE REQUIREMENTS
12
3. S/W REQUIREMENT SPECIFICATION
The Software Requirements Specification (SRS) begins the translation process that converts the
software requirements into the language the developers will use. The SRS draws on the use-
cases from the User Requirement Document (URD) and analyzes the situations from a number
of perspectives to discover and eliminate inconsistencies, ambiguities, and omissions before
development progresses significantly under mistaken assumptions.
Interface Requirements
This section defines the parameters that the software product must follow while
interacting with the outside world.
13
Software Interfaces:
Communication Interfaces:
LAN protocols and TCP/IP
Functional Requirements
This section analyzes various angles of the functionality to be developed. You do not
need to use each type of analysis for the entire system. Select only those analyses that
best allow you to complete your understanding of the requirements.
Feature Analysis
The Repository and search engine consists of the following modules:
ADMIN:
1. Authentication of the users after registration.
2. Mails to the users regarding the approval as a registered user, disapproval mentioning
the appropriate reasons.
3. Updating the account details on the request of the users.
4. Answering the user queries.
5. Notification to the end users regarding proposals.
6. Payment of the system by the user.
7. Mentioning the security measures for the system’s safety.
8. Deleting an account/user from the system’s databases on request of the user.
USER:
1. Creating a new account
User is allowed to create his own profile. According to the specifications
required by the administrator, the user forms his own profile and submits it to the
system.
14
2. Updating the account
The user is allowed to update his/her account. The administrator updates
the profile accordingly. The user is not allowed to keep any mandatory fields
blank while updating. For E.g. Name, Last name, occupation etc.
4. Uploading Photographs
The user has a facility to upload and share his photographs.
Nonfunctional Requirements
Performance Requirements: System can withstand even though many no. of users
requested the desired service. As we are maintaining
server for the entire colleges of JNTU and access is given
to the only registered users who can use the services etc.,
it can withstand the load.
Safety & Reliability Requirements: By incorporating a robust and proven RDBMS into
the system, reliable performance and integrity of
data is ensured. There must be a power backup for
server system.
15
Software Quality Attributes: Menu Driven programs with user friendly interface
simply Hyperlinks. It is very easy to use. Backup
mechanisms are considered for maintainability of software
as well as data base. As it is object oriented reusability
exists.
Overview:
Customer : This application is developed for the LBRCE students. The target users
are the Students. We are developing the system for students and this
project is dedicated to enhance the students’ interactivity with their mates.
Purpose : The purpose of the project is to reconnect the students with their mates.
16
General Requirements
17
4. SYSTEM AND IMPLEMENTATION DETAILS
DESIGN
18
• Verifiability.
• Completeness.
• Consistency.
• Trace ability.
• Simplicity/Understandability.
19
The hardware and software can be placed where it will do
the most good.
In Client – Server model PCs, the power can be spread
across the client and the server.
On client side, an Active X object is used to present data
By having the client side it can do more work
The client software supplies the interface (Such as
windowed program) and the knowledge of how to pass the
request to the server and the format of the data for the user
when it’s returned from the server. The server’s job is to
manipulate the data according to the user’s request.
20
• Tier 1: the client contains the presentation logic, including
simple control and user input validation. This application
is also known as a thin client.
• Tier 2: the middle tier is also known as the application
server, which provides the business processes logic and
the data access.
• Tier 3: the data server provides the business data.
First Tier:
Responsibility for presentation and user interaction
resides with the first-tier components. These client components
enable the user to interact with the second-tier processes in a
secure and intuitive manner. Web Sphere Application Server
supports several client types. Clients do not access the third-tier
services directly.
Second Tier:
21
The second-tier processes are commonly referred
to as the Application Logic Layer. These processes manage the
business logic of the application, and are permitted access to the
third-tier services. The application logic layer is where most of
the processing work occurs. Multiple client components can
access the second-tier processes simultaneously, so this
application logic layer must manage its own transactions.
Third Tier:
The third-tier services are protected from direct
access by the client components residing within a secure network.
Interaction must occur through the second-tier processes.
Usage:
22
UML stands for Unified Modeling Language.UML is a
language for specifying, visualizing and documenting the system.
This is the step while developing any product after analysis. The
goal from this is to produce a model of the entities involved in the
project which later need to be built. The representation of the
entities that are to be used in the product being developed need to
be designed.
23
boundary everything inside that is part of that system, and
everything outside are actors (basically not part of system).
Use case diagrams can be useful for getting an overall
view of the system and clarifying who can do and more
importantly what they can’t do.
24
System Architects to have a view of the distribution of
Processing between objects.
Class Diagram:
This is one of the most important of
the diagrams in development.
The diagram break the class into three
layers. One has the name, the second
describes its attributes and the third its
methods. The private attributes are
represented by a padlock to left of the
name.
The relationships are drawn between
the classes.
Developers use the Class Diagram to
develop the classes.
Analyses use it to show the details of
the system.
Architects look at class diagrams to see if any class has too many
functions and see if they are required to be split.
25
It is method for describing the
system’s architecture in detail on various behaviors of the
component.
DIAGRAMS
USECASE DIAGRAM
For a new user for sign up:
Login Page:
26
Home Page:
Video Page:
27
se
Package Diagram:
Deployment Diagram:
28
29
5. TECHNOLOGY
DESCRIPTION
Why Apache?
To address the concerns of a group of WWW providers
and part time http programmers that http didn’t as they wanted it
to behave. Apache is an entirely volunteer effort, completely
funded by its members, not by commercial sales. Apache has
been show to be substantially faster than many other free servers.
The Apache http servers a powerful,flexible,HTTP/1.1
complaint webserver implements the latest protocols ,including
HTTP/1.1 (RFC2616)is highly configurable and extensible with
third party modules can be customized by writing ‘modules’
using the Apache module API provides full source code and
comes with an unrestrictive license runs on WINDOWS NT/9x ,
Netware 5.x and above ,OS/2 ,and most versions of Unix , as well
As Several other operating systems is actively being developed
encourages user feedback through new ideas , bug reports and
patches implements many frequently requested features
,including:
30
DBM databases for authentication:
31
• Amending the look and feel of the system involves
recompiling the servlet classes.
• The presence of HTML within the servlet tightly couples
the presentation and the content, which blurs the role of
presentation and providing content.
• Lots of HTML code within the servlet classes make them
difficult to maintain
32
There are three kinds of scripting elements in JSP:
• Declarations
• Scriptlets
• Expressions
Declarations:
Declarations are used to define methods and instance
variables. They do not produce any output that is sent back to the
client. Declarations in the JSP pages are embedded between <%!
and %> delimiters.
In the given example two methods and the variable will be
made available to the page implementation class and we can
access these functions and variables within the JSP page.
Declarations are mainly used in conjunction with Scriptlets.
<%!
Public void jspDestroy(){
System.out.println(“JSP Destroyed”);
}
public void jspInit() {
System.out.println(“JSP Loaded”);
}
int myVariable = 123;
%>
Scriptlets:
<%
int x = 10;
int y = 20;
int z = x * y;
33
%>
Expressions:
JDBC
The JDBCTM API provides universal data access from
the JavaTm programming language. Using the JDBC 2.0 API,
you can access virtually any data source, from relational
databases to spreadsheets and flat files. JDBC technology also
provides a common base on which tools and alternate interfaces
can be built.
34
methods. The JDBC web site maintains a list of vendors with
drivers currently available or under development.
There are four types of JDBC drivers each having it’s own
functionality. Please note that they are not substitute one another.
Each having their own suitability aspects. They are classified
based on how they access the data from the database.
1. Native JDBC Driver: A JDBC driver, which is partly
written in and most of it is implemented using native
methods to access the database. This is useful in case of
java application that can run only on some specific
platforms. Writing this type is easier when compared to
writing other drivers.
35
intranets where everything can run as an application
instead of an applet. This driver is generally provided by
vendor of the database.
DriverManager.registerDriver(d);
• Select Statements
• Non-Select Statements
Select Statements:
Select Statements are used for fetching the data from the
Database.
Statement stmt=con.createStatement();
36
This method returns the ResultSet object.Using the
ResultSet we can fetch the data.
Non-Select Statement:
Statement stmt=con.createStatement();
37
6. TESTING
In a software development project, errors can be injected
at any stage during development. The development of software
involves a series of production activities where opportunities for
injection of human fallibility’s are enormous. Because of human
inability to perform and communicate with perfection, software
development is accomplished by a quality assurance activity.
Software testing is a critical element of software quality
assurance and represents the ultimate review of specification,
design and coding. Testing presents an interesting anomaly for
the software engineer. The engineer creates a series of test cases
that are intended to demolish the software engineer process that
could be viewed as destructive rather than constructive.
Testing Objective
• Testing is a process of executing a program with the intent
of finding an error.
• A good test case is one that has a high probability of
38
finding an as –yet undiscovered error.
• A successful test one that uncovers an as –yet
undiscovered error.
The above objectives imply a dramatic change in
viewpoint. They move counter to the commonly held view that a
successful test is one in which no errors are found. Testing cannot
show the absence of detects, it can only show that software errors
are present.
Testing Phases: Software testing phases include the following:
Test activities are determined and test data selected.
The test is conducted and test results are compared with the
expected results.
There are various types of testing:
Unit Testing: Unit testing is essentially for the verification of the
code produced during the coding phase and the goal is test the
internal logic of the module/program. In the Generic code project,
the unit testing is done during coding phase of data entry forms
whether the functions are working properly or not. In this phase
all the drivers are tested they are rightly connected or not.
39
Test methods
Any engineered can be tested in one of the two ways.
1. knowing the specified function that a product has been
designed to perform tests can be conducted that demonstrate each
function is fully operational at the save time searching for errors
in each function.
2. Knowing the internal working of a product, test can be
conducted to ensure that “all gears mesh”, that is that internal
operation performs according to the specification and all internal
components have been adequately exercised. The first test
approach is called Black box testing and the second approach is
called White box testing.
40
The design of test cases for software and other engineered
products can be as challenging as initial design of the product
itself. The tests that have the highest likelihood of finding the
most errors with a minimum amount of time and effort should be
designed.
A rich variety of test case design methods have evolved
for software. These methods provide the developer with a
systematic approach to testing. Any engineered product can be
tested in one of two ways.
1.Knowing the specified function that a product has been
designed to perform.
2.Knowing the internal working of the project.
The first test approach is known as blackbox testing and
the second is white box. Testing.
Equivalence Partitioning
Testing case testing for equivalence partitioning is
based on a evaluation of equivalence class for an input condition
if a set of objects can be linked by relationship that are
symmetric, transitive and reflexive, an equivalence is present. An
41
equivalence class represents a set of valid or invalid states for
input condition. Typically an input condition is a specific numeric
value, a range of values, a set of related values, or a condition.
TEST APPROACH:
Testing can be done in two ways:
Bottom up approach
Top down approach
Top down approach: This type of testing starts from upper level
modules, since the detailed activities usually performed in the
lower level routines are not provided stubs are written. A stub is a
module shell called by upper level module and that when reached
properly will return a message to the calling module indicating
that proper interaction occurred. No attempt is made to verify the
correctness of the lower level module.
42
7. REPORTS
INDEX PAGE:
43
REGISTRATION PAGE:
44
LOGIN PAGE:
45
HOME PAGE:
46
FRIENDS:
47
PICTURES:
48
VIDEOS:
49
8. FUTURE ENHANCEMENTS
50
9. CONCLUSION
51
10. BIBLOGRAPHY
Sites Referred:
www.roseindia.net/jsp/jsp.htm
www.w3schools.com
52
www.jsptut.com
www.htmlref.com
53