chat server full report
#1

[attachment=2422]


CHAT SERVER
(ONLINE CHAT ENGINE)
Submitted by:
JIBU.K.KURUVILLA
SREEJITH.S
1.INTRODUCTION
CHAT SERVER is an online system developed for the group of members to communicate with each other over the internet. This system solves almost all the limitations of the conventional system. Both the students and teachers and the company are equally benefited by the proposed system. The system saves a lot of time and effort for both.we are introducing a new software called CHAT SERVER for chatting purpose.we can say thoroughly that this software is very useful for the college.lt is mainly designed for the college to reduce the communication gap between the different peoples in a college.
2. ORGANIZATION PROFILE
In the course of the past over 30 months, CYBERPRISM has had the opportunity to assist its over 20 odd customers worldwide in their quest for a sustainable competitive advantage. This has been the result of the growing long term relationship with these customers wherein CYBERPRISM participates in the strategic and policy making process as the information systems partner. Thus CYBERPRISM and its clients have worked together to identify the ways and means to use information technology to achieve their goals. During this process business systems and processes have been re-engineered to derive the desired competitive edge.
This is possible because CYBERPRISM is able to offer a wide range of services to its customers at all stages of this process. Thus CYBERPRISM participates with its clients in its strategic and business planning process and provides a single source for the acquisition and management of the process of using Information Technology as a strategic weapon.
3. ABOUT THE SYSTEM
CHAT SERVER is an online system developed for the group of members to communicate with each other over the internet. This system solves almost all the limitations of the conventional system. Both the students and teachers and the company are equally benefited by the proposed system. The system saves a lot of time and effort for both.
The system has four levels of interaction or three
modules. MODULES:
> Administrator level
> staff level
> Student level
> Parent level
Administrator level:
From the name itself we know that it is administrator's part. Only the administrator is authorized to log in to it. If any
changes is needed in the system, he enter this level and will make enough changes .He is the only authorized person to alter the details in database and other important areas of the system. The updating of the details and other details are edited by him. If a new user is registered administrator has the privilege to approve or deny his /her request.
Staff level:
This is for the staffs working at the various departments or branches. Staff will log in using the user id and password. Staff will enter the details(subject , department etc.. ) while registering.feedback and chatting facility are available to teachers
Student level:
Student can login in to the site from anywhere .He can register online, if registration is completed, he is provided with login name and password .Using this he can login and know the status of the other chatters .He can chat with his friends(online and offline) and a also send feedback to his teachers.
Parent level:
Student can login in to the site from anywhere .He can register online, if registration is completed, he is provided with login name and password .Using this he can login and know the status of the other chatters .He can chat with his sons studing in that college (online and offline) and a also make a conversation with teachers about the students.
4.PROGRAM ENVIRONMENT
4.1 HARDWARE SPECIFICATION
Requirement Recommendation
Processor Intel Pentium class, 600 megahertz (MHz) Higher
RAM 128 MB 256 MB
Free hard disk space 370 MB (minimum install) 600 MB
| Monitor VGA Super VGA
r
CD-ROM drive 24X
52X
4.2 SOFTWARE SPECIFICATION
OPERATING SYSTEM : WINDOWS2000 ADVANCED SERVER
WINDOWS XP
CLIENT SIDE : HTML
SERVER SIDE JSP, SERVLETS
BACKEND : MS SQL SERVER 2000
SMP lets software use multiple processors on a single
server in order to improve performance, a concept known as hardware scaling, or scaling up. Any idle processor can be assigned any task, and up to 8 CPUs can be added to improve performance and handle increased loads.
Clustering
Clustering provides users with constant access to
important server-based resources. Windows 2000 Advanced Server provides the system services for two-node server clustering. With clustering, you create two cluster nodes that appear to users as one server. If one of the nodes in the cluster fails, the other node begins to provide service in a process known as fail over. Combined with advanced SMP and large memory support in Windows 2000 Advanced Server,
Network load balance
Another way to improve the availability of Windows 2000 systems is through the use of network load balancing. To handle large amounts of traffic more efficiently, network load balancing routes incoming
requests to one of several different machines.
¦
Component load balancing
The newly released Microsoft Application Center 2000 will go beyond NLBS to include Component Load Balancing. With Component Load Balancing, Windows 2000 can balance loads among different instances of the same COM+ component running on one or more machines that are running Application Center 2000. To add flexibility to distributed Web applications, you can use Component Load Balancing in conjunction with Network Load Balancing Services.
4.2.2 LANGUAGES AND TOOLS
METHODOLOGY
When you are designing distributed applications, you must consider availability and performance. A common solution is to include a data store on the client system. Typically, the client will require a lightweight data store as a result of limited resources. This approach poses a challenge for data synchronization between heterogeneous data stores. One resolution to this problem is a Java-based approach using JDBC. Distributed databases use a client/server architecture to process information requests.
Server Side:
Server controls, manages the entire system and stores the complete details regarding their client. And when request arises, authentication is done and the server provides the details for the corresponding ones. The server will do the entire work as a background process. The user does not have any interaction with servers. In this system the data request once arrived, is accepted from client and. according to the client's request and sent the data.
Client Side:
This Client-side software will always interact with users working as the front-end. First of all a connection is established with server. Then make appropriate request for data. Display the data in the user requested format. Getting specification from the user is the main functionalities of the client side and passes it to server side for processing.
Development Aids:
TECHNOLOGY
J2EE OVERVIEW
TODAY, more and more developers want to write distributed transactional applications for the enterprise and thereby leverage the speed, security, and reliability of server-side technology. In the fast-moving and demanding world of e-commerce and information technology, enterprise applications must be designed, built, and produced for less money, with greater speed, and with fewer resources than ever before. To reduce costs and fast-track application design and development, the Java„¢2 Platform, Enterprise Edition (J2EE„¢) provides a component-based approach to the design, development, assembly, and deployment of enterprise applications .The J2EE platform offers a multitiered distributed application model, reusable components, a unified security model, flexible transaction control, and Web services support through integrated data interchange on Extensible Markup Language (XML)-based open standards and protocols. Not only can user deliver innovative business solutions to market faster than ever, but also the platform-independent J2EE component-based solutions are not tied to the products and application programming interfaces (APIs) of any one vendor. Vendors and customers enjoy the freedom to choose the products and components that best meet their business and technological requirements.
Distributed Multitiered Applications
The J2EE platform uses a distributed multitiered application model for enterprise applications. Application logic is divided into components according to function, and the various application components that make up a J2EE application are installed on different machines depending on the tier in the multitiered J2EE environment to which the application component belongs. J2EE Components
¢ Client-tier components run on the client machine.
¢ Web-tier components run on the J2EE server.
¢ Business-tier components run on the J2EE server.
¢ Enterprise information system (ElS)-tier software runs on the EIS server.
J2EE multitiered applications are generally considered to be threetiered applications because they are distributed over three locations: client machines, the J2EE server machine, and the database or legacy machines at the back end. Three-tiered applications that run in this way extend the standard twotiered client and server model by placing a multithreaded application server between the client application and back-end storage.
J2EE Application 1
J2EE Application 2
Dv
ynamic HTML Pages
Client Tier
Client Machine
Enterprise Beans
Web Tier
Business Tier
J2EE
Server
Machine
EIS Tier
Database
Server
Machine
Multitiered Applications J2EE Components
J2EE applications are made up of components. A J2EE component is a self-contained
functional software unit that is assembled into a J2EE application with its related classes and files and that communicates with other components. The J2EE specification defines the following J2EE components:
¢ Application clients and applets are components that run on the client.
¢ Java Servlet and JavaServer Pages„¢ (JSP„¢) technology components are Web components that run on the server.
¢ Enterprise JavaBeans„¢ (EJB„¢) components (enterprise beans) are business
components that run on the server.
J2EE components are written in the Java programming language and are compiled
in the same way as any program in the language. The difference between J2EE components and "standard" Java classes is that J2EE components are assembled into a J2EE application, are verified to be well formed and in compliance with the J2EE specification, and are deployed to production, where they are run and managed by the J2EE server.
J2EE Clients
A J2EE client can be a Web client or an application client. Web Clients
A Web client consists of two parts:
(1) dynamic Web pages containing various types of markup language which are generated by Web components running in the Web
tier.
(2) a Web browser, which renders the pages received from the server.
A Web client is sometimes called a thin client. Thin clients usually do not query
databases, execute complex business rules, or connect to legacy applications. When use a thin client, such heavyweight operations are off¬loaded to enterprise beans executing on the J2EE server, where they can leverage the security, speed, services, and reliability of J2EE server-side technologies.
Applets
A Web page received from the Web tier can include an embedded applet. An applet is a small client application written in the Java programming language that executes in the Java virtual machine installed in the Web browser. However, client systems will likely need the Java Plug-in and possibly a security policy file in order for the applet to successfully execute in the Web browser. Web components are the preferred API for creating a Web client program because no plug-ins or security policy files are needed on the client systems. Also, Web components enable cleaner and more modular application design because they provide a way to separate applications programming from Web page design. Personnel involved in Web page design thus do not need to understand Java programming language syntax to do their jobs.
An application client runs on a client machine and provides a way for users to
handle tasks that require a richer user interface than can be provided by a markup language. It typically has a graphical user interface (GUI) created from the Swing or the Abstract Window Toolkit (AWT) API, but a command-line interface is certainly possible. Application clients directly access enterprise beans running in the business tier. However, if application requirements warrant it, an application client can open an HTTP connection to establish communication with a servlet running in the Web tier.
The JavaBeans„¢ Component Architecture
The server and client tiers might also include components based on the Java- Beans component architecture (JavaBeans components) to manage the data flow between an application client or applet and components running on the J2EE server, or between server components and a database. JavaBeans components are not considered J2EE components by the J2EE specification. JavaBeans components have properties and have get and set methods for accessing the properties. JavaBeans components used in this way are typically simple in design and implementation but should conform to the naming and design conventions outlined in the JavaBeans component architecture.
J2EE Server Communications
The client communicates with the business tier running on the J2EE server either
directly or, as in the case of a client running in a browser, by going through JSP pages or servlets running in the Web tier. J2EE application uses a thin browser-based client or thick application client. In deciding which one to use, user should be aware of the trade-offs between keeping functionality on the client and close to the user (thick client) and offloading as much functionality as possible to the server (thin client). The more functionality you off-load to the server, the easier it is to distribute, deploy, and manage the application; however, keeping more functionality on the client can make for a better perceived user experience.
Client Tier
Web Browser Web Pages, Applets, and Optional JavaBeans Components
Web Tier
Business Tier
Application Client and Optional JavaBeans Components
J2EE Server
Figure 1-2 Server Communications Web Components
J2EE Web components are either servlets or pages created using JSP technology. Servlets are Java programming language classes that dynamically process requests and construct responses. JSP pages are text-based documentsthat execute as servlets but allow a more natural approach to creating static content. Static HTML pages and applets are bundled with Web components during application assembly but are not considered Web components by the J2EE specification. Server-side utility classes can also be bundled with Web components and, like HTML pages, are not considered Web components. The Web tier, like the client tier, might include a Java¬Beans component to manage the user input and send that input to enterprise beans running in the business tier for processing.
Business Components
Business code, which is logic that solves or meets the needs of a particular business domain such as banking, retail, or finance, is handled by enterprise beans running in the business tier.
Web Tier
Business and EIS Tiers
SREE NARAYANA GURUKULAM
kadayirippu
There are three kinds of enterprise beans: session beans, entity beans, and message- driven beans. A session bean represents a transient conversation with a client. When the client finishes executing, the session bean and its data are gone. In contrast, an entity bean represents persistent data stored in one row of a database table. If the client terminates or if the server shuts down, the underlying services ensure that the entity bean data is saved. A message-driven bean combines features of a session bean and a Java Message Service (JMS) message listener, allowing a business component to receive JMS messages asynchronously.
Enterprise Information System Tier
The enterprise information system tier handles EIS software and includes enterprise infrastructure systems such as enterprise resource planning (ERP), mainframe
transaction processing, database systems, and other legacy information systems. For example, J2EE application components might need access to enterprise information systems for database connectivity.
J2EE Containers
Normally, thin-client multitiered applications are hard to write because they involve many lines of intricate code to handle transaction and state management, multithreading, resource pooling, and other complex low-level details. The component- based and platform-independent J2EE architecture makes J2EE applications easy to write because business logic is organized into reusable components. In addition, the J2EE server provides underlying services in the form of a container for every component type. Because user do not have to develop these services himself, users are free to concentrate on solving the business problem at hand.
Container Services
Containers are the interface between a component and the low-level platform specific functionality that supports the component. Before a Web, enterprise bean, or application client component can be executed, it must be assembled into a J2EE module and deployed into its container. The assembly process involves specifying container settings for each component in the J2EE application and for the J2EE application itself. Container settings customize the underlying support provided by the J2EE server, including services such as security, transaction management, Java Naming and Directory
Container Types
Interface„¢ (JNDI) lookups, and remote connectivity. Here are some of the highlights:
¢ The J2EE security model lets you configure a Web component or enterprise bean so that system resources are accessed only by authorized users.
¢ The J2EE transaction model lets you specify relationships among methods that make up a single transaction so that all methods in one transaction are treated as a single unit.
¢ JNDI lookup services provide a unified interface to multiple naming and .directory services in the enterprise so that application components can access naming and directory services.
¢ The J2EE remote connectivity model manages low-level communications between clients and enterprise beans. After an enterprise bean is created, a client invokes methods on it as if it were in the same virtual machine. Because the J2EE architecture provides configurable services, application components within the same J2EE application can behave differently based on where they are deployed. For example, an enterprise bean can have security settings that allow it a certain level of access to database data in one production environment and another level of database access in another production environment. The container also manages nonconfigurable services such as enterprise bean and servlet life cycles, database connection resource pooling, data persistence,
and access to the J2EE platform APIs . Although data persistence is a nonconfigurable service, the J2EE architecture lets you override container-managed persistence by including the appropriate code in the enterprise bean implementation when user want
more control than the default container-managed persistence provides.
J2EE Server and Containers
The deployment process installs J2EE application components in the J2EE containers
J2EE server
The runtime portion of a J2EE product. A J2EE server provides EJB and Web containers.
Enterprise JavaBeans (EJB) container
Manages the execution of enterprise beans for J2EE applications. Enterprise beans and their container run on the J2EE server. Web container
Manages the execution of JSP page and servlet components for J2EE applications. Web components and their container run on the J2EE server. Application client container
Manages the execution of application client components. Application clients and their container run on the client. Applet container
Manages the execution of applets. Consists of a Web browser and Java Plugin running on the client together. Web Services Support
Web services are Web-based enterprise applications that use open, XML-based standards and transport protocols to exchange data with calling clients. The J2EE
XML
XML is a cross-platform, extensible, text-based standard for representing data. When XML data is exchanged between parties, the parties are free to create their own tags to describe the data, set up schemas to specify which tags can be used in a particular kind of XML document, and use XML stylesheets to manage the display and handling of the data. For example, a Web service can use XML and a schema to produce price lists, and companies that receive the price lists and schema can have their own stylesheets to handle the data in a way that best suits their needs. Here are examples:
¢ One company might put XML pricing information through a program to translate the XML to HTML so that it can post the price lists to its intranet.
¢ A partner company might put the XML pricing information through a tool to create a marketing presentation.
¢ Another company might read the XML pricing information into an application for processing.
SOAP Transport Protocol
Client requests and Web service responses are transmitted as Simple Object Access Protocol (SOAP) messages over HTTP to enable a completely interoperable exchange between clients and Web services, all running on different platforms and at various locations on the Internet. HTTP is a familiar request-and response standard for sending messages over the Internet, and
SOAP is an XML based protocol that follows the HTTP request-and-response model. The SOAP portion of a transported message handles the following:
¢ Defines an XML-based envelope to describe what is in the message and how to process the message
¢ Includes XML-based encoding rules to express instances of applicationdefined
data types within the message
¢ Defines an XML-based convention for representing the request to the remote service and the resulting response
Packaging Applications
A J2EE application is delivered in an Enterprise Archive (EAR) file, a standard Java Archive (JAR) file with an .ear extension. Using EAR files and modules makes it possible to assemble a number of different J2EE applications using some of the same components. No extra coding is needed; it is only a matter of assembling (or packaging) various J2EE modules into J2EE EAR files. An EAR file contains J2EE modules and deployment descriptors. A deployment descriptor is an XML document with an .xml extension that describes the deployment settings of an application, a module, or a component. Because deployment descriptor information is declarative, it can be changed
without the need to modify the source code. At runtime, the J2EE server reads the deployment descriptor and acts upon the application, module, or component accordingly.
There are two types of deployment descriptors: J2EE and runtime. A J2EE deployment descriptor is defined by a J2EE specification and can be used to configure deployment settings on any J2EE-compliant implementation. A runtime deployment descriptor is used to configure J2EE implementation-specific parameters. For example, the Sun Java System Application Server Platform Edition 8 runtime deployment descriptor contains information such as the context root of a Web application, the mapping of portable names of an application's resources to the server's resources, and Application Server implementation-specific parameters, such as caching directives. The Application Server runtime deployment descriptors are named sun-moduleType.xm\ and are located in the same directory as the J2EE deployment descriptor.
application.xml |sun application.xml
EAR File Structure
A J2EE module consists of one or more J2EE components for the same container type and one component deployment descriptor of that type. An enterprise bean module deployment descriptor, for example, declares transaction attributes and security authorizations for an enterprise bean. A J2EE module without an application deployment descriptor can be deployed as a stand-alone module. The four types of J2EE modules are as follows:
¢ EJB modules, which contain class files for enterprise beans and an EJB deployment descriptor. EJB modules are packaged as JAR files with a .jar extension.
¢ Web modules, which contain servlet class files, JSP files, supporting class files, GIF and HTML files, and a Web application deployment descriptor. Web modules are packaged as JAR files with a .war (Web archive) extension.
¢ Application client modules, which contain class files and an application client deployment descriptor. Application client modules are packaged as JAR files with a .jar extension.
¢ Resource adapter modules, which contain all Java interfaces, classes, native libraries, and other documentation, along with the resource adapter deployment descriptor. Together, these implement the Connector architecture for a particular EIS.
Resource adapter modules are packaged as JAR files with an .rar (resource adapter archive) extension.
Page Number: 19
ft SREE NARAYANA GURUKULAM COLLEGE
kadayirippu
JDBC (Java Database Connectivity)
Java Database Connectivity classes are Java classes that allow an application to send sql statement to a DBMS system and retrieve the results. One of the JDBC's strength is inter- operability- a developer can create JDBC applications without targeting a specific DBMS.
DATA
FLOW
DIAGRAM
Client (1)
Response
(2)
SERVER CONTROLS
JSP or SERVLETS is designed around the concept of server controls. This stems from the fundamental changes in the philosophy for creating interactive pages. In particular, with the increasing power of servers and the ease of building multi-server web-frames.
SERVER CONTROL HIERARCHY
The server controls are logically broken down into a
set of families
¢ HTML Server Controls: The server equivalents of the HTML controls. They create output that is the same as the definition of the control within the page, and they use the same attributes as the standard HTML lament.
¢ Web Form Controls. A set of controls that are equivalent of the normal HTML <form> controls, such as a textbox, a hyperlink, and various buttons. They have a standardized set of property names that make life easier at design-time, and easier for graphical page creation tools to build the page.
¢ List Controls. These controls provide a range of ways to build lists. These lists can also be data bound. In other words, the content of the list can come from a data source such as an Array, a Hash Table, or a range of other data sources. The range of controls provides many different options, and
¢ Rich Controls: Produce the rich content and encapsulate complex functionality, and will output pure HTML or HTML and Script.
¢ Validation Controls: A set of special controls designed to make it easy to check and validate the values entered into other controls on a page. They perform the validation client side, server side, or both, depending on the type of client device that requests the page.
WEB CLIENTS
Web clients are used to communicate with a Web sever to send requests for files and receive information from the server. It interprets this information and displays it in a format that can be understood by the user. This client has to be able to translate all data received from the server and send back data entered by the user. With the current Web standards, the Web clients also send back information about the system it is being run on, so that the server may respond accordingly, if it is configured to do so.
WEB SERVERS
Web servers, just like other servers, perform the prime function of serving the network it is on. The service here is receiving requests for information and delivering it on a particular protocol. Essentially, a Web server is just a file server. The user requests a file and this is provided by the web server, if available. It is this software that manages user requests and server files. It may handle security, cache; server limits and even manages the server or set of servers.
XML
XML is a markup language for documents containing structured information. Structured information contains both content (words, pictures, etc.) and some indication of what role that content plays (for example, content in a section heading has a different meaning from content in a footnote, which means something different than content in a figure caption or content in a database table, etc.). Almost all documents have some structure.
A markup language is a mechanism to identify structures in a document. The XML the number of applications currently being developed that are based on, or make use of, XML documents is truly amazing for our purposes, the word "document" refers not only to traditional documents, like this one, but also to the myriad of other XML "data formats". These include vector graphics, e-commerce transactions, mathematical equations, object meta-data, server APIs, and a thousand other kinds of structured information. Edification defines a standard way to add markup to documents.
HTML
English scientists Berners-Lee wrote the server and client software on his computer and distribution began among his fellow scientists. Along with this colleagues, he grappled with the protocols and ended up with the URLs (Uniform Resource Locators), HTTP (Hyper Text Transfer Protocol), and HTML.
HTML is a simple text-based language that uses a series
of tags to create a document that can be viewed by a browser. This versatile language allows the creation of hypertext links, also known as Hyper Links. These hyper links can be used to connect documents on different machine, on the same network or on a different network, or can even point to point of text in the same document.
UNDERSTANDING HTML
Web documents are written in Hyper Text Markup
Language (HTML). After a designer specifies a document's structure using HTML, the designer can apply an HTML document specification called a Document Type Definition (DTD) to the document. The HTML DTD is formal definition of the HTML syntax based on the Standard Generalized Markup Language (SGML).HTML documents are platform independent.. To create an HTML document, designers embed tags (delimiters) and possibly character entity reference into a text-based document to specify operations a browser will perform on the corresponding text.
Hypertext (which usually appears as highlighted or
underlined in a web document) lets user's hyperlink to other documents or elsewhere within the same document. A hot zone is similar to a hypertext, in that user can click their mouse on the hot zone or jump to another document or to another location within the current document. A single image can have
multiple independent hot zones. Tags also tell the browser to connect a user to another file or URL when he clicks an active hyperlink.
5.FRONT END AND BACK END
FRONT END: J2EE (JSP AND SERVLETS)
Jsp and servlets are mainly used for high security,this Jsp is mainly used for creating webpages.As our project is related to Online ,we needed to create webpages for the software,for that jsp and servlets are used.Some part of Flash and Dreamweaver is also used here.
BACKEND: SQL SERVER 2000
Microsoft® SQL Server 2000 is a relational database management and analysis system for e-commerce, line-of-business, and data warehousing solutions. SQL Server 2000, the latest version, includes support for XML and HTTP, performance and availability features to partition load and ensure uptime, and advanced management and tuning functionality to automate routine tasks and lower total cost of ownership. . The SQL Server 2000 software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. SQL Server 2000 is intended for mission-critical, heavy-load production systems as well as for embedding
SQL Server and XML support
Extensible Markup Language (XML) is a hypertext programming language used to describe the content of a set of data and how the data should be output to a device or displayed in web page. In a relational database such as Microsoft sql server 2000,all operations on the tables in the database produce a result in the form of table. Web application Programmers on the other hands are more familiar with working with hierarchical representation of data in xml or html documents. The sql server 2000 introduces support for xml The Microsoft sql server 2000 relational database engine natively supports extensible markup language (XML).
FEATURES OF SQL SERVER 2000
¢ In tern et In tegra tion.
The SQL Server 2000 database engine includes integrated XML support. It also has the scalability, availability, and security features required to operate as the data storage component of the largest Web sites. The SQL Server 2000 programming model is integrated with the Windows DNA architecture for developing Web applications, and SQL Server 2000 supports features such as English Query and the Microsoft Search Service to incorporate user-friendly queries and powerful search capabilities in Web applications.
¢ Scalability and Availability.
The same database engine can be used across platforms ranging from laptop computers running Microsoft Windows® 98 through large, multiprocessor servers running Microsoft Windows 2000 Data Center Edition. SQL Server 2000 Enterprise Edition supports features such as federated
servers, indexed views, and large memory support that allow it to scale to the performance levels required by the largest Web sites.
¢ Enterprise-Level Database Features.
The SQL Server 2000 relational database engine supports the
features required to support demanding data processing environments. The database engine protects data integrity while minimizing the overhead of managing thousands of users concurrently modifying the database. SQL Server 2000 distributed queries allow you to reference data from multiple sources as if it were a part of a SQL Server 2000 database, Replication allows you to also maintain multiple copies of data, while ensuring that the separate copies remain synchronized. You can replicate a set of data to multiple, mobile, disconnected users, have them work autonomously, and then merge their modifications back to the publisher
¢ Ease of installation, deployment, and use.
SQL Server 2000 includes a set of administrative
and development tools that improve upon the process of installing, deploying, managing, and using SQL Server across several sites. SQL Server 2000 also supports a standards-based programming model integrated with the Windows DNA, making the use of SQL Server databases and data warehouses a seamless part of building powerful and scalable systems.
6.SYSTEM DESIGN & DEVELOPMENT
The design phase focuses on the detailed implementation of the system recommended in the feasibility study. The design phase is a transition from a user oriented document to a document oriented to the programmers or database personnel. Systems design goes through two phases of development:
¢ Logical Design
The DFD so far are known as logical data flow diagrams. They specify various logical processes performed on data, ie the type of operations performed. A logical DFD does not specify who does the Operations, whether it is done manually or with a computer and also where it is done. A physical DFD specifies these.
¢ Physical Design
A physical DFD is easily drawn the fact gathering stage. A physical DFD is a good starting point in developing logical DFD; it is some times useful to depict physical movement of materials.
The data flow diagram shows the logical flow of a system and defines the boundaries of the system. For a candidate system, it describes the inputs (source), outputs (destination), database (files) and procedures (data flow), all in a format that meet the user's requirements.
6.1 INPUT DESIGN
Input design is the process of converting user-originated inputs to a computer based format, Input data are collected and organized into a group of similar data. Inaccurate input data is the most common cause of data processing errors. Effective input design minimizes errors made by data entry operators. The goal of designing input data is to make data entry as easy, logical and free from errors as possible. In addition to the general form considerations such as collecting only required data, grouping similar or related data, input design requires consideration of the needs of the data entry operator, m entering data, an operator needs to know the following: -
I The allocated space for each field.
¦¢ Field sequence, which must match that in the source document. h The format at which data field enter ¦¢ Access Details
Access screen contains the details of accessing a file from a client or from the other clients in the network. This screen includes the provision for selecting a file from any directory.
6.2 OUTPUT DESIGN
Computer output is the important and direct source of information to the user. Efficient, Intelligible Output design should improve the system's relationships with the user and helps in decision making. They also provide a permanent hard copy of these results for later consultation.
The various types of outputs required by the system are
given below:
¢ External Output: whose destination is outside the concern and requires special
attention.
¢ Internal Output: whose destination is within the concern and requires careful design because they are the user's main interface within the computer.
¢ Operation Outputs: whose use is purely within the computer department
¢ Interactive Outputs: which involves the user in communicating directly.
Before you sit down to design the database, gather all the information you want to include in the database. I mean everything. Go around to each department of the company (or just write it out yourself if this is just for you) and find out what everyone wants in the database. Once you have everything, bring it back, and create one huge table.
From there, break that table down to 1NF, then 2NF, and so on. Go back over each table, and make sure they all work together, and are all 4NF tables. If they aren't, then it can be assured the tables will suffer problems in the future.
Quality is in the design. And for those people who know,
this helps comply with Codd's first 2 rules for a truly relational database system.
6.3 CODE DESIGN
The purpose of coding is to express the program logic in the best possible way and to the check it. The main reasons for coding are:
1. Unique Identification. Each item in a system should be identified uniquely
and correctly.
2, Cross referencing. Diverse activities in an organization give rise to
Iransactions in different sub systems but affect the same item
P, efficient storage. Code is a concise representation it reduces data entry pme and improves reliability, Code as a key reduces storage space required for the data, Retrivel based on a key search is faster in a computer.
Requirements of coding scheme.
The number of digits/characters used in a code must be minimal to reduce storage space of the code and retrieval efficiency. It should be expandable, that is it must allow new items to be added easily. It should be meaningful and convey to a user some information about the characteristics of the item to enable quick recognition and identification of the item.
Type of Codes.
1. Serial Numbers. This method is that it is concise, precise and expandable. It is however not meaningful.

