A Mini Project Report Submitted in The Partial Fulfillment of The Requirements For The Award of The Degree of
A Mini Project Report Submitted in The Partial Fulfillment of The Requirements For The Award of The Degree of
BACHELOR OF TECHNOLOGY
IN
INFORMATION TECHNOLOGY
By
A.RAMADEVI 07991A1288
CH.SRIKANTH 07991A1268
E.B SANTOSH 07991A1273
M.RAMESH 07991A12C9
BONAFIDE CERTIFICATE
E.BSantosh(07991A1273),M.Ramesh(07991AI2C9)DepartmentofInformation Technology,
having under taken and successfully completed their project report entitled”WEB
HOSTING SERVICES” which is a bonafide work carried out in partial fulfillment for the
award of degree Bachelor of Technology in Information Technology.
My express thanks and gratitude and thanks to Almighty God, my parents and
other family members and friends without whose support, I could not have made this project
successful.
We wish to place our deep sense of gratitude to internal project guide, Mr.
K.NAGARJUNA, B.Tech for his constant motivation and valuable help through the project
work.
A.RAMADEVI (07991A1288)
CH.SRIKANTH (07991A1268)
E.B SANTOSH (07991A1273)
M.RAMESH (07991A12C9)
DECLARATION
We here declare that the work done on the desertion entitled “WEB HOSTING
SERVICES” has been carried by us and submitted in partial fulfillment of the curriculum for the
award of degree of Bachelor of Technology in Information Technology to Jawaharlal Nehru
Technological University.
The various contents incorporated in this document have not been submitted for the award
of any other degree of any other institution/university
A.RAMADEVI (07991A1288)
CH.SRIKANTH (07991A1268)
E.B SANTOSH (07991A1273)
M.RAMESH (07991A12C9)
CONTENTS
1.INTRODUCTION
1.1 About the project
2.SOFTWARE REQUIREMENTS & ANALYSIS
2.1 Requirement specification
2.2 performance requirements
2.3 project initiation
2.3.1 Formulation of goals
2.3.2 Informatory goals
2.3.3 functional goals
2.4 Software and hardware requirements
2.4.1 software requirements
2.4.2 Hardware requirements
3.PROJECT DESIGN AND IMPLEMENTATION
3.1 RAD model
3.1.1 Reliable systems
3.1.2 maintenance
3.2 Data flow diagrams
3.2.1 Constructing a DFD
3.2.2 Salient features of DFD
3.2.3 Types of data flow diagrams
3.3 UML Diagrams
3.4 Data design
3.4.1 First normal form
3.4.2 Second normal form
3.5 Interface design
4.CODING AND UNIT TESTING
4.1 Selection of specific software
4.1.1 Introduction to java
4.1.2 Java data base connectivity
4.1.3 Database design
4.2 Sample code
5.SCREENS SHOTS
6.TESTING
6.1 Content testing
6.2 Database testing
6.3 Compatibility testing
7.CONCLUSION
8.REFERENCES
INTRODUCTION
The system is developed “Web Hosting Service” for various activities like
identifying the user, provision to opt for addition of new Web Page or delete a Web Page
or modify a Web Page, to provide layouts for the Web Page and Templates of the Web
Page whenever the user wants to add a new Web Page, showing the placement of the
contents, image etc. and also the templates shows the format of the Web Pages. It is also
having an option to search for any page and the user can modify his/her details. The
system provides few templates, which will decide the format of the page i.e. where an
image is placed, where logo is placed etc. When the user selects any templates,
automatically it has to design a page according to the selected template. The
administrator is responsible to add templates.
WEB HOSTING SERVICES contains two main modules.
• Admin
• Customer
2. SOFTWARE REQUIREMENTS & ANALYSIS
INTRODUCTION
Purpose: The main purpose for preparing this document is to give a general insight
into the analysis and requirements of the existing system or situation and for
determining the operating characteristics of the system.
Scope: This Document plays a vital role in the development life cycle (SDLC)As it
describes the complete requirement of the system. It is meant for use by the
developers and will be the basic during testing phase. Any changes made to the
requirements in the future will have to go through formal change approval process.
1) Developing the system, which meets the SRS and solving all the requirements of
the system?
2) Demonstrating the system and installing the system at client's location after the
acceptance testing is successful.
3) Submitting the required user manual describing the system interfaces to work on it
and also the documents of the system.
4) Conducting any user training that might be needed for using the system.
5) Maintaining the system for a period of one year after installation.
Functional Requirements:
OUTPUT DESIGN
Output Definition
The outputs should be defined in terms of the following points:
In the next stage it is to be decided that which medium is the most appropriate for the
output. The main considerations when deciding about the output media are:
INPUT DESIGN
Input design is a part of overall system design. The main objective during the
input designs is as given below:
• To produce a cost-effective method of input.
• To achieve the highest possible level of accuracy.
• To ensure that the input is acceptable and understood by the user.
INPUT STAGES:
The main input stages can be listed as below:
• Data recording
• Data transcription
• Data conversion
• Data verification
• Data control
• Data transmission
• Data validation
• Data correction
INPUT TYPES:
It is necessary to determine the various types of inputs. Inputs can be
categorized as follows:
• External inputs, which are prime inputs for the system.
• Internal inputs, which are user communications with the system.
• Operational, which are computer department’s communications to the
system?
• Interactive, which are inputs entered during a dialogue.
INPUT MEDIA:
At this stage choice has to be made about the input media. To conclude about the
input media consideration has to be given to;
• Type of input
• Flexibility of format
• Speed
• Accuracy
• Verification methods
• Rejection rates
• Ease of correction
• Storage and handling requirements
• Security
• Easy to use
• Portability
Keeping in view the above description of the input types and input media, it can be
said that most of the inputs are of the form of internal and interactive. As
Input data is to be the directly keyed in by the user, the keyboard can be considered to
be the most suitable input device.
ERROR AVOIDANCE
At this stage care is to be taken to ensure that input data remains accurate form
the stage at which it is recorded up to the stage in which the data is accepted by the
system. This can be achieved only by means of careful control each time the data is
handled.
ERROR DETECTION
Even though every effort is make to avoid the occurrence of errors, still a
small proportion of errors is always likely to occur, these types of errors can be
discovered by using validations to check the input data.
DATA VALIDATION
Procedures are designed to detect errors in data at a lower level of detail. Data
validations have been included in the system in almost every area where there is a
possibility for the user to commit errors.
The system will not accept invalid data. Whenever an invalid data is keyed
in, the system immediately promts the user and the user has to again key in the data
and the system will accept the data only if the data is correct. Validations have been
included where necessary. The system is designed to be a user friendly one. In other
words the system has been designed to communicate effectively with the user. The
system has been designed with pop up menus.
USERINTERGFACE DESIGN
It is essential to consult the system users and discuss their needs while
designing the user interface:
USER INTERFACE SYSTEMS CAN BE BROADLY CLASIFIED AS:
1. User initiated interface the user is in charge, controlling the progress of the
user/computer dialogue. In the computer-initiated interface, the computer
selects the next stage in the interaction.
2. Computer initiated interfaces
.USER_INITIATED INTERGFACES
User initiated interfaces fall into tow approximate classes:
1. Command driven interfaces: In this type of interface the user inputs
commands or queries which are interpreted by the computer.
2. Forms oriented interface: The user calls up an image of the form to
his/her screen and fills in the form. The forms oriented interface is
chosen because it is the best choice.
COMPUTER-INITIATED INTERFACES
The following computer – initiated interfaces were used:
1. The menu system for the user is presented with a list of alternatives
and the user chooses one; of alternatives.
2. Questions – answer type dialog system where the computer asks
question and takes action based on the basis of the users reply.
Right from the start the system is going to be menu driven, the opening menu displays
the available options. Choosing one option gives another popup menu with more
options. In this way every option leads the users to data entry form where the user
can key in the data.
In this step, we formulate the goals to be achieved in the new system. As the
applications are web-based, the goals can be categorized into two types like
informatory goals and functional goals.
Informatory goals speak about what kind of information must be served by the
application. This application should fulfill the following informatory goals.
• This application should provide complete information about the several loans
and payment details.
All registered users to the web-application should have a proper login facility with
password.
• The employees and users can register to the organization using the registration
forms.
• The administrator or manager should have the facility to add loan details ,
payment details, modify the loan details, observing the day to day and month
to month transactions, and also sanction loans to customers.
Hard Disk : 80 GB
There are two levels of reliability. The first is meeting the right requirements.
A careful and through systems study is needed to satisfy this aspect of reliability. The
second level of systems reliability involves the actual working delivered to the user.
At this level, the systems reliability is interwoven with software engineering and
development. There are three approaches to reliability.
2. Error detection and correction: In this approach errors are recognized whenever
they are encountered and correcting the error by effect of error, of the system does
not fail.
3. Error tolerance: In this approach errors are recognized whenever they occur, but
enables the system to keep running through degraded perform or by applying
values that instruct the system to continue process.
3.1.2 Maintenance: The key to reducing need for maintenance, while working, if
possible to do essential tasks.
1. Process should be named and numbered for an easy reference. Each name should
be representative of the process.
2. The direction of flow is from top to bottom and from left to right. Data
traditionally flow from source to the destination although they may flow back to
the source. One way to indicate this is to draw long flow line back to a source.
An alternative way is to repeat the source symbol as a destination. Since it is used
more than once in the DFD it is marked with a short diagonal.
3. When a process is exploded into lower level details, they are numbered.
4. The names of data stores and destinations are written in capital letters. Process and
dataflow names have the first letter of each work capitalized
1. The DFD shows flow of data, not of control loops and decision are controlled
considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process whether the
data flows take place daily, weekly, monthly or yearly.
1. Current Physical
2. Current Logical
3. New Logical
4. New Physical
A UML system is represented using five different views that describe the
system from distinctly different perspective. Each view is defined by a set of diagram,
which is as follows.
In this model the data and functionality are arrived from inside the
system.
Data Design is the first of three design activities that are conducted during
software engineering. The impact of data structure on program structures and
procedural complexity cases data design to have a profound influence on software
quality. The concept of information hiding and data abstraction provides the
foundation for an approach to data design. The primary activity during data design is
to select logical representation of data objects (data dictionary) identified during the
requirements definitions and specifications phase.
In this step, we design all the interfaces for the application. Interface is the
medium between the user and the system. We consider all the client specifications
while designing the screens and reports. Every user interface has been designed so
that the system provides all the characteristics like easy to use, less number of
keystrokes to complete an action, less usage of left hand, easy too learn, easy to
navigate, consistent, error-free and functional. The entire interface that has designed
with the features listed below:
Every page has been designed so that it optimizes the user’s work efficiency.
4.CODING AND UNIT TESTING
4.1 Selection of specific software
4.1.1 Introduction to java:
Initially the language was called as “oak” but it was renamed as “Java” in
1995. The primary motivation of this language was the need for a platform-
independent (i.e., architecture neutral) language that could be used to create software
to be embedded in various consumer electronic devices.
Java is a programmer’s language.
programming.
The Java Server Pages file has a .jsp extension to identify it to the server as a
Java Server Pages file. Before the page is served, the Java Server Pages syntax is
parsed and processed into a servlet on the server side. The servlet that is generated,
outputs real content in straight HTML for responding to the customer. Because it is
standard HTML, the dynamically generated response looks no different to the
customer browser than a static response.
ACCESS MODELS:
A Java Server Pages file may be accessed in at least two different ways: A
client request comes directly into a Java Server Page.
Bean
Request
Browser Response
JSP
Figure 2.1 - Client request comes directly into java server pages
In this scenario, suppose the page accessed reusable Java Bean components
that perform particular well-defined computations like accessing a database. The
result of the Bean’s computations, called result sets is stored within the Bean as
properties. The page uses such Beans to generate dynamic content and present it back
to the client. A request comes through a servlet.
SERVLET
JDBC
Bean
Result Database
Browser Bean
Request
Response
Figure 2.2 – A request
JSP comes through servlet
The servlet generates the dynamic content. To handle the response to the
client, the servlet creates a Bean and stores the dynamic content (sometimes called the
result set) in the Bean. The servlet then invokes a Java Server Page that will present
the content along with the Bean containing the generated from the servlet.
There are two APIs to support this model of request processing using Java
Server Pages. One API facilitates passing context between the invoking servlet and
the Java Server Page. The other API lets the invoking servlet specify which Java
Server Page to use.
In both of the above cases, the page could also contain any valid Java code.
The Java Server Pages architecture separation of content from presentation- -it does
not mandate it.
4.1.2 JAVA DATABASE CONNECTIVITY(JDBC):
in the machine.
It does not support the Internet and Intranet database application access.
It provides the bridge between the JDBC API and ODBC API. The
servers.
It is platform Independent.
It passes the query through network and can be used for internet access.
Driver name:”oracle.jdbc.Driver.OracleDriver”
interest to us.
attributes and the relationship between them that are of interest to us are
still owed in the database that is designed, built and populated with data
Hyper Text Markup Language the language of the web page. World Wide
Web better known as www, HTML allows the user to produce those WebPages. It
includes the text, graphics and pointers to other web pages.
HTML is not a programming language but it is an application of ISO
standard 8879, SGML (Standard Generalized Markup Language), but specialized to
Hypertext and adapted to the web. The idea behind Hypertext is that instead of
reading text is rigid linear structure it can easily jump from one web page to another
web page. We can navigate through the information based on our interest and
preference. A mark up language simply a series of elements, each delimited with
special characters that define how text are other items enclosed with in the element
should be displayed. Hyperlinks are underlined are emphasized words that load to
other documents some portions of the same documents.
JAVA SCRIPT
In JavaScript we can:
Animate images or rotate images that change when we move the mouse
over them.
Detect the browser in use and display different content for different
browsers.
4.2 Sample Code:
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
RequestDispatcher rd=request.getRequestDispatcher("Inserted.jsp");
response.setContentType("text/html");
String aid=request.getParameter("aid");
String apwd=request.getParameter("apwd");
String cmp=request.getParameter("cmp");
String AdminAdd=request.getParameter("AdminAdd");
String cno=request.getParameter("cno");
String EmailId=request.getParameter("EmailId");
System.out.println(EmailId);
try
{
if(inserted==1)
{
rd.forward(request, response);
}
}catch(Exception ex)
{
System.out.println("Error"+ ex);
}
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
try
{
ConnectionBean CBean=new ConnectionBean();
Connection con=CBean.getConnection();
String loginName=request.getParameter("aLid");
String adminPwd=request.getParameter("aPwd");
ResultSet adminrs_found=CBean.executeQuery("select *
from admin_master where admin_id='" + loginName + "' and admin_pwd='"
+ adminPwd + "' ");
System.out.println("INSIDE ADMIN
LOGIN..............."+ adminrs_found);
if(adminrs_found.next())
{
rd=request.getRequestDispatcher("AdminHome.html");
}
else
{
rd=request.getRequestDispatcher("Login.jsp");
}
rd.forward(request, response);
}
catch(Exception ex)
{
System.out.println("Error"+ ex);
ex.printStackTrace();
}
}
}
Customer register code:
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
String cregno=request.getParameter("regno");
String CustName=request.getParameter("CustName");
String CustAdd=request.getParameter("CustAdd");
String CustCno=request.getParameter("CustCno");
String EmailId=request.getParameter("EmailId");
String stype=request.getParameter("stype");
try
{
ConnectionBean CBean=new ConnectionBean();
int inserted=CBean.executeUpdate("insert into
cust_req_details values(" + cregno + ",'" + CustName + "','" +
CustAdd + "','" + CustCno + "','" + EmailId + "'," + stype + ") ");
if(inserted==1)
{
rd.forward(request, response);
}else
{
rd1.forward(request, response);
}
}
catch(Exception ex)
{
System.out.println("erro" + ex);
}
}
}
Customer login code:
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
String cid=custrs_found.getString(1);
request.setAttribute("cid",cid);
rd=request.getRequestDispatcher("AboutDomain.jsp");
}else
{
rd=request.getRequestDispatcher("CustLogin.jsp");
}
rd.forward(request, response);
}catch(Exception ex)
{
System.out.println("Error"+ ex);
}
}
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
import java.util.*;
import CMST.*;
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String username = request.getParameter("user");
System.out.println(username);
Connection con=null;
ConnectionBean CBean=new ConnectionBean();
con=CBean.getConnection();
if (rs.next())
{
out.println("already exists");
}else
{
out.println("You Can Use This User Id");
}
}
catch(Exception e)
{ System.out.println("error"+e.getMessage());}
}
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
RequestDispatcher rd=null;
response.setContentType("text/html");
try
{
System.out.println("in logincheck");
if(adminrs_found.next())
{
rd=request.getRequestDispatcher("Login.jsp");
}else
{
rd=request.getRequestDispatcher("AdminRegistrationForm.jsp");
}
rd.forward(request, response);
}catch(Exception ex)
{
System.out.println("Error"+ ex);
package CMST;
import java.sql.*;
public ConnectionBean()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
connection=DriverManager.getConnection("jdbc:odbc:oradsn",
"system", "manager");
// System.out.println("CONNECTION ........"+
connection);
statement=connection.createStatement();
}
catch (ClassNotFoundException e)
{
System.out.println("ConnectionBean: driver unavailable");
connection = null;
}
catch (SQLException e)
{
System.out.println("ConnectionBean: driver not
loaded");
e.printStackTrace();
connection = null;
}
}
}import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
RequestDispatcher
rd=request.getRequestDispatcher("CustInserted.jsp");
response.setContentType("text/html");
String dno=request.getParameter("dno");
String cid=request.getParameter("cid");
String DomainName=request.getParameter("DomainName");
String sName=request.getParameter("sName");
String DName=request.getParameter("DName");
String date=request.getParameter("date");
String ddesc=request.getParameter("ddesc");
try
{
}catch(Exception ex)
{
System.out.println("Error"+ ex);
}
}
}import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
int cid=Integer.parseInt(request.getParameter("txtcid"));
System.out.println(cid + "ok");
int did=Integer.parseInt(request.getParameter("did"));
System.out.println(did + "ok1");
String feedback=request.getParameter("feedback");
try
{
ConnectionBean CBean=new ConnectionBean();
Connection con=CBean.getConnection();
ResultSet domain_rs=CBean.executeQuery("select * from
domain_feedback where domain_id= " + did + " and cust_id=" + cid + "
");
if(domain_rs.next())
{
System.out.println("in update");
inserted=CBean.executeUpdate("update domain_feedback set
domain_feedback='" + feedback + "' where domain_id= " + did + " and
cust_id=" + cid + " ");
}else
{
System.out.println("in insert");
inserted=CBean.executeUpdate("insert into domain_feedback
values(" + did + "," + cid + ",'" + feedback + "')");
}catch(Exception ex)
{
System.out.println(ex);
}
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import CMST.*;
public class SaveServiceDetails extends HttpServlet
{
RequestDispatcher
rd=request.getRequestDispatcher("DetailsInserted.jsp");
response.setContentType("text/html");
String serno=request.getParameter("serno");
String servName=request.getParameter("servName");
String validity=request.getParameter("validity");
int amt=Integer.parseInt(request.getParameter("Amt"));
try
{
Connection con=CBean.getConnection();
int inserted=CBean.executeUpdate("insert into toservice values('"
+ serno + "','" + servName + "','" + validity + "'," + amt + ") ");
if(inserted==1)
{
rd.forward(request, response);
}catch(Exception ex)
{
}
}}
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.*;
import CMST.*;
public class UpdateServiceDetails extends HttpServlet
{
try
{
ConnectionBean CBean=new ConnectionBean();
Connection con=CBean.getConnection();
int inserted=CBean.executeUpdate("update toservice set
service_name='"+ servName + "',validity='" + validity + "',amount=" +
amt + " where type_sid="+ serno + " ");
if(inserted==1)
{
out.println("<html> <script> function check()
{ self.close(); opener.location='ViewServiceDetails.jsp'; } </script>
<center> <h1><b>Details Updated Successfully</b></h1> </center>
</html>");
out.println("<center><input type=button
value='Close' onclick='return check()'></center>");
// rd.forward(request, response);
}
else
{
System.out.println("Not Updated");
}
}
catch(Exception ex)
{
System.out.println(ex);
}
}
}
5.SCREENS SHOTS
Home page:
About us screen:
Contact Us:
Service Detailsscreen:
Customer Login screen:
Customer Home:
New domain registration:
Files upload :
About Services screen:
Domain feedback:
Domain feedback form:
Domain details:
Membership details:
Feedback screen:
Logout screen:
6. TESTING
Testing
White-box testing
Black-box testing
Black-Box Testing alludes to tests that are conducted at the software interface.
Although they are designed to uncover errors, black-box tests are used to demonstrate
that software functions are operational, that input is properly accepted and output is
correctly produced, and that the integrity of external information is maintained. A
black-box test examines some fundamental aspect of a system with little regard for
the internal logical structure of the software.
6.1 CONTENT TESTING:
The project has been appreciated by all the users in the organization. It is easy
to use, since it uses the GUI provided in the user dialog. User friendly screens are
provided. The usage of software increases the efficiency, decreases the effort. It has
been efficiently employed as a Site management mechanism. It has been thoroughly
tested and implemented.
8. REFERENCES
Books
Software Engineering
Roger.S. Pressman
Websites
www.w3schools.com
www.programmersheaven.com
www.google.com
USER MANUAL:
To run the project user has to install the tomcat. Tomcat is installed if
and only if java is already installed in the system. For data base maintanence user has
install the oracle.
2.Go to administrative tools in the control panel and add driver name in the data
sources as microsoft ODBC for oracle.
3. After enter the driver name user has to enter data sourse name. For this project the
data source name is oradsn.
http://localhost:7070/
6. Click on the project name displayed in the applications and run the project else
enter the following URL address in the browser to enter into home page.
http://localhost:7070/whs/AdminLogin.JSP/
7. Click the links appeared in the home page. To enter into adminstrator form click
on the administrator tag. To enter into retailer form click on the retailer tag.