Acc. No. DC 927

download Acc. No. DC 927

of 69

Transcript of Acc. No. DC 927

  • 7/26/2019 Acc. No. DC 927

    1/69

    ONLINE CHATTING

    BY:ARANYAKE CHAKRABORTY

    EXAMINATION ROLL NUMBER: MCA-3213023

    REGISTRATION NUMBER: 113609 OF 2010-2011

    UNDER THE GUIDANCE OF:

    PROF. ANUPAM SINHA

    PROFESSOR, CSE Department, JADAVPUR UNIVERSITY

    THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR

    THE DEGREE OF

    MASTERS

    IN

    COMPUTER APPLICATION,2013

    DEPARTMENT OF COMPUTER SCIENCE ENGINEERING

    FACULTY OF ENGINEERING AND TECHNOLOGY

    JADAVPUR UNIVERSITY

    KOLKATA 700 032

  • 7/26/2019 Acc. No. DC 927

    2/69

    Table of Contents

    INTRODUCTION - - - - - - [ 1 ]

    WHY CHOOSE THIS PROJECT - - - - - [ 2 ]

    PROJECT ANALYSIS - - - - - - [ 3-5 ]

    OBJECTIVES - - - - - - [6-7]

    TECHNICAL DETAILS - - - - - - [ 8 ]

    SOFTWARE USED - - - - - - [ 9 ]

    HARDWARE USED - - - - - - [ 10 ]

    SOFTWARE ARCHITECTURE - - - - - [ 11-13 ]

    FEASIBILITY STUDY - - - - - - [14-16]

    PROCESS MODEL - - - - - - [17-20]

    ENTITY RELATIONSHIP DIAGRAM - - - - - [ 2127 ]

    DATA FLOW DIAGRAM - - - - - - [ 2834 ]

    FLOWCHART - - - - - - - [ 35 ]

    USE CASE - - - - - - - [ 36 ]

    SYSTEM DESIGN DETAILS- - - - - - [37-42 ]

    TESTING - - - - - - - [43-47]

    PROJECT SCHEDULING - - - - - - [48-49]

    OVERVIEW - - - - - - - [ 5058 ]

    INNOVATIVENESS & USEFULLNESS- - - - - [ 59 ]

    FUTURE SCOPE - - - - - - - [ 60 ]

    LIMITATION - - - - - - - [ 61 ]

    CONCLUSION - - - - - - - [ 62 ]

    BIBLIOGRAPHY - - - - - - - [ 63 ]

  • 7/26/2019 Acc. No. DC 927

    3/69

    Department of Computer Science and Engineering,

    Faculty of Engineering and Technology,

    Jadavpur University, Kolkata 700032

    Certificate of Approval

    This is to certify that the thesis entitled Online chatting is a bona-fide record of work carried

    out by Aranyake Chakraborty in partial fulfillment of the requirements for the award of the

    degree of Master of Computer Application, in the Department of Computer Science andEngineering, Jadavpur University. It is understood that by this approval, the undersigned do not

    necessarily endorse or approve any statement made, opinion expressed or conclusion drawn

    therein, but approve the thesis only for the purpose for which it is submitted.

    Examiners:

    ____________________________

    (Signature of the Examiner) (Signature of the Supervisor)

  • 7/26/2019 Acc. No. DC 927

    4/69

    To whom it may concern

    This is to certify that the work in this thesis entitled Online Chatting has been satisfactorily

    completed by Aranyake Chakraborty. It is a bona-fide piece of work carried out under mysupervision and guidance for partial fulfillment of the requirements for the awarding of the

    Master of Computer Application degree of the Department of Computer Science & Engineering ,

    Faculty of Engineering & Technology, Jadavpur University, during the academic year 2012-13.

    ______________________________

    Prof.Anupam Sinha

    Department of

    Computer Science and Engineering

    Jadavpur University

    Forwarded by:

    __________________________________Prof. Sivaji Bandyopadhyay

    Head of the Department of Computer Science & Engineering

    Jadavpur University

  • 7/26/2019 Acc. No. DC 927

    5/69

    Declaration of Originality and Compliance of Academic Ethics

    I hereby declare that this thesis contains literature survey and original research work by the

    undersigned candidate, as part of his Master of Computer Science and Engineering studies.

    All information in this document has been obtained and present in accordance with academic

    rules and ethical conduct.

    I also declare that, as required by these rules and conduct, I have fully cited and referenced all

    material and results that are not original to this work.

    Name: Aranyake Chakraborty

    Exam Roll Number : MCA-3213023

    Registration Number: 113609 of 2010-2011

    Thesis Title: Online Chatting.

    Signature with date:

  • 7/26/2019 Acc. No. DC 927

    6/69

    Acknowledgement

    With my sincere respect and gratitude, I would like to thank my thesis guide Prof. Anupam Sinhafor his continuous support for this thesis work, for his patience, motivation and enthusiasm. His

    guidance helped me a lot throughout the duration of the work. His valuable suggestions inspired

    me a lot. I feel deeply honored that I got the opportunity to work under his guidance.

    I would also wish to thank Prof. Sivaji Bandyopadhyay, Head of the Department of ComputerScience & Engineering, Jadavpur University for providing me all the facilities and for his

    support to the activities of this thesis.

    Last, but not the least, I would like to thank all my family members and my class mates of

    Master of Computer Application batch of 2010-2013, for their co-operation and support. Their

    wealth of experience has been a source of strength for me throughout the duration of my work.

    __________________________________

    Aranyake Chakraborty

    Exam Roll No: MCA-3213023

    Registration No: 113609 of 2010-11

    Master of Computer application,2013

  • 7/26/2019 Acc. No. DC 927

    7/69

    1

    INTRODUCTION

    Teleconferencing or Chatting, is a method of using technology to bring people and

    ideas together despite of the geographical barriers. The technology has been

    available for years but the acceptance it was quit recent. Our project is an example

    of a chat server. It is made up of 2applications the client application, which runs onthe users Pc and server application, whichruns on any Pc on the network. To start

    chatting client should get connected to server where they can practice two kinds of

    chatting, public one (message is broadcasted to all connected users) and private one

    (between any 2 users only) and during the last one security measures were taken.

    This report details the work done towards the project "Online chatting".

    This particular project is a solution developed to communicate between the user

    across worldwide through Internet. The concept of sending letters and telegraphs

    has been reduced due to the new era of Internet Mailing. One such facility is being

    provided by the Chat Server. A message or information can be sent via many

    Medias, such as it can be telephonic, telegrams, fax etc to the recipient. Each such

    information requires a high level of security. To maintain such security and smooth

    completion of any communication it requires more time and human effort in manual

    system.

    "Online chatting" automates all the aspects stated above related to a communication

    in a highly secure environment. This project has been developed to receive instantand urgent messages and to provide total user satisfaction.

    The entire process has been automated using PHP technology and MYSQL

    SERVER to smoothen the flow of information in a highly secure environment

    across the network. The solution has been deployed, tested and validated

    thoroughly. While designing the system, care has been taken in efficiency,

    maintenance and reusability of the software for the present and future changes in

    the system.

  • 7/26/2019 Acc. No. DC 927

    8/69

  • 7/26/2019 Acc. No. DC 927

    9/69

    3

    PROJECT ANALYSIS

  • 7/26/2019 Acc. No. DC 927

    10/69

    4

    SYSTEM ANALYSIS

    SYSTEM OBJECTVE

    Communication over a network is one field where this tool finds wide

    ranging application. Chat application establishes a connection between 2 ormore systems connected over an intra-net or ad-hoc. This tool can be used for

    large scale communication and conferencing in an organization or campus of

    vast size, thus increasing the standard of co-operation. In addition it converts

    the complex concept of sockets to a user friendly environment. This software

    can have further potentials, such as file transfer and voice chatting options

    that can be worked upon later.

    SYSTEM ARCHITECTURE

    The chat application works in two forms:

    List form:

    In this form, all the names of the systems connected to a

    network are enlisted. These names can later be used for

    communication with the help of mouse event, or in simple

    language: a click or a double click.

    Chat Form:This form is called only when an element is selected from the

    List form. In this form, a connection is created between the host

    system and the selected system with the help of a socket

  • 7/26/2019 Acc. No. DC 927

    11/69

    5

    Operational Concepts and Scenarios

    Operation of the application based on the inputs given by the user:

    List Form:

    When initialized, returns a list containing the names of all the system

    connected in a network.

    Contains two buttons: Refresh and Connect.

    When Refresh button is clicked refreshes the list of names.

    When the Connect button is clicked or a name is double clicked, the

    chat form is initialized with a connection between the host and the client

    machine.

    Note: If no name is selected, and connect button is clicked an error box isdisplayed.

    Chat form:Contains a rich textbox which cannot be edited but only displays the

    messages from one user to another, including the self sent message, as in

    any chat application.

    Contains a textbox for messages to be written that is sent across the network.

    Contains a Send button.When the sent button is clicked, in the background, the text in the textbox

    is encoded and sent as a packet over the network to the client machine.

    Here this message is decoded and is shown in the rich textbox.

    To make it more realistic, the self sent message is shown in the rich textboxas well. Boththe messages is differentiated by the help of the identifier name at the

    beginning of each message in the rich text box.

    EXIT:The user exits the software in two scenarios:

    Exits the chat form, the list form remains intact. Exits the list form,

    this is when the application is closed.

  • 7/26/2019 Acc. No. DC 927

    12/69

    6

    OBJECTIVE

    This particular project is a solution developed to communicate between the

    users acrossworldwide through Internet. The concept of sending letters and

    telegraphs has been reduceddue to the new era of Internet Mailing. One such

    facility is being provided by the Chat Server.

    "Online chatting" automates all the aspects stated above related to a

    communication in a highly secure environment. This project has been

    developed to receive instant messages and to provide total user satisfaction.

    System Objectives

    Communication over a network is one field where this tool finds wide

    ranging application. Chat application establishes a connection between 2 or

    more systems connected over an intra- net or ad-hoc. This tool can be used

    for large scale communication and conferencing in an organization or

    campus of vast size, thus increasing the standard of co-operation. In

    addition it converts the complex concept of sockets to a user friendly

    environment. This software can have further potentials, such as file transfer

    and voice chatting options that can be worked upon later.

    Relation to External Environment

    This tool helps in two major aspects -

    enlisting them.

    resolved list.

  • 7/26/2019 Acc. No. DC 927

    13/69

    7

    Design Considerations

    Approach:

    The tool has been designed using PHP (Windows Form Application).

    Methodology:

    The user interacts with the tool using a GUI.

    of all the systems connected to anetwork.

    text.

  • 7/26/2019 Acc. No. DC 927

    14/69

    8

    TECHNICAL DETAILS

    To complete the entire project, in the front end we used PHP, CSS, and HTML5

    and in the back end we used Mysql server to maintain the database. We designed

    our page by using HTML5 and CSS. For design purpose, we have used

    Dreamweaver software. The project is developed in a single window.

    Reasons for choosing php:

    PHP is Powerful, Robust and Scalable.

    It is a general-purpose server-side scripting language originally designed for

    web application and website development.

    PHP runs on all most popular web servers and many different operatingsystems, which helps to create large and complex web applications or

    websites.

    Reasons for choosing Mysql as Backend:

    Because of its rich features in manipulating, securing and managing

    data.

    Faster and better transactions.

    Scalability and flexibility.

    Web and data warehouse strengths.

    Comprehensive application development.

  • 7/26/2019 Acc. No. DC 927

    15/69

    9

    SOFTWARE USED

    Softwares can be defined as programs which run on our computer .it act as petrol

    in the vehicle. It provides the relationship between the human and a computer. It

    is very important to run software to function the computer. Various softwaresare needed in this project for its development.

    Front End : PHP, HTML5, CSS

    Back End : MYSQL server

    Operating System : Microsoft Windows 7

  • 7/26/2019 Acc. No. DC 927

    16/69

    10

    HARDWARE USED

    In hardware requirement we require all those components which will provide us

    the platform for the development of the project. The minimum hardware requiredfor the development of this project is as follows:

    Processor : 2.31 GHz [AMD 8650 TRIPLE CORE]

    Memory : 2GB

    Disk : 250GB

    These all are the minimum hardware requirement required for our project. We

    want to make our project to be used in any. Type of computer therefore we

    have taken minimum configuration to a large extent.128 MB ram is used so that

    we can execute our project in a least possible RAM.5 GB hard disk is used

    because project takes less space to be executed or stored. Therefore minimum

    hard disk is used. Others enhancements are according to the needs.

  • 7/26/2019 Acc. No. DC 927

    17/69

    11

    .

    Software Architecture

  • 7/26/2019 Acc. No. DC 927

    18/69

    12

    Socket Overview

    A socket is an object that represents a low level access point to the IP stack. This

    socket can be opened or closed or one of a set number of intermediate states. A

    socket can send and receive data down disconnection. Data is generally sent

    in blocks of few kilobytes at a time for efficiency; each of these block arecalled a packet.

    All packets that travel on the internet must use the Internet Protocol. This

    means that the source IP address, destination address must be included in the

    packet. Most packets also contain a port number. A port is simply a number

    between 1 and 65,535 that is used to differentiate higher protocols. Ports are

    important when it comes to programming your own network applications

    because no two applications can use the same port.

    Packets that contain port numbers come in two flavors: UDP and TCP/IP. UDP

    has lower latency than TCP/IP, especially on startup. Where data integrity is not

    of the utmost concerned, UDP can prove easier to use than TCP, but it should

    never be used where data integrity is more important than performance; however,

    data sent by UDP can sometimes arrive in the wrong order and be effectively

    useless to the receiver. TCP/IP is more complex than UDP and has generallylonger latencies, but it does guarantee that data does not become corrupted when

    travelling over the internet. TCP is ideal for file transfer, where a corrupt file is

    more unacceptable than a slow download; however, it is unsuited to internet

    radio, where the odd sound out of place is more acceptable than long gaps of

    silence.

  • 7/26/2019 Acc. No. DC 927

    19/69

    13

    UDP Ports

    The User Datagram Protocol is an unreliable, connectionless oriented protocol

    that uses an IP

    address for the destination host and a port number to identify the destination

    application.

    The UDP port number is distinct from any physical port on a computer such as a

    COM port or an I/O port address. The UDP port is a 16-bit address that exists

    only for the purpose of passing certain types of datagram information to the

    correct location above the transport layer of the protocol stack.

    A UDP datagram header consists of four (4) fields of two

    bytes each:

    1. source port number

    2. destination port number

    3. datagram size

    4. checksum

  • 7/26/2019 Acc. No. DC 927

    20/69

    14

    Feasibility study

  • 7/26/2019 Acc. No. DC 927

    21/69

    15

    FEASIBILITY STUDY

    Feasibility is the determination of whether a project worth nothing. Once

    preliminary area of application has been defined its subject to a more rigorous

    examination in a feasibility study. In conducting the feasibility study three types of

    feasibility can be considered. These are Technical feasibility, Economical feasibility

    and Operational feasibility.

    TECHNICAL FEASIBILITY

    Technical feasibility is concerned with specifying equipment and software

    that will meet the requirement and goals. The analyst must find out whether

    current technical resources can be upgraded or added to in manner that fulfills the

    requests under consideration. However add-ones, to existing systems are costly

    and not worth wide simply because they must need inefficiently. If existing

    systems cannot be added onto, then the next question becomes whether there is

    technology in existence that needs the specification.

    ECONOMICAL FEASIBILITY

    Economical feasibility is the second part of the resource determination. The

    basic resources to consider are, the time and that of system analysis team, the

    cost of doing a full system study, estimated cost of hardware, and estimates costof software and/or software development.

  • 7/26/2019 Acc. No. DC 927

    22/69

  • 7/26/2019 Acc. No. DC 927

    23/69

    17

    PROCESS MODEL

  • 7/26/2019 Acc. No. DC 927

    24/69

    18

    Software Process Model

    The Software Process Model used is the Spiral Model. The choice for this model is

    in the light of the enhancements that we foresee for the future. The enhancements

    would be in the area of Networks being introduced into the software.

    Process Modules

    The functionalities and responsibilities of the system were partitioned and then

    assigned to subsystems or components as described below.

  • 7/26/2019 Acc. No. DC 927

    25/69

  • 7/26/2019 Acc. No. DC 927

    26/69

  • 7/26/2019 Acc. No. DC 927

    27/69

    21

    ENTITY RELATIONSHIP

    DIAGRAM

  • 7/26/2019 Acc. No. DC 927

    28/69

    22

    ENTITY RELATIONSHIP MODEL

    Entity relationship (ER) model is a most popular tool for data modeling.

    Through ER model high level conceptual database design is performed.ERdiagram can express the overall logical structure of a database

    graphically.ER diagrams are simple and clear-qualities that may well account

    in large part of the widespread use of the ER-model. Such a diagram consists

    of the following major components:

    Rectangle, which represents entity sets.

    Ellipse, whichrepresent attributes.

    Diamonds, which represents relationship sets.Lines, whichs links attributes to entity sets and entity sets to relationship

    sets.

    Double ellipses, which represents multivalued attributes.

    Dashes ellipses, which denote derived attributes.

    Double lines, which includes total participation of an entity in a relationship

    set.

    Double rectangle, which represent weak entity sets.

    ENTITY

    An entity is a thing or object inthe real world that is distinguishable from

    all other objects. For example, each person in the enterprise is an entity. An

    entity has set of properties, and the values for some set of properties may

    uniquely identify an entity.

    ENTITY SETS

    An entity set is a set of entities of the same type that share the same

    properties, or an attributes. The set of all people who are customer at a given

    bank, for example, can be defined as entity set customer.

  • 7/26/2019 Acc. No. DC 927

    29/69

    23

    ATTRIBUTES

    An attribute is a property of an entity. Each entity may have many attributes.

    A particular entity will have a value for each of its attributes. The attributes

    values that describes each entity become a major part of the data stored inthe database.

    Attributes can be of following types:

    Simple

    Composite

    Single-Valued

    Multivalued

    Stored

    Derived

  • 7/26/2019 Acc. No. DC 927

    30/69

    24

    CARDINALITY CONSTRAINTS

    Cardinality defines the maximum number of objects that can participate

    in a relationship.

    One-to-One

    1:1, exists when one occurrence of 1stentity is related to one entity of 2nd

    entity

    One-to-Many

    1: M, exists when one occurrence of 1stentity is related with many occurrence

    of 2ndentity, but each occurrence of 2ndentity is related with one occurrence

    of 1stentity.

    Many-to-One

    M: 1, exists when many occurrence of 1stentity is related with one occurrence

    of 2ndentity, but each occurrence of 2ndentity is related with any one

    occurrence of 1stentity.

    Many-to-Many

    M: N, exists when one occurrence of 1stentity is related with many

    occurrence of 2ndentity, and one occurrence of 2ndentity is related with many

    occurrence of 1stentity.

  • 7/26/2019 Acc. No. DC 927

    31/69

    25

    ERD OF USER

    ERD OF REGISTRATION

    ERD OF NEW MEMBER

    USER

    EMAIL_ID D_O_B

    IMAGE

    USER_IDPHONE_NO

    REGISTRATION

    CHANGE PASSWORDEDIT PROFILE

    OLD PASSWORD NEW PASSWORD

    NEW MEMBER

    EMAIL_ID D_O_B

    IMAGE

    USER_IDPHONE_NO

    NAME

  • 7/26/2019 Acc. No. DC 927

    32/69

    26

    ERD OF ONLINE USER

    ERD OF OFFLINE USER

    ONLINE USER

    EMAIL_ID

    USER_ID

    PHONE_NO

    NAME

    ONLINE USER

    EMAIL_ID

    USER_ID

    PHONE_NO

    NAME

  • 7/26/2019 Acc. No. DC 927

    33/69

    27

    ERD OF ONLINE CHATTING [ONLIVE]

    M M

    MM

    M

    1

    M M

    1

    USER OFFLINE MEMBERS

    NEW MEMBERS

    ONLINE MEMBERS

    REGISTRATION

    PHONE_NO

    EMAIL_ID D_O_B

    USER_ID

    IMAGENAME

    CREATE

    NAME

    USER_ID

    PHONE_NO

    CHATTING

    MESSAGING

    EDIT PROFILE

    EDIT

    EDIT PASSWORD

    OLD PASSWORD NEW PASSWORD

    EMAIL ID

    EMAIL_ID

    D_O_BIMAGE

    USER_IDPHONE_NO

    NAME

    EMAIL_ID

    USER_ID

    PHONE_NO

    NAME

  • 7/26/2019 Acc. No. DC 927

    34/69

    28

    DATA FLOW DIAGRAM

  • 7/26/2019 Acc. No. DC 927

    35/69

    29

    ABOUT DFD

    A data-flow diagram (DFD) is a graphical representation of the "flow" of

    data through an information system. DFDs can also be used for the

    visualization of data processing (structured design).

    On a DFD, data items flow from an external data source or an internal

    data store to an internal data store or an external data sink, via an

    internal process.

  • 7/26/2019 Acc. No. DC 927

    36/69

    30

    Registration System

    Context Level

    User Details

    First Level

    Input

    Username Access Show

    Password Granted

    Registration

    System

    Store Into

    DatabaseUser

    Database

    Profile

    CreatedChecking

    Registration

    SystemUser

  • 7/26/2019 Acc. No. DC 927

    37/69

    31

    Second Level

    Input Valid Access

    Username Enter Password

    Granted

    Third Level

    Input Valid Enter

    Username Password

    Invalid

    Database

    Check

    Profile

    Created

    Registration

    SystemUser

    Reject

    Database

    Registration

    System

    Unique

    Username

    RejectView

    Profile

    Id

    Generate

    CheckingUser

  • 7/26/2019 Acc. No. DC 927

    38/69

    32

    Login Process

    Context Level

    Input Access Granted

    First Level

    Input

    Valid

    Id and Password

    Invalid

    User Login SystemLogin

    into Profile

    User Login

    Process

    Login

    into Profile

    Match Not

    Found

    Database

  • 7/26/2019 Acc. No. DC 927

    39/69

    33

    Chatting

    Context Level

    Input

    User Message

    First Level

    Input

    Input Access

    Granted

    User Chatting

    Process

    Chat With

    Members

    User System CheckingChat

    Database

  • 7/26/2019 Acc. No. DC 927

    40/69

    34

    Second Level

    Input

    Input

    Invalid Valid

    User System Checking

    Chat

    Match

    Not Found

    Database

  • 7/26/2019 Acc. No. DC 927

    41/69

    35

    FLOWCHART

    NO

    YES

    START

    ENTER THE

    SYSTEM

    EXIT

    ID_CHECKING

    VIEW PROFILE

    MEMBERS

    OFFLINE MEMBERS ONLINE MEMBERS

    REGISTRATION

    ENTERING

    CHAT

    MESSAGE CHATTING

  • 7/26/2019 Acc. No. DC 927

    42/69

    36

    USECASE DIAGRAM :

    Insoftware andsystems engineeringa use case is a list of steps, typically

    defining interactions between a role (known inUML as an "actor") and asystem, to achieve a goal. The actor can be a human or an external system.

    In systems engineering, use cases are used at a higher level than withinsoftware engineering, often representing missions orstakeholder goals.

    Casual use case structure

    Title (goal)

    Primary ActorScopeLevel(Story): the body of the use case is simply a paragraph or two of text,informally describing what happens.

    Register

    View profile

    Edit profile

    Chatting

    Message

    Members

    Chatting

    User

    Online user

    Offline user

    http://en.wikipedia.org/wiki/Software_engineeringhttp://en.wikipedia.org/wiki/Systems_engineeringhttp://en.wikipedia.org/wiki/Systems_engineeringhttp://en.wikipedia.org/wiki/Unified_Modeling_Languagehttp://en.wikipedia.org/wiki/Actor_%28UML%29http://en.wikipedia.org/wiki/Project_stakeholderhttp://en.wikipedia.org/wiki/Project_stakeholderhttp://en.wikipedia.org/wiki/Actor_%28UML%29http://en.wikipedia.org/wiki/Unified_Modeling_Languagehttp://en.wikipedia.org/wiki/Systems_engineeringhttp://en.wikipedia.org/wiki/Software_engineering
  • 7/26/2019 Acc. No. DC 927

    43/69

    37

    SYstem Design Details

  • 7/26/2019 Acc. No. DC 927

    44/69

    38

    GUI Module Name and Description

    This module deals with the applications interface with the end user.

    All the user inputs (refreshing, connecting, chatting) are captured here.

    Design Alternatives

    Structured programming approach is used as the tool has been

    developed in Window 64 platform.

    Design Details

    At a minimum, the following should be described -

    a) Processing within module

    We develop the user interface for the application through which the

    user interacts with the tool. It consists of a main window and boxes

    which are displayed as per the menu selections made by the user.

    There are different controls such as edit controls, buttons etc which

    are used to get the user inputs.

    b) Error checking

    Errors occurring because of connection problems. Errors occurring

    due to incorrect input by the user.

  • 7/26/2019 Acc. No. DC 927

    45/69

    39

    Resolving Names Module Name and Description

    In this module the application resolves the names of the systems

    connected to a network. These names are displayed in the form of a list.

    Design Alternatives

    Structured programming approach is used as the tool has been

    developed in Win64 platform.

    Object oriented approach is an alternative to this.

    Design Details

    At a minimum, the following should be described:

    a)Processing within modules

    We provide two buttons: Refresh and Connect to the user, to

    provide input on the basis of selection using mouse event. This

    module consists of the following two sub-modules

    REFRESH:

    This refreshes the list of names indicating to the respective

    systems connected in the network.

    CONNECT:

    This connects the host system to the selected system (if any) and

    opens the next form with this connection. If no system is selected,

    then an error message is shown, which tells a user to select a system

    first.

  • 7/26/2019 Acc. No. DC 927

    46/69

    40

    b) Error checking

    Errors occurring during file saving operations.

    Assumptions

    All IP addresses fall in the same range.

    Firewall is turned off for intranet.

    Connection Modules Names and Description

    In this module the user communicates with the desired user in the form

    of text. A connection is formed between the host system and the desired

    user with the help of sockets which itself uses ports for packet data

    transfer.

  • 7/26/2019 Acc. No. DC 927

    47/69

    41

    Design Alternatives

    Structured programming approach is used as the tool has been

    developed in Win64 platform.

    Object Oriented approach is an alternative to this.

    Design Details

    At a minimum, the following should be described

    a) Processing within modules:

    We show a windows form application that makes communication

    graphic oriented and user friendly.Three GUI interfaces are captured

    under this.

    TEXTBOX :

    Here the user enters the message to be sent to the remote user.

    RICH TEXTBOX:

    In this module the message sent is pasted under host name and the

    message received displayed under the remote users name.

  • 7/26/2019 Acc. No. DC 927

    48/69

    42

    SEND BUTTON:When this button is pressed, the message in the textbox is displayed in

    the rich textbox under the hosts name and also it is sent over the

    network to the remote machine where it is displayed in the textbox

    under the sendersname.

    b) Error checking

    Errors occurring during file opening operations

    Assumptions

    All IP addresses fall in the same range.

    Firewall is turned off for intranet.

  • 7/26/2019 Acc. No. DC 927

    49/69

    43

    TESTING

  • 7/26/2019 Acc. No. DC 927

    50/69

    44

    INTRODUCTION

    Testing is a process of executing a program with the intent of finding an

    error. Testing is a crucial element of software quality assurance andpresents ultimate review of specification, design and coding.

    System Testing is an important phase. Testing represents an interesting

    anomaly for the software. Thus a series of testing are performed for the

    proposed system before the system is ready for user acceptance testing.

    A good test case is one that has a high probability of finding an as

    undiscovered error. A successful test is one that uncovers an as

    undiscovered error.

    TESTING OBJECTIVES

    1. Testing is a process of executing a program with the intent of finding

    an error.

    2. A good test case is one that has a probability of finding an as yet

    undiscovered error.

    3. A successful test is one that uncovers an undiscovered error.

  • 7/26/2019 Acc. No. DC 927

    51/69

    45

    OBJECTIVE

    The primary objective for test case design is to derive a set of tests that

    has the highest livelihood for uncovering defects in software. To

    accomplish this objective two different categories of test case design

    techniques are used. They are as follows:-

    White box testing.

    Black box testing.

    WHITE-BOX TESTING

    White box testing focus on the program control structure. Test cases are

    derived to ensure that all statements in the program have been executed

    at least once during testing and that all logical conditions have been

    executed.

    BLACK-BOX TESTING

    Black box testing is designed to validate functional requirements without

    regard to the internal workings of a program. Black box testing mainly

    focuses on the information domain of the software, deriving test cases

    by partitioning input and output in a manner that provides through test

    coverage. Incorrect and missing functions, interface errors, errors in data

    structures, error in functional logic are the errors falling in this category.

  • 7/26/2019 Acc. No. DC 927

    52/69

    46

    TESTING STRATEGIES

    A strategy for software testing must accommodate low-level tests that

    are necessary to verify that all small source code segments has been

    correctly implemented as well as high-level tests that validate major

    system functions against customer requirements.

    TESTING FUNDAMENTALS

    Testing is a process of executing program with the intent of finding

    error. A good test case is one that has high probability of finding an

    undiscovered error. If testing is conducted successfully it uncovers the

    errors in the software. Testing cannot show the absence of defects, it

    can only show that software defects present.

    UNIT TESTING

    Unit testing is essential for the verification of the code produced during

    the coding phase and hence the goal is to test the internal logic of the

    modules. Using the detailed design description as a guide, important

    paths are tested to uncover errors within the boundary of the modules.

    These tests were carried out during the programming stage itself.

  • 7/26/2019 Acc. No. DC 927

    53/69

    47

    INTEGRATION TESTING

    Integration testing focuses on unit tested modules and build the

    program structure that is dictated by the design phase.

    SYSTEM TESTING:

    System testing tests the integration of each module in the system. It

    also tests to find discrepancies between the system and its original

    objective, current specification and system documentation.The primary

    concern is the compatibility of individual modules. Entire system is

    working properly or not will be tested here, and specified path ODBC

    connection will correct or not, and giving output or not are tested here

    these verifications and validations are done by giving input values to

    the system and by comparing with expected output. Top-down testing

    is implementing here.

    ACCEPTANCE TESTING:

    This testing is done to verify the readiness of the system for the

    implementation. Acceptance testing begins when the system is complete.

    Its purpose is to provide the end user with the confidence that the system

    is ready for use. It involves planning and execution of functional tests,

    performance tests and stress tests in order to demonstrate that the

    implemented system satisfies its requirements.

  • 7/26/2019 Acc. No. DC 927

    54/69

    48

    PROJECT SCHEDULING

  • 7/26/2019 Acc. No. DC 927

    55/69

    49

    GNATT CHART

    Requirement Analysis 15 Days

    Feasibility Study 6 Days

    Designing 20 Days

    Coding 20 Days

    Testing & Modifying 15 Days

    Implements 10 Days

  • 7/26/2019 Acc. No. DC 927

    56/69

    50

    OVERVIEW

  • 7/26/2019 Acc. No. DC 927

    57/69

    51

    Registration

  • 7/26/2019 Acc. No. DC 927

    58/69

    52

    MEMBER'S LOGIN

  • 7/26/2019 Acc. No. DC 927

    59/69

    53

    FOrgET password

  • 7/26/2019 Acc. No. DC 927

    60/69

    54

    HOME PAGE

  • 7/26/2019 Acc. No. DC 927

    61/69

    55

    CHANGE PASSWORD

  • 7/26/2019 Acc. No. DC 927

    62/69

    56

    MESSAGE BOX

  • 7/26/2019 Acc. No. DC 927

    63/69

    57

    DATABASE 1

  • 7/26/2019 Acc. No. DC 927

    64/69

    58

    DATABASE 2

  • 7/26/2019 Acc. No. DC 927

    65/69

    59

    INNOVATIVENESS USEFULNESS

    The application is feasible for the economic as well as the technical advantages it

    gives.

    The main advantages of this project are described in details as follows:-

    This particular project is a solution developed to communicate between the users

    across worldwide through Internet. The concept of sending letters and telegraphs

    has been reduced due to the new era of Internet Mailing. One such facility is being

    provided by the Chat Server. A message or information can be sent via many

    Medias, such as it can be telephonic, telegrams, fax etc to the recipient. Each such

    information requires a high level of security. To maintain such security and smooth

    completion of any communication it requires more time and human effort in

    manual systems. This project has been developed to receive instant formatted test

    and graphical messages and to provide total user satisfaction

  • 7/26/2019 Acc. No. DC 927

    66/69

    60

    Future Scope

    We will definitely try to add some new lineaments over the coming

    months so that it fulfill our every need and gives the users the best chat

    experience.

    We are planning to include video chat option.

    We have an idea to come up with features like the wall, picture

    navigation and how messages be shown in inbox.

  • 7/26/2019 Acc. No. DC 927

    67/69

    61

    LIMITATION

    In this project there are some limitations which can be dissolved if we

    get more time:

    1. Due to shortage of time-span, we were unable to add the video-chat

    feature.

    2. The desired look and feel are not up to the benchmark, there is a need

    to focus on visual aspects.

    3. We will be looking at a new way to show when you have a new

    message or friend request.

    4. The purpose of this project is to guide and facilitate more and more

    online users. So, the site should be very well backed up and it is very

    necessary to have an close eye as far as security measures are concerned

    i.e, these need to be updated more often than not.

  • 7/26/2019 Acc. No. DC 927

    68/69

    62

    Conclusion

    Since its inception, the internet has become a more and more relied

    upon medium in peoples' everyday lives.People love to get engaged in

    communication via real-time conversation. In an on-the-go society, the

    role of online chatting system is very appealing and beneficial.

    Our project is only a humble venture to bring back the personal touch at

    the time of social interaction. Several user friendly coding have also

    adopted. It is easy to use and the installation technique is so simple that

    will have you up and running in minutes.

    Although, we have tried our level best to make this error-free and

    enjoyable to the users, there are still ways to improve. We are trying to

    implement some innovative thoughts, several bugs and glitches have

    been fixed while doing this. But, things do not happen overnight, as they

    say,the sky's the limit, development must roll on.

  • 7/26/2019 Acc. No. DC 927

    69/69

    BIBLIOGRAPHY

    A project means a set of works done in a specific period of time. During

    this time of the project we have taken help from several books,

    documents, papers, journals, websites etc.

    The helpful books are:

    1) Luke Welling, PHP and MySQL Web Development, Developer's

    Library

    2) Rasmus Lerdorf,ProgrammingPHP,Paperback

    3) Larry Ullman, PHP for the World Wide Web, Visual Quick Start

    Guide

    The helpful websites are:

    1)http://w3school.com

    2)http://phpeasystep.com

    3)http://php.net

    4)http://developphp.com

    5)http://homeandlearn.co.uk

    http://w3school.com/http://w3school.com/http://w3school.com/http://phpeasystep.com/http://phpeasystep.com/http://phpeasystep.com/http://php.net/http://php.net/http://php.net/http://developphp.com/http://developphp.com/http://developphp.com/http://homeandlearn.co.uk/http://homeandlearn.co.uk/http://homeandlearn.co.uk/http://homeandlearn.co.uk/http://developphp.com/http://php.net/http://phpeasystep.com/http://w3school.com/