8m-Semester Branch: CSE Project Title: CHAT SERVER
¦2. Block Codes. The block codes use blocks of serial numbers. This code is Expandable and more meaningful than the serial number coding. It is precise but not comprehensive.
3. Group classification code. This is an improvement on the block code and is more meaningful.
Code Efficiency: It is often said that readability of a program is much more important than the intricacies of its code. Steps, which can be taken at the coding stage, will include:
¢ Use of meaningful data names
¢ Inclusion of commentary
¢ Layout of code
¢ Avoidance of tricks (straight forward code)
¢ Detection of Error.
if a code is designed which is able to detect the two types of common errors namely single transcription and transposition errors, It will be reasonably good. Such code is called modules-11 code. In this check a set of codes they are transformed to another set of codes with error detecting property
and represents the ultimate previews of specifications, design and coding. Testing represents an interesting anomaly for the software. Doing the earlier definition and development phase it was attempted to build software from an abstract concept to a tangible implementation
The main objectives of testing are: -
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 finding an as yet undiscovered error. A successful test is one that uncovers as yet undiscovered error. The above objectives imply a dramatic change in view point. They move counter to the commonly held view that a successful test is one in which no errors are found. Our objective is to design tests that systematically uncover different classes of errors and do so with a minimum amount of time and effort.
If testing is conducted successfully it will uncover errors in the software. As a secondary benefit, testing demonstrates that software function appears to be working according to specification and that ¦performance requirement appears have to been met. In addition, data collected as testing is conducted provides a good indication of software ¦reliability and some indication of the software quality as a whole, but there is one thing that testing cannot do.
7.2 SYSTEM TESTING
For any software that is newly developed, primary
importance is given to testing of the system. It is last opportunity for the developer to detect the possible errors in the software before handing over it to the customer. Testing is the process by which the developer will generate a set of test data, which gives the maximum probability of finding all types of errors that can occur in the software. The various steps of testing the system can be listed as given below.
¢ Running the program to identify any errors (whether syntax or semantic) that might have occurred while feeding the program into the system.
¢ Applying the screen formats to regulate users to gauge the extend to which the screens are comprehensible to the user.
¢ obtaining the results/responses from user and analyzing it for improvement.
¢ Check the data accessibility from the data server and whether any improvements are needed or not.
Testing correctness
The following ideas should be part of any testing plan
1. Preventive Measures
2. Spot checks
3. Testing all parts of the program
4. Test Data
5. Looking for trouble
6. Time for testing
7. Re-testing
The data is entered in all forms separately and whenever an error occurred, it is corrected immediately. A quality team deputed by the
8,h-Semester Branch: CSE Project Title: CHAT SERVER
; management verified all necessary documents and tested the software while
entering the data at all levels.
The entire testing process can be divided into three
phases
1. Unit testing
2. Integrated Testing
3. Final/System testing
1. Unit Testing
As this system was partially GUI based Web application, the following were tested in this phase
1. Tab Order
2. Reverse Tab Order
3. Field Length
4. Front end Validations
In our system, unit testing has been successfully handled. The test data was given to each and every module in all respects and got the desired output. Each module has been tested found working properly.
2. Integration Testing
Test data should be prepared carefully since the data only determines the efficiency and accuracy of the system. Artificial data are prepared solely for testing. Every program validates the input data.
3. Validation Testing
In this, all the code modules were tested individually one after the other. The following were tested in all modules
1. Loop Testing
2. Boundary Value analysis
3. Equivalence Partitioning Testing
In our case all the modules were combined and given the test data. The combined module works successfully with out any side effect on other programs. Everything was found fine working
. 3. Output Testing
This is the final step in testing. In this the entire system was tested as a whole with all forms, code, modules and class modules. This form of testing is popularly known as Black Box testing or system testing
Black Box testing methods focus on the functional requirement of the software. That is, Black Box testing enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program. Black Box testing attempts to find errors in the following categories; incorrect or missing functions, interface errors ,errors in data structures or external database access .performance errors and initialization error and termination errors.
8,h-Semester Branch: CSE Project Title: CHAT SERVER
I 7.3 SYSTEM IMPLEMENTATION
Implementation is one of the most important tasks in project. Implementation is the phase, in which one has to be cautions, because all the efforts undertaken during the project will be fruitful only if the software is properly implemented according to the plans made.
The implementation phase is less creative than system design. It is primarily concerned with User-Training, Site Preparation and File conversation. When the Manager's system is linked to terminals on remote sites, the telecommunication network and tests of the network along with system are also included under implementation.
Depending upon the nature of the system, extensive
user training may be required. Programming itself is a design work. The initial
parameters of the management information system should be modified
because of programming efforts; programming provides a reality test for the
assumptions made by the analyst. System testing checks the
readiness and accuracy of the system of the system access update and retrieve data from new files. Once the program becomes available, the test data are read into the computer and processed .In most conventions, parallel run was conducted to establish the efficiency of the system.
Posf Implementation Review
Post implementation review means changing from one system to another. The objective is to put the tested system in to operation while holding cost's risks and personal irritation to a minimum involves.
1. Creating computer compatible files
2. Training the operating staff.
3. Installing terminals and hardware.
Project Title: CHAT SERVER
The definition of software maintenance can be given by describing four activities that are under taken after the program is released for use. The first maintenance activity occurs since it is unreasonable to assume that software testing will uncover all errors in a large software system. The process of including the diagnosis and correction of one or more errors is called Corrective maintenance.
The second activity that contributes to a definition of maintenance occurs since rapid change is encountered in every aspect of computing .There for adaptive maintenance modifies software properly interface with changing environment.
Third activity involves recommendations for new capabilities, modifications to the existing functions and general enhancements when the software is used. To satisfy request perspective maintenance is performed.
The fourth maintenance activity occurs when software is changed to improve future maintainability or reliability .this is called preventive maintenance.
A computer system is secure if neither its ability to attain its objective nor its availability to survive can be adversely affected by an unwanted events. A computer-based security is a combination of many assets or resources design to perform some function or to provide service.
System Security
In this system, which is, web based, several measures have been taken to provide some security. Loss of confidentiality is reduced to a great extent. The facility to impose strict authorization is completely vested in the hands of the system administrator. He/She has the full authority to add or delete user to and from the system respectively. Only valid users can enter the system. They have to provide a valid user id and password, to prove that they are valid users .If any one of this is wrong, access is denied to the system.Forced change of password can be imposed after a period as specified by the system administrator. Also the password is made to contain alphanumeric characters. If any unauthorized person tries to enter the system, then also preventive measures can be taken. For e.g. after four consecutive trails that result in failure, provisions should be made such that the process terminates and the exits from the program.
Education and User Training
The purpose of training is to ensure that all the personnel who are associated with the system should possess the necessary knowledge and skills. The end users must know in detail what their rules will be, how they can use the system and what system will or will not do. Before the initialization of training program, materials are prepared.-The reference manuals are mainly based upon the system specification. Both the system operators and users need the training.
7.4SYSTEM MAINTENANCE
Software maintenance is the process of modifying a software system or component after delivery to correct false, improve
performance and other attributes, or adapt to change environment. Maintenance covers a wide range of activities including correcting coding and design errors, updating documentation and test data and of hardware and software. Maintenance is always necessary to keep the software usable and useful. Hardware also requires periodic maintenance to continue to bring a new system to standards. Software maintenance activities can be classified into
¢ Corrective Maintenance
¢ Adaptive Maintenance.
¢ Perceptive Maintenance.
Corrective
maintenance removes software faults.
Corrective maintenance should be the overriding priority of the software maintenance team.
Perceptive maintenance involves recommendations for
¦new capability modifications to the existing functions and general enhancements when the software is used. To satisfy this request, perceptive maintenance is performed.
Adaptive maintenance modifies the software to keep it up
to date with its environment. Adaptive maintenance may be needed because of changes in the user requirements, changes in the target platform, or changes in external interfaces. Minor adaptive changes may be handled by normal maintenance process. Major adaptive changes should be carried out as a separate development project.
QUALITY ASSURANCE
The quality of an information system depends on its
design, development, testing and implementation. One aspect of system quality is its reliability. A system is reliable if, it does not produce failures. Although it is virtually impossible to develop software that can be proven to be error free, software development strive to prevent the occurrence of errors, using methods and techniques include error detection, correction and error tolerance. Both strategies are useful for keeping the system operating and preventing failures. Unlike hardware with which there can be manufacturing and equipment failures with software failures are the result of design errors that were introduced when specifications were formulated and software written.
An error avoidance, developers and programmers make
every attempt to prevent errors from occurring at all. The scientific methods and techniques are used in the analysis and design phases are aimed at meeting this objective. This emphasis on early and careful identification of user equipments is another way this objective is pursued. Still analysis must assume that it is impossible to fully achieve this objective.
Error Detection and Correction
This method uses design features that detect errors and
make necessary change to correct either the error while the program is in use or the effect on the user so that a failure does. Not occurs. Even though the error may not happen for several years after the system is installed, the error is there from the day of development. The failure occurs later.
8.DATA FLOW DIAGRAMS
CONTEXT LEVEL (0 LEVEL)
8,h-Semester Branch: CSE Project Title: CHAT SERVER
FIRST LEVEL
I to ice
ST COM) LEVEL
Expansion Of Send Mere.ige
Read from I s climi 1 J
V
I Send to
I,
H SREE NARAYANA GURUKULAM COLLEGE Page Number: 45
kadayirippu
9. DATABASES IN CHATSERVER
REGISTRATION
FIELD NAME DATA TYPE
UNAME VARCHAR USERNAME
PASS VARCHAR PASSWORD
LNAME CHAR LNAME
PLACE VARCHAR LOCATION
ADDRESS TEXT ADDRESS
PIN TEXT PINCODE
DOB VARCHAR DATE OF
E-MAIL VARCHAR E-MAIL
PHONE TEXT PHONE
flag TEXT False
ID NUMERIC USER ID
Teacher
FIELD NAME DATA TYPF nFsr.RmnN
Name NUMERIC Full name
Password VARCHAR Login password
feedback VARCHAR Student's feedback
Branch VARCHAR Department of study
Feedback
FIELD NAME DATATYPE DESCRIPTION
Student id VARCHAR ID OF STUDENT
Teacher id VARCHAR ID OF TEACHER
Feedback VARCHAR FEEDBACK
Name; User Type: Branch; Date Of Birth:
Sex:
Address: State: Country Fm.ol Id:
'¦ student \.';teacher -....Parent
Computer
¦ 1 ' Jan 1970
O Female
-gjDone
:W Local intranet
CHATSERVER LOGIN WINDOW
Uxerli: ram
Password: ¢¢Â¦
CstrType: ; Student
| Login
Student
Teacher
Administrator
' j Local intranet
Teacher Feedback -
Ttachfr

