0% found this document useful (0 votes)
6 views9 pages

PBL Report

Uploaded by

thisisheramb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views9 pages

PBL Report

Uploaded by

thisisheramb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

PROJECT

REPORT
PROJECT BASED LEARNING
Project-Based Learning - Semester 3

Submitted by:

• Heramb Manglani (CU23220029)


• Satyam Upadhyay (CU23220183)
• Aditya Nigam (CU23220178)
• Piyush Joshi (CU23250044)

Submitted to:

• Mr. Sharad Kumar (Assistant Professor)


• Mr. Aditya Rathi (Assistant Professor)
Abstract
The project involves designing and implementing a
simple cross-platform client-server chat application
using Java. The application supports features such
as public and private messaging, multiple user
handling, and file transfer. Limitations, potential
improvements, and a user manual are also
discussed. The system’s design is straightforward,
leveraging Java’s socket and threading libraries to
avoid low-level memory management challenges.
Table of Contents
Introduction

Literature Review

System Design

Expected Output

Conclusion
1. Introduction
The chat application demonstrates a network-based system capable of supporting
multiple users simultaneously. Built entirely in Java, the system includes a client
application (jMessenger) and a server application (jServer).

1.1 Problem Statement

• Users must manually check who is online as the system does not automatically
update the user list.
• The absence of unique user identifications can result in nickname collisions.
• Messages are not encrypted during transmission, raising security concerns.

1.2 Aims and Objectives

• Support multiple simultaneous users.


• Enable public and private messaging.
• Provide user signup and login functionalities.
• Facilitate file transfers between users.

1.3 Applications and Scopes

• Useful for connecting people on the same network server.


• Supports text and file exchange.
• Can be upgraded to include video chat and live chat features.
• Designed for potential national-level implementation.

1.4 Motivation

Nepal lacks its own chat application, relying instead on foreign platforms. This project
aims to provide a locally developed chat solution to foster communication and
innovation.
2. Literature Review

Research reveals a lack of similar applications


developed in Nepal, although comparable
systems like WhatsApp and Messenger exist
globally. The project adapts concepts from these
platforms with unique design aspects for the
local context. It is envisioned as a step toward a
national-level application.
3. System Design
The system is divided into client-side and server-side components.

3.1 Functional Description

Client Side:

• Connects to the server using a hostname and port number.


• Sends connection requests and receives acceptance from the server.

Server Side:

• Listens for incoming connections on a specific port.


• Manages new sockets for each client connection.

3.2 Requirement Analysis

Hardware Requirements:

• PC with Wi-Fi or LAN.


• General-purpose processor and hard disk.

Software Requirements:

• JDK 1.8.
• MySQL.
• NetBeans 7.0 or higher.
• Any OS supporting JRE 6.
4.Expected Output

The project aims to deliver a fast, secure, and data-


efficient chat application that allows users to send
messages and files over a shared network. It should be
user-friendly and efficient.
5. Conclusion
The project demonstrates the development of a basic client-
server chat application using Java. It highlights the potential of
Java networking in facilitating communication.

Limitations:

• The client application requires the server to be active.


• A single point of failure exists if the server goes down,
disrupting communication.

Future improvements include enhancing security through


encryption, automatic online user updates, and minimizing
dependency on a single server.

You might also like