Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
About profile
To avail the facility user must register himself by creating his profile. This module maintains
all the
information, which belongs to the profiles that are registered in the portal. This
module maintains the total information about the registered users. For each and every user
profile has been divided into five types. i.e., Basic information, Contact information, Personal
information, Educational & Professional information, and other information. If the user dont
want to display his profile to all the users and wants to display for some of his friends then he
can change his settings in my settings option.
About Buddies
This module allows users to search friends and view their profiles and place request to add
people as friends and allows to send scraps to your buddies. If any of the users wants to
search for the friends, he can search the friends by just choosing the search option located in
the portal. They can search for the friends by choosing their own option. After completion of
search if they want to view their friends profiles then they can view the profiles by clicking
on their friends name. After completion of search if you want to add that person to your
friends list then you can open his profile and choose the option add as a friend, then it will
be placed in your friends list. If you want send a scrap to that person then you can directly
open his profile and choose the option Leave a scrap. So you can send a scrap. Finally this
module maintains all the information related to search the friends and their profiles.
About SAWAALS AND POLLS
Users can place questions on various topics and can view the answers posted by other
registered users. This functionality allows users to create polls and participate in polls created
by other users. This module deals with major and crucial part that includes the details of
existed sawals and polls. Every user can able to create a new poll and view the existed polls.
Each and every user can vote for the polls. But the user who has created the poll is not
allowed to vote for his poll. Any of the existed user can directly go to the portal, select the
poll option and vote for the poll. This facility is used to know opinion of the people. Sawal is
1
the most useful feature for the public. In this feature we can place a new sawal. In this feature
sawals is categorized into some parts, depending upon that parts we can place a sawal and
view the existed sawals. Each and every user can directly answer for the sawals excluding the
user who has created the sawal is not allowed to answer his sawal. Only the administrator can
able to cancel a sawal or a poll if it effects the others privacy.
About COMMUNITIES
This functionality allows users to create their own gang or to participate in an existing gang.
This gang feature is available for every user. Each and every user can create their own gang.
We can add the gangs details, what activities our gang should be done this type information
also we can place. Also each and every user can view the details of all the existed gangs. If
any of the user wants to join in that gang they can just click the join button, or wants to see
the members involved in that gang then just click the members button. The gang started date
also we can place and we can see the existed gangs starting dates. Only the admin user can
cancel the gang if it effects the others privacy.
About Information
Provide your opinions about anything in the world like cars, bikes, etc. Search info about
your city. We can collect the public opinion. Every user can ask for the opinion in the portal
at the same time share your opinion with the existed opinions. We can ask for the opinions
about anything in the world like cars, bikes etc, and we can search for the movies, schools in
our city. Each and every user can view all the opinions which are already existed in the
portal.
About Administrator
Activities related to administrator like permit/update/delete any user profile or a gang created
by registered users. This module deals with major and crucial part that includes the
cancellation of polls, sawaals, opinions, gangs, etc. The admin user can cancel any of the
above features if they affect any inconvenience to the users. This module deals with all the
existed gangs, polls, sawaals and maintain all the information about these features.
The following functionalities are incorporated in this application:
2
a) User Account Creation: To avail the facility user must register himself by creating
his profile.
b) Search Friends: Allows users to search friends and view their profiles and place
request to add people as friends
c) Sawals: Users can place questions on various topics and can view the answers posted
by other registered users.
d) Polls: This functionality allows users to create polls and participate in polls created by
other users.
e) Gangs: This functionality allows users to create their own gang or to participate in an
f)
g)
h)
i)
j)
existing gang.
Opinions: Provide your opinions about anything in the world like cars, bikes, etc.
Local Info: Search info about your city.
Scraps: Send scraps to your buddies.
Pictures: Allows users to upload their pics and many more.
Technologies Used: J2SE, Servlets, JSP, JDBC and Java Script.
MingleSpot is an application and is used to create/manage/monitor gangs and can send scrap
messages as well as can find the information regarding the needs. Finally you can modify
MingleSpot system properties. Lot of effort was put to make it user friendly.
Optimum utilization of application is possible. All basic features are provided.
Reduces the user interaction work.
More flexible/expendability it means developer can :
They can implement their own client (HTML/JavaScript, Applet, Flash, Java
Application). They only need API (JavaDoc) to know how to interact with
MingleSpot server-side. HTML/JavaScript skins are also a good starting point.
XML Connector service should be used for remote clients (Applets).
2. System Analysis
Unable to search for his friends and add them in the friends list.
Can able to search for friends and can also able to add them to their friends list
Can able to place a scrap to other users and can view their own scraps
Can able to ask a sawaal and can able to answer to an existing sawaal
Can able to upload their photos into the gallery and can view the existing photo.
2.2.2 MODULES
The System after careful analysis has been identified to present with the following modules.
The following functionalities are incorporated in this application
a) PROFILE MODULE
To avail the facility user must register himself by creating his profile. This module
maintains all the
portal. This module maintains the total information about the registered users. For each
and every user profile has been divided into five types. i.e., Basic information, Contact
information, Personal information, Educational & Professional information, and other
information. If the user dont want to display his profile to all the users and wants to
display for some of his friends then he can change his settings in my settings option.
b) BUDDIES MODULE
This module allows users to search friends and view their profiles and place request to add
people as friends and allows to send scraps to your buddies. If any of the users wants to
search for the friends, he can search the friends by just choosing the search option located in
the portal. They can search for the friends by choosing their own option. After completion of
search if they want to view their friends profiles then they can view the profiles by clicking
on their friends name. After completion of search if you want to add that person to your
friends list then you can open his profile and choose the option add as a friend, then it will
be placed in your friends list. If you want send a scrap to that person then you can directly
open his profile and choose the option Leave a scrap. So you can send a scrap. Finally this
module maintains all the information related to search the friends and their profiles.
c) SAWAALS AND POLLS MODULE
Users can place questions on various topics and can view the answers posted by other
registered users. This functionality allows users to create polls and participate in polls created
by other users. This module deals with major and crucial part that includes the details of
existed sawals and polls. Every user can able to create a new poll and view the existed polls.
Each and every user can vote for the polls. But the user who has created the poll is not
allowed to vote for his poll. Any of the existed user can directly go to the portal, select the
poll option and vote for the poll. This facility is used to know opinion of the people. Sawal is
the most useful feature for the public. In this feature we can place a new sawal. In this feature
sawals is categorized into some parts, depending upon that parts we can place a sawal and
view the existed sawals. Each and every user can directly answer for the sawals excluding the
user who has created the sawal is not allowed to answer his sawal. Only the administrator can
able to cancel a sawal or a poll if it effects the others privacy.
d) COMMUNITIES MODULE
This functionality allows users to create their own gang or to participate in an existing gang.
This gang feature is available for every user. Each and every user can create their own gang.
We can add the gangs details, what activities our gang should be done this type information
also we can place. Also each and every user can view the details of all the existed gangs. If
any of the user wants to join in that gang they can just click the join button, or wants to see
the members involved in that gang then just click the members button. Only the admin user
can cancel the gang if it effects the others privacy.
e) INFORMATION MODULE
Provide your opinions about anything in the world like cars, bikes, etc. Search info about
your city. We can collect the public opinion. Every user can ask for the opinion in the portal
at the same time share your opinion with the existed opinions. We can ask for the opinions
about anything in the world like cars, bikes etc, and we can search for the movies, schools in
our city. Each and every user can view all the opinions which are already existed in the
portal.
f) ADMIN MODULE
Activities related to administrator like permit/update/delete any user profile or a gang created
by registered users. This module deals with major and crucial part that includes the
cancellation of polls, sawaals, opinions, gangs, etc. The admin user can cancel any of the
above features if they affect any inconvenience to the users. This module deals with all the
existed gangs, polls, sawaals and maintain all the information about these features.
Requirement Analysis
Requirement Specification
Requirement Validation
a)Requirement Analysis:
Requirement Analysis is a software engineering task that bridges the gap between system
level software allocation and software design. It provides the system engineer to specify
software function and performance indicate softwares interface with the other system
elements and establish constraints that software must meet.
The basic aim of this stage is to obtain a clear picture of the needs and requirements of the
end-user and also the organization. Analysis involves interaction between the clients and the
analysis. Usually analysts research a problem by asking questions and reading existing
documents. The analysts have to uncover the real needs of the user even if they dont know
them clearly. During analysis it is essential that a complete and consistent set of
specifications emerge for the system. Here it is essential to resolve the contradictions that
could emerge from information got from various parties. This is essential to ensure that the
final specifications are consistent.
8
Problem recognition
Modeling
Specification
Review
Each Requirement analysis method has a unique point of view. However all analysis methods
are related by a set of operational principles.
They are
The models that depict information function and behavior must be partitioned
in a hierarchical or layered fashion.
The main problem is here while posting the answers for opinions, polls and sawaals.
If we want to post the answers for opinions, polls and sawaals which were created by you is
not allowed to post the answers.
a)Evaluation and Synthesis
In the proposed system this application saves the lot of time, and it is time saving process
when we use this application. Using this application we can easy to manage the friends list,
search for new friends, collect the opinions from the friends, upload our own photos and
interact with the friends. Each and every user can easily use the application for interacting
with the friends.
a)Specification Principles
Software Requirements Specification plays an important role in creating quality software
solutions. Specification is basically a representation process. Requirements are represented in
a manner that ultimately leads to successful software implementation.
Requirements may be specified in a variety of ways. However there are some guidelines
worth following: Representation format and content should be relevant to the problem
Information contained within the specification should be nested
Diagrams and other notational forms should be restricted in number and consistent in use.
Representations should be revisable.
The software requirements specification is produced at the culmination of the analysis task.
The function and performance allocated to the software as a part of system engineering are
refined by establishing a complete information description, a detailed functional and
behavioral description, and indication of performance requirements and design constraints,
appropriate validation criteria and other data pertinent to requirements.
10
Server
Front end
Scripting language
Java Script
Editor
Edit plus
Processor
Processor Speed
2.0. GHz
RAM
256 MB to 512 MB
Hard Disk
40GB to 80GB
Key Board
104 keys
11
a)Technical feasibility
The system is self-explanatory and does not need any extra sophisticated training. As the
system has been built by concentrating on the Graphical User Interface Concepts, the
application can also be handled very easily with a novice User. The overall time that is
required to train the users upon the system is less than half an hour.
The System has been added with features of menu-driven and button interaction methods,
which makes the user the master as he starts working through the environment. The net time
the customer should concentrate is on the installation time.
12
b)Financial Feasibility
I) Time Based: Contrast to the manual system management can generate any report just by
single click. In manual system it is too difficult to maintain historical data which become
easier in this system. Time consumed to add new records or to view the reports is very less
compared to manual system. So this project is feasible in this point of view
II) Cost Based: No special investment need to manage the tool. No specific training is
required for employees to use the tool. Investment requires only once at the time of
installation. The software used in this project is freeware so the cost of developing the tool is
minimal and hence the overall cost.
13
3. Literature Overview
14
Java was designed to meet the real world requirements of creating interactive, networked
programs. Java supports multithreaded programming, which allows us to write programs that
do many things simultaneously. A central issue for the Java designers was that of code
longevity and portability. Their goal was write once; run anywhere, any time, forever.
Java enables the creation of the cross-platform programs by compiling into intermediate
representation called Java byte code. This code can be interpreted on any system that
provides a java virtual machine. Java is designed for the distributed environment of the
Internet, because it handles TCP/IP protocols. In fact, accessing a resource using a URL is not
much different from accessing a file. The original version of Java (OAK) included features
for intra-address-space messaging. Java programs carry with them substantial amounts of the
run-time type information that is used to verify and resolve accesses to objects at run-time.
This makes it possible to dynamically link code in a safe and expedient manner.
15
Intranet
The classical definition of Intranet is the application of the Internet technologies to the
internal business applications media most refer to the Intranet in terms of applying web
technologies to information systems in the organization.
web server. Creating a separate process to handle each client request isnt necessary.
2 Servlets are platform-independent, because they are written in Java. Several web
servers, from vendors such as sun, Netscape, and Microsoft, offer the servlet API
16
Programs developed for this API can be moved to any of these environments without
recompilation.
3. The java security manager on the server enforces a set of
servlet. It can
communicate with applets, databases, or othersoftware via the sockets and RMI
mechanisms.
The Lifecycle of a servlet:
Three methods are central to the lifecycle of a servlet: init (), service( ), and destroy( ).
First, assume that a user enters a Uniform Resource Locator (URL) to the web browser.
The web browser then generates an HTTP request for this URL and sends it to the
appropriate server. Second the web server receives this HTTP request. The server maps
this request to particular servlet. The servlet is dynamically retrieved and loaded into the
address space of the server. Third, the server invokes the init( )
method of the servlet. This method is invoked only when the servlet is first loaded into
the memory. Fourth, the server invokes the servlet service( ) method , which is called to
process the HTTP request. The service( ) method is called for each HTTP request. Two
packages are required to build the servlet they are javax.servlet and
javax.srevlet.http. They constitute of servlet API. ServletRequest interface is used to read
the data from a client0request and servletResponse is used to write data to the client
response. The javax.srevlet.http package include interfaces like HttpServletRequest whish
enables servlets to read data from HTTP request and HttpServletResponse which enables
servlets to write data from HTTP response.
17
defines HTML version 3.2. HTML 3.2 aims to capture recommended practice as of early 96
and as such a replacement for HTML2.0 (RFC 1866).
A set of instructions embedded in a document is called mark up language. These instructions
describe what the document text means and how it should look like in a display. Hyper Text
Mark Up language (HTML) is the language used to encode World Wide Web documents.
Why to use html?
Website is a collection of pages, publications, and documents that reside on web server.
While these pages publications and a document as a formatted in a single format, you should
use HTML for home page and all primary pages in the site. This will enable the millions of
web users can easily access and to take advantage of your website.
HTML is considered first for formatting any new material you plan to publish on the web.
HTML documents are platform independent, meaning that they dont confirm to any
standard. If they are created properly you can move home page to any server platform or you
can access them with any complaint www browser.
STRUCTURE OF HTML
HTML elements perform a defined task. HTML uses two types of elements
Empty Tags
Container Tags
These tags differ because of what they represent. Empty tags represent formatting constricts
such as line breaks and horizontal rules. Container tags define a section of text, formats and
dot all of the selected text. A container tag has both a beginning and an ending.
3.5.1 HTML LAYOUT
An HTML document consists of text, which comprises the content of the document and tags,
which, defines the structure, and appearance of the document. The structure of an HTML
document is simple, consists of outer.
<HTML>tag enclosing the document header and body
<HTML>
<HEAD>
<TITLE>the title of HTML document</TITLE>
</HEAD>
18
<BODY>
This is where the actual HTML documents
Text lies, which is displayed in the browser
</BODY>
</HTML>
Each document has a head and body delimited by the <HEAD> and <BODY> tag. The head
is where you give your HTML document a title and where you indicate other parameters the
browser may use when displaying the document. This includes the text for displaying the
text. Tag also references special and indicates the hot spots that link your document to other
documents.
The ACTION attribute is a pointer to the script that processes the form on the server side. The
ACTION can be included by a relative path or by a full URL to a script on your server or
somewhere else. For example, the following <FORM> tag would call a script called formname in cgi-bin directory on server www.myservser.com
<FORM Method= post action=http://www.mytservser.com/cgi-bin/form-name.pl>
.
</FORM>
19
Java builds on the strength of C++. It has taken the best features of C++ and discarded the
more problematic and error prone parts. To this lean core, it has added garbage collection
(automatic memory management), multithreading (the capacity for one program to do more
than one thing at a time), security capabilities. This result is that Java is simple, elegant, and
powerful and easy-to-use.
Java is actually a platform consisting of 3 components:
1
3.7.1 JavaScript
JavaScript is a new scripting language for WebPages. Scripts written with java script can be
embedded into your HTML pages.
enhancing your HTML page with interesting elements. For example you are able to respond
to user-initiated events quite easily. Some effects that are now possible with java script were
some time ago only possible with CGI. So you can create really sophisticated pages with the
help of java script on the Internet.
problems you might encounter. Of course we need a basic. Understanding HTML before
reading this tutorial you can find many really good online resources about HTML. Best you
make an online search about html at yahoo if you want to get informed about HTML. Now
23
I want to show some small scripts so you can learn how they are implemented into HTMLdocuments and to show which possibilities you have with the new scripting language. The
following is a very small script, which will only print a text into an HTML document.
<html>
<head>
My first JavaScript
</head>
<body><br>
This is a normal HTML document
<br>
<script language=JavaScript>
Document.write (this is a java script)
</script><b r>
Backing HTML again
</body>
</html>
If you are using a java script enabled-browser at the moment then you will have the
possibility to see this script working. If your browser doesnt support Java Script then this
output might be some kind of strange
This is a normal HTML document
This is java script!
Back in HTML again.
Functions
Functions are bet declared between the <Head> tag of HTML page. Functions are called by
user-initiated events. Seems reasonable to keep the functions between the <Head> tags.
They are loaded first before a user can do anything that might call a function. Scripts can be
placed between inside comment fields to ensure that older browser do not display the script
itself.
24
<html>
<head>
<script language=JavaScript>
function pushbutton (){
alert (Hello!);
}
</script>
</head>
<body>
<form>
<input type=button name=Button1 value=push me onclick=pushbutton ()>
</form>
</body>
</html>
If we want to test this one immediately and you are using a Java Script enabled browser then
please go ahead and push the button.
This script will create a button and when you press it a window will pop up saying hello!.
In fact we have a lot of possibilities just by adding functions to our scripts.
The common browsers transmit the form information by either method: heres the complete
tag including the GET transmission method attribute for the previous form
Example
<Form method =GET action=http://www.mycompany.com/cgi-bin/upfdate.pl>
</form>
Input elements.
Use the <input> tag to define any one of a number of common form elements including text
fields multiple choice lists click able images and submission buttons. There are many
attributers for this tag only that types and name attributes are required for each element, each
25
type of input element uses only a subset of the followed attributes. Additional <input>
attributes may be required based upon which type of the form element you specify.
Submit button
The submit button (<input type=submit> ) does what its name implies, settings in motion the
forms submission to the server from the browser. We many have more than submit buttons
will be added to the parameter list the browser sends along to the server.
Example
< Input type =submit>
<Input type=submit value=submit name=name>
Reset button
The reset button if firm <input> button is nearly self- explanatory; it lets the user reset erase
or set to some default value all elements in the form. By default the browser displays a reset
button worth the label reset. We can change that by specifying a value attribute with tour
own button label.
26
Problem for doing this is ODBC gives a c language API, which uses pointers extensively.
Since java does not have any pointes and is object-oriented sun Microsystems, inventor of
java developed to suit its needs.
3.8.1 Requirements to use JDBC
To use JDBC you need a basic knowledge of databases and SQL.A part from this you need
the jdk1.1 (Java Development Kit1.1 available javasofts website) or a version of Java since
jdk1.1 and above come bundled with JDBC software.
After that you need to have a back-end database engine for which a JDBC driver is available.
When JDBC drivers are not available JDBC-ODBC bridge drivers are used to access the
database through ODBC. Back-end is not needed when JDBC driver is capable of storing and
retrieving the data itself, or if JDBC-ODBC Bridge and the ODBC driver can be used to store
and retrieve the information.
27
Database
Fig: 3.8.3 Single Tier
Server
Client
Client
Database
Fig: 3.8.4 Two Tiers (client-server)
using java applets, the applet running in some other machine, can send request only to the
server from which it is down loaded. For this reason we will need to have a intermediate
server which will accept the requests from applets and them to the actual database server.
This intermediate server acts as a two-way communication channel also. This is the
information or data from the database is passed on to the applet that is requesting it.
Server 1
Database
Client 2
Client 1
Client 3
Server 2
This can be extended to make n tiers of servers, each server carrying to specific type of
request from clients; however in practice only 3 tiers architecture is popular.
3.9 SERVLETS
Servlets provides a Java-Based solution used to address the problems currently associated
with doing server side programming, including inextensible scripting solutions, platform
specific APIs, and incomplete interfaces. Servlets are objects conform to a specific interface
that can be plugged into a Java-based server. Servlets are to the server-side what applets are
to the client-side-object byte codes that can be dynamically loaded off the net. They differ
from applets in that they are faceless objects (without graphics or a GUI component). They
serve as platform independent, dynamically loadable, plug gable helper byte code objects on
the server side that can be used to dynamically extend server-side functionality.
30
For example, an HTTP servlet can be used to generate dynamic HTML content. When you
use servlets to do dynamic content you get the following advantages:
They are
1.File Servlet
2.Invoker Servlet
3.Server side include servlet
4.Admin Servlet
5.CGI Servlet
6.Image map servlet
3.9.3 File Servlet
The file servlet provides the standard document serving capabilities of java server. This
servlet includes a caching mechanism to speed up response times of frequently accesses files.
In addition it recognizes files that are to be parsed for server side includes and passes them on
to the SSInclude Servlet.
Servlets are an effective substitute for CGI scripts and provide a faster and cleaner way to
generate dynamic documents.
The java server is both flexible and extensible. Using the java server APIs you can write your
own servlet and incorporate it into the server. To do this follows these three steps
1. Write the servlet
2. Configure the servlet
3. Invoke the servlet
Writing the Servlet
Unless they are used with the http protocol, servlets subclass the servlet. GenericServlet class
and override the service (Servlet Request, ServletResponse) method.
Servlets use with the HTTP protocol should subclass the javax.servlet.HttpServlet class
override one or both of the doGet (HttpServletRequest, HttpServletResponse) and
doPost (HttpServletRequest, HttpServletResponse) methods
Servlets class may choose to override the default implementations of the servlet lifecycle
servlet methods, init (ServletConfig) and destroy ().
32
The real beauty of the java server is that it is extensible. But, before you can use a Servlet to
add an extended functionality to the JavaServer.You have to use the Java Server
administration applet to install the Servlet and specify the default parameters and arguments.
Display the Administration Applet by connecting to:
http://server_Host_Name:9090/index.html
Are secure-even when downloading across the network, the servlets security model and the
Servlet sandbox to protect your system from unfriendly behavior.
The advantage of the Servlet API
One of the great advantages of the Servlet API is protocol independence. It assumes nothing
about:
The protocol being used to transmit on the net.
How it is loaded.
The server environment it will be running in.
These qualities are important, because it allows the Servlet API to be embedded in many
different kinds of Servers. There are other advantages to the servlet API as well.
Servlet Features
The Java Server provides several important Servlet features. These include:
Loading & Invoking Servlets.
Servlets can be loaded both locally and remotely.
Filters and Servlets change.
The Java Server uses MIME types to call Servlets sequentially.
Server size includes:
Servlets can be invoked from dynamic HTML documents using Server side include tags.
Replacing the CGI Scripts.
33
Java Server Pages is a simple, yet powerful technology for creating and maintaining
dynamic-content web pages. Based on the Java programming language, Java Server Pages
offers proven portability, open standards, and a mature re-usable component model.
3.10.1 Portability
Java Server Pages files can be run on any web server or web-enabled application server
that provides support for them. Dubbed the JSP engine, this support involves recognition,
translation and management of the Java Server Pages lifecycle and its interaction with
associated components.
3.10.2 Processing
A Java Server Pages file is essentially an HTML document with JSP scripting or tags. It
may have associated components in the form of. Class, .jar, or .ser files- -or it may not.
The use of components is not required.
The Java Server Pages file has a .jsp extension to identify it to the server as a
Java Server Pages file.
3.10.3 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.
A request comes through a servlet.
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.
34
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.
JDBC requires that the SQL statements be passed as Strings to Java methods. For
example, our application might present a menu of database tasks from which to choose.
After a task is selected, the application presents prompts and blanks for filling information
needed to carry out the selected task. With the requested input typed in, the application
then automatically invokes the necessary commands.
35
4. System Design
4.1 Introduction
The most creative and challenging phase of the life cycle is system design. The term design
describes a final system and the process by which it is developed. It refers to the technical
specifications that will be applied in implementations the candidate system. The design may
be defined as the process of applying various techniques and principles for the purpose of
defining a device, a process or a system in sufficient details to permit its physical realization.
The designers goal is how the output is to be produced and in what format samples of the
output and input are also presented. Second input data and database files have to be designed
to meet the requirements of the proposed output. The processing phases are handled through
the program Construction and Testing. Finally, details related to justification of the system
and an estimate of the impact of the candidate system on the user and the organization are
documented and evaluated by management as a step toward implementation.
The importance of software design can be stated in a single word Quality. Design provides
us with representations of software that can be assessed for quality. Design is the only way
that we can accurately translate a customers requirements into a finished software product or
system without design we risk building an unstable system, that might fail it small changes
are made or may be difficult to test, or one whos quality cant be tested. So it is an essential
phase in the development of a software product.
36
In this application each and every user must having their own User ID and Password, using
these User ID and Password only they can directly enter into their corresponding Login
forms.
After enter into their Login forms each user will interact with the following functionalities.
But according to their responsibilities only they will use the above functionalities.
37
able to share his opinions and he can able to post the local information. He can search for the
friends and add them to their friends list. He can directly invite the friends.
4.2.3 Guest User Functions
In this function, the guest user can able to search for the friends and unable to add them to
their friends list. He can able to view the existing gangs but unable to join in a gang. The
guest users can able to view sawaals but unable to post the answers to corresponding
sawaasls. He can able to view the polls but unable to vote for the poll and create a poll.
38
Field Name
Data Type
Size
Constraint
ANSWER ID
SAWAAL ID
CATEGORY
VARCHAR
VARCHAR
VARCHAR
200
200
200
s
PK
PK
NOT
NULL
SAWAAL DESCRIPTION
POSTED BY
VARCHAR
VARCHAR
200
200
A DESCRIPTION
ANSWERED BY
VARCHAR
VARCHAR
200
200
NOT
NULL
NOT
NULL
PHOTO PATH
VARCHAR
200
Data Type
VARCHAR
VARCHAR
VARCHAR
Size
Constraint
200
200
200
s
PK
PK
NOT
NULL
PHOTO PATH
VARCHAR
39
200
FIRST NAME
VARCHAR
200
NOT
LAST NAME
VARCHAR
200
NULL
NOT
NULL
DATE OF BIRTH
GENDER
VARCHAR
VARCHAR
200
200
RELATIONSHIP STATUS
CHILDREN
ABOUT ME
HERE FOR
RELIGIOUS VIEWS
POLITICAL VIEWS
LANGUAGES KNOWN
VIEW STATUS
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
200
200
200
200
200
200
200
200
NOT
NULL
Data Type
VARCHAR
VARCHAR
VARCHAR
Size
Constraint
200
200
200
s
FK
FK
NOT
NULL
PHONE NO
WORK PHONE
LOCATION
ADDRESS
VIEW STATUS
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
200
200
200
200
200
Data Type
VARCHAR
VARCHAR
VARCHAR
VARCHAR
40
Size
200
200
200
200
Constrain
ts
FK
FK
COLLEGE
COLLEGE NAME
CPERIOD
DEGREE
DCOLLEGE NAME
DPERIOD
GRADUATION
GCOLLEGE NAME
OCCUPATION
COMPANY NAME
JOB DESCRIPTION
CAREER INTERESTS
VIEW STATUS
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
VARCHAR
200
200
200
200
200
200
200
200
200
200
200
200
200
NOT
NULL
Data Type
Size
Constrain
ts
NOT
SNO
INT
20
USER ID
FRIEND NAME
PHOTO PATH
VARCHAR
VARCHAR
VARCHAR
200
200
200
NULL
FK
Data Type
Size
Constraints
MEMBER ID
INT
20
FK
GANG NAME
VARCHAR
200
NOT NULL
MEMBER NAME
VARCHAR
200
NOT NULL
PHOTO PATH
VARCHAR
200
STATUS
VARCHAR
200
41
Field Name
Data Type
Size
Constraints
GANGS ID
VARCHAR
200
PK
GANG NAME
VARCHAR
200
NOT NULL
PHOTO PATH
VARCHAR
200
DESCRIPTION
TINYBLOB
100
OWNER
VARCHAR
200
CATEGORY
VARCHAR
200
STARTING DATE
DATE
TOTAL MEMBER
INT
20
STATUS
VARCHAR
200
NOT NULL
Data Type
Size
Constraints
LOCAL ID
VARCHAR
200
PK
POSTED BY
VARCHAR
200
NOT NULL
PHOTO PATH
VARCHAR
200
CATEGORY
VARCHAR
200
LOCATION
VARCHAR
200
DESCRIPTION
TINYTEXT
DATE OF POST
VARCHAR
200
INFO STATUS
VARCHAR
200
Data Type
Size
Constraints
USER ID
VARCHAR
50
FK
PASSWORD
VARCHAR
50
NOT NULL
AUTH
INT
11
Data Type
Size
Constraints
OPINION ID
VARCHAR
200
FK
ASKED BY
VARCHAR
200
NOT NULL
PHOTO PATH
VARCHAR
200
CATEGORY
VARCHAR
200
OPINION ABOUT
VARCHAR
200
DATE OF POST
VARCHAR
200
OPINION COUNT
INT
20
Data Type
Size
Constraints
MSID
VARCHAR
200
FK
USER ID
VARCHAR
200
FK
MY ATTRACTION
VARCHAR
200
HEIGHT
VARCHAR
200
HAIR COLOR
VARCHAR
200
LOOKS
VARCHAR
200
LIKES
VARCHAR
200
DISLIKES
VARCHAR
200
SMOKING
VARCHAR
200
DRINKING
VARCHAR
200
MYPARENTS
VARCHAR
200
MYSIBLINGS
VARCHAR
200
MYCOUSING
VARCHAR
200
MYPET
VARCHAR
200
MYCHILDHOOD MEMORY
VIEW STATUS
VARCHAR
VARCHAR
200
200
Data Type
Size
43
Constraints
POLL ID
VARCHAR
200
CREATED BY
VARCHAR
200
PHOTO PATH
VARCHAR
200
POLL DETAILS
VARCHAR
200
DATE OF CREATION
DATE
OPTION1
VARCHAR
200
OPTION2
VARCHAR
200
OPTION3
VARCHAR
200
OP1COUNT
INT
20
OP2COUNT
INT
20
OP3COUNT
INT
20
POLL STATUS
VARCHAR
200
PK
Data Type
Size
Constraints
SAWAAL ID
VARCHAR
200
PK
ASKED BY
VARCHAR
200
NOT NULL
PHOTO PATH
VARCHAR
200
CATEGORY
VARCHAR
200
SAWAAL DESCRIPTION
VARCHAR
200
DATE OF SAWAAL
DATE
ANSWER COUNT
INT
20
SAWAAL STATUS
VARCHAR
200
44
4.4.1 Introduction
UML is a notation that resulted from the Unification of Object Modeling Technique and
Object Oriented Software Technology .UML has been designed for broad range of
application. Hence, it provides constructs for a broad range of systems and activities.
Ask Opinions
View Opinions
Upload Photos
Create Poll
Registered User
View Poll
Vote poll
Ask Sawals
Guest
View Sawals
Answer Sawal
45
Block Polls
Block sawals
Block Gangs
Block Answers
Send Invites
Administrator
MyProfile
MySettings
NormalUser
MyFriends
ScrapBook
DeletePhoto
Change Pwd
46
Register
getRegistere()
DBConnection
getConn()
Gangs
addGang()
view()
update()
Login
validate()
authenticate()
Search
getSearchingDetails()
view()
UserHome
displayOptions()
Local
addInfo()
viewInfo()
Opinions
addOptions()
viewOptions()
Sawal
addSawal()
updateSawal()
viewSawal()
Polls
managePolls()
vote()
displayResult()
Photos
manageGallery()
viewPhotos()
Admin Home
View()
Book Sawal
View()
Create()
opname()
Update()
Send Invites
Send()
Block Answers
View()
Block()
Invite
Action()
Block Answer
View Answers()
blockAction()
Block Sawal
getConn()
blockAction()
47
Home
Photo
Gallery
View
Photos
Upload
Photos
Search
Friend
Add to
FriendList
Invite
Friend
Enter()
View()
Upload()
Search()
Add()
Invite()
48
Login
Validate
DBConnection
AdminHome
ViewBlocked
Activities
Select
BlockAction
1: Check
2: GetConn()
3: Redirect()
4: Display()
5: SelectActivity()
6: Block()
5. System Implementation
a) Home.jsp
<%@ page language="java" %>
<%@ page import="java.sql.*" %>
<%@ page import="java.lang.*,java.util.Vector,java.util.StringTokenizer" %>
<%String UserID=(String)session.getAttribute("UserID");
String Auth="";
%>
<%
UserID
(session.getAttribute("UserID")==null)
"Null"
(String)session.getAttribute("UserID");
if(UserID.equals("Null"))
{
session.invalidate();
%>
<!--<H5 align=center><IMG SRC="Images/error.gif" WIDTH="17" HEIGHT="13"
BORDER=0 ALT="">Session time out...Please login again</H5>-->
<script language=javascript>
location.replace('myHome.html');
</script>
49
<%
}
else{
%>
<HTML>
<head>
<LINK href="styles.css" type="text/css" rel="stylesheet">
<script LANGUAGE="Javascript" SRC="Images/calender.js"></script>
<script LANGUAGE="Javascript" SRC="Images/validate.js"></script>
<script LANGUAGE="Javascript" SRC="Images/AjaxCall.js"></script>
<BODY Class=Grad><%
Connection con=null;
ResultSet rs=null,rs1=null;
Statement stmt=null,stmt1=null;
String Password = request.getParameter("Password");
session.setAttribute("UserID",UserID);
int flag=0;
try{
con = com.minglespot.ConnectionPool.getConnection();
stmt = con.createStatement();
stmt1 = con.createStatement();
String Query = "select * from login where UserID = '"+UserID+"'";
System.out.println(Query);
rs = stmt.executeQuery(Query);
System.out.println(rs);
if(rs.next())
{
Auth=rs.getString(3);
session.setAttribute("Auth",new Integer(Auth));
flag=1;
if(Auth.equals("0")){
//Show Admin Menu
%>
<jsp:forward page="AdminMenu.jsp"/>
<%
}else if(Auth.equals("1")){
50
b) Login.jsp
<%@ page language="java" %>
<%@ page session="true" %>
<%@ page import="java.sql.*,java.io.*,com.minglespot.MyFunctions"%>
<%! String ErrCode="0",LoginCode="A";%>
<HTML>
<HEAD>
<script LANGUAGE="Javascript" SRC="Images/validate.js"></script>
<LINK href="styles.css" type="text/css" rel="stylesheet">
51
enter
text
for
"+T);return false;}
}
function ChkEmailField(F,T){
var val = F.value;
var pattern = /^([a-zA-Z0-9\_\.]{4,25})$/;
if(!(pattern.test(val)==true)){alert("Please enter valid email for
"+T);return false;}
}
function ChkDateField(F,T)
{
var val = F.value;
var pattern = /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/;
52
return
false;
if(ChkAlphaField(frm.UserID,'UserID')==false) return false;
if(ChkMandatoryField(frm.uPassword,'Password')==false)
return false;
if(ChkAlphaNumericField(frm.uPassword,'Password')==false)
return false;
}
function fnValidate(s){
var frm = document.forms(0);
var UserID=frm.UserID.value;
//if(UserID==""){alert("User ID is mandatory");return false;}
var uPassword=frm.uPassword.value;
//if(uPassword==""){alert("Password is mandatory");return false;}
s.href = "Validate.jsp?UserID="+UserID+"&Password="+uPassword;
s.target="HomeFrame";
}
</script>
</HEAD>
<Body Class='Grad'>
<FORM name="Login">
<%
ErrCode = request.getParameter("ErrCode");
LoginCode = request.getParameter("LoginCode");
if(ErrCode!=null){
if(ErrCode.equals("1")){
53
COLOR=""
Face='verdana'
size='2'><B>Login</B></FONT></Legend>
<TABLE align=center width="60%" class="notepad">
<TR class="row_title">
<TH
align="center"
colspan=3><FONT
SIZE="4"
align="left"><FONT
face='monotype
SIZE="2"
COLOR="#AA2504"
corsiva'>User
ID</FONT><FONT
COLOR="red">*</FONT></TD>
<TD><Input type=text name='UserID' value='' size=8></TD></tr>
<tr><TD align="left"><FONT SIZE="2" COLOR="#AA2504"
face='monotype corsiva'>Password<FONT COLOR="red">*</FONT></TD>
<TD><Input
type=password
name='uPassword'
value=''
size=8></TD>
<TD><a href="" onclick="fnValidate(this)"><img border="0"
name="Go"
src="Images/Go0.jpg"
onmouseover="document['Go'].src='Images/Go1.jpg'"
onmouseout="document['Go'].src='Images/Go0.jpg'" ></a></tr>
</TABLE>
</fieldset>
<BR><BR>
<fieldset style="padding: 3;">
<legend><FONT
COLOR=""
size='2'><B>Register</B></FONT></Legend>
54
Face='verdana'
<P
face='monotype
align=center><FONT
corsiva'>If
you
are
SIZE="4"
not
COLOR="#AA2504"
registered
user
<Font
align=center><TD><A
HREF="Register0.jsp"
6. System Testing
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.
A good test case is one that has a probability of finding an as yet undiscovered
error
Test Case
Expecting
Exhibiting
behavior
behavior
55
Result
Enter
1
the
message
is
displaying
for Admin
Login as admin and Try It has to add the It
is
Pass
adding
4
5
to place a sawal
sawal
sawal successfully
Login as admin and try It has to block a It is blocking the Pass
to block a poll
poll
Login as admin and try It has to send
send invites
successfully
Login as user and try to It has to change It is changing the Pass
poll successfully
It
is
sending Pass
block a poll
to be displayed
displaying
Login as user and try to It has to add a It
is
is
Pass
adding
10
add a friend
friend
successfully
Pass
Login as user and try to It has to send the It is sending the
11
scrap
to
the Pass
friend
particular user
Login as user and try to It has to add the It is adding the
12
ask a sawaal
sawal
sawal successfully
Pass
Login as user and try to Error message has Error message is
13
14
to be displayed
15
Pass
is
displaying
Pass
56
7. Screen Shots
57
Screen Shots7(a):Homepage
58
59
60
61
62
63
8. Conclusion
MingleSpot can be considered as a tool, which creates an environment that allows users
to chat each other in their required chat rooms. Lots of efforts were put to make it work
perfectly and efficiently. The developed system is tested with real data and the users are
satisfied with the performance of the system and reports.
This project is developed using JSPs/Java Servlets and web Server. By using this tool we
can make easy the work of navigating, creating a chat room, allowing publicly or
privately. By this lot of work load will be reduced to the administrator, who is
creating/updating/deleting users or chat rooms. This tool is very useful for Administrating
deportment of B&I TECH SOLUTIONS. It provides extendibility also. So you can add
your own features in future very simply without disturbing the existing code. This tool
reduces the manual
work and saves the time as well as manpower. The time for
processing and producing reports is considerably reduced. All the features are
implemented and developed as per the requirements.
64
HTML Reference
Steven Holzner HTML Black Book, First Edition-2005, Dreamtech Press.
JAVA Reference
Hrbert Schildt The Complete Reference of Java2, Fifth Edition-2002, Tata McGraw-Hill
Publishing Company Limited.
Robert Orfali. Dan Harkey Client/Server Programming with JAVA and CORBA, Second
Edition-2002, Wiley Computer Publishing.
JavaScript Reference
James Jaworski Mastering JavaScript & Jscript, First Edition-1999, BPB Publications.
UML Reference
Grady Booch, James Rumbaugh, Ivar Jacobson The Unified Modeling Laguage
UserGuide, Fifth Impression-2007, PEARSON Education.
James Rumbaugh, IvarJacobson, Grady Boach The Unified Modeling Language Reference
Manual, Second Impression-2006, PEARSON Education.
S/E Reference
Sommerville Software Engineering, Seventh Edition-2004, PEARSON Education.
Web-Sites
http://www.java.sun.com
http://www.java2s.com
http://www.koders.com
http://www.theserverside.com
http://codersguru.com
http://www.google.com
65