Chat
Fwdback


(Submit
*J Locaf'ntranet
CHATSERVER ADMINSITRATOR LOGIN WINDOW
ADMNISTRATOR CHAT MANAGER
t Manage chatroom Select a chatroom v
Open a chatroom
# Moderators
i Backup chatrooms
¢ Manage jChatBox
§ Logout
Welcome to jChatBox administration panel! Chatrooms backup done successfully.
'' rt^vx U for r;cr.--:->rr.rre::.'. ¢.
41
'jurairtranet
CREATING AND EDITING ROOMS
i f Manage chatroom
Select a ctatroom *
¢ Open a chatroom
t Moderators
t Backup chatrooms
¢ Manage jChatBox
¢ Logout
- Setup parameters to open a chatroom ¢
Buffered-framed (JSP) v 35 v
12 seconds v Action-Tracker v 8 Ves 0 Mo | english S 0 HTML
URL Converter
Multiple moderator selection if allowed.
- Select moderators) - ; principal
s Cancel
5^ Done
Local intranet
COMMON CHAT ATTRIBUTES WINDOW
£ Manage chatroom
; Select a chatroom ¦v;
§ Open a chatroom
% Moderators
i Backup chatrooms
§ Manage jChatBox
# Logout
C.\Program fi'eiAApache Software Fo
aUTOCONf vaige lj ailvv-i-i.
C:\Program F.les\ftpwhe Software Foi
It mean* iVfEfc*Pp_HOME/-f7'£fe-iH':/cc-frf
Backup File :
fcackyp filename c-f jChat&c-x, It-j. : ¦'t.':^Tie;alh':*,'ji-hirtbo>yb3d'up.s5tl
Logs folder:
! system
Ua» f older pf jChstfcci. (e.g. : fhcFT.*/alKe/):h3tbo<(iogs:
System login:
Vo'-i'i-: j.-.ci' Deay;t is : system
jchatbox£ja va200m.net
System email : TimeOut:
i..:r*r! j j«ri'-;n tirieoirt if: .seconds.
! jChatBo x .Chat.Transcrtpt .TextDu i english
USERSESSIONID :
Lie: Ht!ji"ts::on It-. DO HOT CHWCJf !
TRANSCRIPT:
"'jnroipt -r;risrnAr^.it'on - Ft;!: qualified flarj rarrse.
Default chatrooms language:
¦jfree-for-non-commercial.oxw
D*rau-- iaretiag-.
License file :
JChatBox is free for noncommercial sites.
U Update SYSTEM password New password : Confirm password :
Default h password. CHANGE IT «
' ou have tc select *fce checkbox above ir ycu want to update the SYSTEM password. This password is stored as its HD5 hash valjfc {!,*. tnirystid -n config file;.
^ local intranet
CHATSERVER ADMINISTRATOR EDITOR
^ Manage chatroon ; Select a chatroom ¢
Open a chatroom Moderators Backup chatrooms Manage jChatBox Logout
-jChatBox Moderators -
Moderator has been added successfully.
Add moderator '' Remove moderator Update moderator
Moderator: - Select a moderator to update ¢ v i
Useniame (login): Email:
Update moderator password
New password :
Confirm password : [
¢a
\i Local htranet
11.CONCLUSION
We can conclude that this project enables easy decision making with the support of correct and precise information, Accurate and timely reports as there would be less chance for errors in transactions. The new system can lead to increase in transactions i.e., more billing, more booking as the computerization speeds up operations, Increase in revenue due to increase in transactions and prevents loss of revenue. Management authorities can collect reports at any point of time from software. They need not worry about the delay in reports from finance and other departments. Computers can handle large volume of data without any frustrations.
As the software is totally integrated, there is no question of increased data entry problems. As the software comes with very flexible user interface, users will feel very comfortable with new environment.
SCOPE FOR FUTURE ENHANCEMENTS
The current application developed is in
accordance with the requirement that has been provided by the organization. On regarding the future enhancement, the application can be further expanded in accordance with the changing scenario in the web-based applications that need frequent changes in the changing environment and expansion of the organization. Since the change in technology and user needs arises frequently in certain short intervals of time, the application can be further upgraded to meet the requirements that may arise in the far or near future. With regarding to the needs that arises, more and more features can be included by adding it as separate modules and integrating it with the existing system.
12. BIBLIOGRAPHY
I.The Java Complete Reference - Herbert Schildt
2. javazoom.com
3. JAVA SERVER PAGES - DONALD HAWKING
Reply
#2
[attachment=3948]
this is the diagram of CHAT SERVER
Reply
#3
i need chat engine project report for my bca final exam please send me the project report on my mail :suajykundu2008[at]gmail.com
Reply
#4
i need a well-arranged format of this project report...
Reply
#5
er diagram and dfd for chat server ,ne1 having plz upload soon
Reply
#6

to get information about the topic" chat server full report"refer the page link bellow

http://studentbank.in/report-chat-server...8#pid59178
Reply
#7
In the fall farmland around the substation , long a lot of peanuts and beans, I am far from looking at their branches , while the suspect was buried in the land of the fruit must eat real , while drooling .
.
Murong hoon inability quarrel with him .
yql2014
Reply
#8

The subsequent day, Li Qi located your ex history, Master of science. Yao Chunjuan household. Master of science. Yao Chunjuan ought to find your ex out and about, Li Qi your ex history, troubled, tearful, explained: "?! We've often appreciated anyone, tend not to the thing is that you will want to manage at this point you, do you remember to supply us a possibility. "
Having said that, everything for gents being dressed in pants a huge amount of, for what reason Iverson bust a gut for his:? Childish.
Him / her families will not just want to revisit place. She has use kids wagering right and damaged or lost all the solution, as well as ways to return? Absolutely love, close the doorway, all the time frame about lifespan, yet clear. This girl rallied and additionally developed hurting for work really difficult for lifespan. Small to medium sized the city, and additionally him / her kids, contacts and additionally co-workers, this girl is not exclusively, this girl would definitely stick.
yql2014
Together, is dandelion 's life.
However, his teacher says to him , a man died in the happiest time , then his soul will become a meteor .
A moon, will miss you my long coalescence thousands of miles away .
yql2014
Reply

Important Note..!

If you are not satisfied with above reply ,..Please

ASK HERE

So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: 2 level dfd for chat server, multithreading chat process server c, dfd diagram example of chat server, med student chat room, container com, private chat server, web chat,

[-]
Quick Reply
Message
Type your reply to this message here.

Image Verification
Please enter the text contained within the image into the text box below it. This process is used to prevent automated spam bots.
Image Verification
(case insensitive)

Possibly Related Threads...
Thread Author Replies Views Last Post
  SAMBA SERVER ADMINISTRATION full report project report tiger 3 4,719 17-01-2018, 05:40 PM
Last Post: AustinnuAke
  air ticket reservation system full report project report tiger 16 46,803 08-01-2018, 02:33 PM
Last Post: RaymondGom
  An Efficient Algorithm for Mining Frequent Patterns full report project topics 3 4,714 01-10-2016, 10:02 AM
Last Post: Guest
  online examination full report project report tiger 14 42,735 03-09-2016, 11:20 AM
Last Post: jaseela123d
  Employee Cubicle Management System full report computer science technology 4 5,081 07-04-2016, 11:37 AM
Last Post: dhanabhagya
  e-Post Office System full report computer science technology 27 25,750 30-03-2016, 02:56 PM
Last Post: dhanabhagya
  Remote Server Monitoring System For Corporate Data Centers smart paper boy 3 2,807 28-03-2016, 02:51 PM
Last Post: dhanabhagya
  college website project full report project report tiger 28 67,021 29-11-2015, 02:37 PM
Last Post: Guest
  steganography full report project report tiger 31 33,550 07-07-2015, 02:57 PM
Last Post: seminar report asees
  ENQUIRY INFORMATION ON INSTITUTE full report seminar topics 1 2,202 10-11-2014, 09:15 PM
Last Post: Guest

Forum Jump: