You are on page 1of 49

Mini project report on

L-CHAT USING JAVA


In the partial fulfillment of 4th semester of MCA
By Priyadarshan P
(RegNo : 95580033)

DEPARTMENT OF COMPUTER APPLICATIONS COCHIN UNIVERSITY OF SCIENCE AND TECHNOLOGY KOCHI-22

ACKNOWLEDGEMENT

Completing a task is never a one man effort. It offers the result of a number of individuals in a direct or indirect manner that helps in shaping and achieving the result. This Project itself is an acknowledgement to the inspiration, drive and technical assistance contributed by many persons. This project would have never seen the light of this day without the help and guidance I have received. I express my gratitude to Dr. K.V. Pramod, Head of the Department and all other staff members of the Department of Computer Applications, CUSAT, Cochin, Kerala for their help and support. I wish to express my heartfelt gratitude to my family, friends and well wishers for their support and timely help.

Priyadarshan P

CONTENTS
1. SYNOPSIS 2. INTRODUCTION 2.1 2.2 Project profile System environment

3. SYSTEM ANALYSIS 3.1 3.2 System study Feasibility study

4. SOFTWARE REQUIREMENT SPECIFICATIONS 4.1 4.2 User characteristics Requirement specification

5. SOFTWARE QUALITY ASSURANCE PLAN 5.1 5.2 5.3 5.4 5.5 5.6 5.7 Purpose and scope Tasks and responsibility SQA implementation in different phases Documentation Software development process Project review Testing and quality check

6. SYSTEM DESIGN 6.1 6.2 6.3 Input design Output design Architectural design

7. SOFTWARE TESTING 7.1 Introduction

7.2 7.3 7.4

Unit testing Integration testing System testing

8. SYSTEM IMPLEMENTATION 9. SYSTEM MAINTENANCE 10. 11. CONCLUSION BIBLIOGRAPHY

SYNOPSIS

1. SYNOPSIS: L-Chat is a software which is meant for the purpose of chatting under a number of connected systems. The connection is strictly the local area network connection. In this project there is one administrator and more than one other users in the network. The administrator can access the contents in the chatting list by a log on function. We can exchange private messages as well as public messages through this software very easily. The private messages are only viewed by the user to whom the message is meant for. Front End : Core Java

INTRODUCTION

2. INTRODUCTION The growing possibilities of modern communications need the special means of security especially on computer network. The network security and easy to use of the software is becoming more important as the amount of data being exchanged between computers is increasing. 2.1 Project profile

L-Chat is to provide a platform for passing messages and information between two or more locally connected systems. The major objective of the proposal of this project is to provide a very simple chatting software which is easy to use as well easy to understand. This includes an administrator and many users. The administrator can view all the log files and it can clear the log list also. Because it has a special option tool named admin with two options view log and clear log. 2.2 System environment Hardware requirements Processor : Every processor supporting java. Main memory : 512 MB RAM Hard disk CD drive Mouse Key board Display : 80 GB : 52X speed : Standard two button or higher : Standard 101-102 key board : 15 monitor

Software requirements Operating System Language used : Windows 2000/XP, Vista and Windows 7 : Core java

Development tools Front end : Core java Other software : Net beans IDE About the operating system The operating system used was Microsoft Windows XP. The Windows XP provides a suitable environment for the smooth functioning of the project. Windows XP makes personal computing easy. Power, performance, a bright new look and plenty of help when you need it. Windows XP has it all, along with unmatched dependability and security. Windows XP professional marks a new standard in business software combining enterprise-class performance and reliability with unprecedented ease of use. Built on the rock-solid foundation of Microsofts proven Windows 2000 technology, Windows XP Professional contains all the features of Microsoft Windows XP Home Edition, and includes new and enhanced features designed especially for business and advanced use. The all-new Help and Support Center in Windows XP is our one-stop shop for: Clear how-to instructions Engaging start-to-finish articles Troubleshooting advice. Special wizards give you step-by-step instructions to smooth the way when connecting new devices and running new software. About the language used: Java:

Java is the first programming language designed from ground up with network programming in mind. The core API for Java includes classes and interfaces that provide uniform access to a diverse set of network protocols. As the Internet and network programming has evolved, java has maintained its cadence. New APIs and toolkit have expanded the available options for the Java network programmer. Java is both a programming language and an environment for executing programs written in Java language. Unlike traditional compilers, which convert source code into machine level instructions, the Java compiler translates Java source code into instructions that are interpreted by the runtime Java Virtual Machine. So unlike language like C and C++, Java is an interpreted language Java Environment: The Java environment is composed of several separate entities Java Language: This is a language that follows object-oriented concept used to create executable contents such as applications and applets. But Java is not pure object oriented language, it does not support multiple inheritance & Operator overloading. Java Runtime Environment: The runtime environment used to execute the code. It is made up of the Java language and Java virtual machine. It is portable and it is platform neutral. Java tools: It is used by the developers to create Java code. They include Java compiler, Java interpreter, classes, libraries and applet viewer. Java Application:

Applications are programs written in Java to carry out certain tasks on stand alone local computer. Execution of a stand-alone program involves two steps. Compiling the source code in to byte code using javac. Executing byte code program using Java interpreter

Java Applets: Java applets are pieces of Java code that are embedded in HTML document using the applet tag. When the browser encounters such code it automatically download it and execute it. Java Virtual Machine: It is a specification to which Java codes must be written. All Java code is to be compiled in this nonexistent virtual machine. Writing the code that compiles in JVM ensures platform independence. Advantages of Java Java is Robust: Robust programs are those reliable programs that are unlikely to fail even under the most unlikely conditions. Many languages like C do not have this feature because they are relaxed in terms of type checking in terms of programming errors. Java is strict about type declaration and does not allow automatic typecasting. Also it uses a pointer model that does not overwrite memory or corrupt data. Java is secure: Java allows creation of virus-free, tamper free systems to be created. It ensures security in the following ways.

Pointers and memory allocations are removed during compile time. The interpreter verifies all byte codes before executing. All Java applets are treated as entrusted code executing in trusted environment. Because Java was written to support distributed applications over the computer networks, it can be used with a variety of CPU and operating system architectures. To achieve this goal a compiler was created that produces architecture-neutral object files from Java code. Java is Portable: Java byte code will be executed on any computer that has Java Runtime Environment. The portability is achieved in the following ways. Java primitive data types and the behavior of arithmetic operations on these data types are explicitly specified. The Java libraries include portable interfaces for each platform on which the run time environment is available.

The entire Java system itself is portable.

Java is small: Because Java was designed to run on small computers, Java system is relatively small for a programming language. It can run efficiently on PCs with 4MB RAM or more. The Java interpreter takes up only a few hundredkilo bytes. Java is garbage collected: Java programs dont have to worry about memory management. The Java system has a built in program called the garbage collector, which scans the memory and automatically frees the memory chunks that are not in use. Java is dynamic:

Fundamentally distributed computer environments must be dynamic. Java is capable of dynamic linking new libraries, methods and instance variables as it goes without breaking and without concern. Java Swing: The swing classes eliminate Javas biggest weakness: Its relatively primitive user interface toolkit. Swing provides many new components and containers that allow us to build sophisticated user interfaces, far beyond what was possible with AWT. The old components have been greatly improved, and there are many new components, like trees, tables, and even text editors. It also adds several completely new features to Javas user interface capabilities: drag-and-drop, undo, and the ability to develop our own Look and Feel, or the ability to choose between several standard looks. The swing components are all lightweight, and therefore provide more uniform behavior across platforms, making it easier to test our software. Reason for Using Java: It is required to explore systems running different operating system. In order to do so, there should be some way to connect to bridge those operating systems so that all the differences between them are solved and the functionalities are achieved. Also the functions performed in one system should be able to transfer to another and the result should be able to reflect there properly. Java serves as a bridge between these Operating systems. Also Java is widely considered to be the best in developing network applications. The communication happens between Java Virtual Machines running on the systems. When the client wants to perform the functionalities in another system and see the result, a method in the remote system is invoked from the

client. The corresponding method in the remote system performs the job and sends the results to the client that is reflected in its interface.

About the tool NetBeans IDE The NetBeans Platform allows applications to be developed from a set of modular software components called modules. A module is a Java archive file that contains Java classes written to interact with the NetBeans Open APIs and a manifest file that identifies it as a module.

SYSTEM ANALYSIS

3. SYSTEM ANALYSIS System analysis is the process of gathering and interpreting facts, diagnosing problems and using the facts to improve the system. System

specifies what system should do. A system is a set of components that interact to accomplish some purpose. Identifying the drawback of the existing system. Identifying the need for conversion. Perform feasibility study. Identify hardware and software. Create a system definition that forms the foundation for subsequent work. 3.1 System study The existing systems are slow and little difficult to understand and also including very much time for loading it. The proposed system should satisfy these features which are, it must be simple to use as well as simple to understand, and less time consuming. So that it works a lot more faster and rapid. The advantage of this software is it minimizes the time and work. It does not need very high system requirements. So it is simple to use. Also the administrator can update the requirements. 3.2 Feasibility study After the problem is clearly understood and solutions proposed, the next step is to conduct the feasibility study. Feasibility study is defined as evaluation or analysis of the potential impact of a proposed project or program. The objective is to determine whether the proposed system is feasible. There are three aspects of feasibility study to which the proposed system is subjected as discussed below. Technical feasibility. Technical feasibility assesses whether the current technical resources are sufficient for the new system. If they are not available, can they be

upgraded to provide the level of technology necessary for the new system? It checks whether the proposed system can be implemented in the present system without supporting the existing hardware. Economic feasibility. Economic feasibility determines whether the time and money are available to develop the system. It also includes the purchase of new equipment, hardware, and software. A software product must be cost effective in the development, on maintenance and in the use. Since the hardware and resources are already available with the organization and the organization can afford to allocate the required resources. Operational feasibility Operational feasibility determines if the human resources are available to operate the system once it has been installed. The resources that are required to implement or install are already available with the organization. The persons of the organization need no exposure to computer but have to be trained to use this particular software. A few of them will be trained. Further, training is very less. The management will also be convinced that the project is optimally feasible. Safety feasibility Safety feasibility is another important aspect that should be considered in project planning. It refers to an analysis of weather the project is capable of being implemented and operated safely with minimal adverse effects on the environment. Unfortunately, environmental impact assessment is often not adequately addressed in complex projects. Environmental feasibility

Often a killer of projects through long, drawn out approval processes and outright active opposition by those claiming environmental concerns. This is an aspect worthy of real attention in the very early stages of the project. Concern must be shown and action must be taken to address any and all environmental concerns raised or anticipated.

SOFTWARE REQUIREMENT SPECIFICATIONS

4. SOFTWARE REQUIREMENT SPECIFICATIONS 4.1 User characteristics The main users of this product are those who have the right to access this software. This ability is given through a user name and password. These users are sure to be literate with the computers.

4.2 Requirement specification This is the set of activities that lead to the production of requirements definitions and requirement specification. First of all the feasibility study, in this study we try to find out the need and requirements of the customer. Sometimes the requirement definition is presented as an introduction to requirement specification. There are five requirements that a software requirement document should satisfy. It should specify external behaviors. It should specify constraints on the implementation. It should be easy to change. It should record throughout the life cycle.

SOFTWARE QUALITY ASSURANCE PLAN

5. SOFTWARE QUALITY ASSURANCE PLAN 5.1 Purpose and scope

The purpose of this plan is to define a software that enables instant message passing and information passing, or chatting between two or more locally connected systems, software quality assurance organization, tasks and responsibilities, provide reference documents and guidelines to perform the software quality assurance activities; provide the standards, practices and conventions used in carrying out software quality assurance activities; and provide the tools, techniques and methodologies to support software quality assurance activities and software quality assurance reporting.

The scope of this document is to outline all procedures, techniques and tools to be used for quality assurance of this project. It also identifies the software quality assurance responsibilities of the project developer and consultant. This plan lists the activities, processes, and work products that the software quality assurance consultant will review and audit. 5.2 Tasks and responsibilities

Good software practice requires a measure of independence for the SQA group. This independence provides a key strength to SQA; that is, SQA has the freedom, if the quality of the product is being jeopardized, to report this possibility directly above the level of the project. While in practice this rarely occurs, for almost all problems are correctly addressed at the project level, the fact that the SQA group can go above the project level gives it the ability to keep many of these problems at the project level. Figure below shows the SQA organization with relation to the project organization.

Program Management/ Line Management (Sponsor) IV &V SEPO

SQA

Project Management SCM

Systems Engineering

Software Development

Software Test

System Test

Logistics

The following describes the functional groups that influence and control software quality.

Program Management/Line Management (Sponsor) is responsible for the following items: 1. Identifying an individual or group independent from the project to audit and report on the projects SQA function. 2. Identifying the quality factors to be implemented in the system and software.

Project Management is responsible for: 1. Resolving and following-up on any quality issues raised by SQA.

2. Identifying, developing and maintaining planning documents such as the Program Management Plan.

System Engineering is responsible for: 1. Implementing the engineering practices, processes, and procedures as defined in program/project planning documents.

Software Design/Development is responsible for: 1. Identifying, implementing, and evaluating the quality factors to be implemented in the software.

Software Test is responsible for: 1. Verifying, Implementing the software test practices, processes, and procedures as defined in program/project planning document.

System Test is responsible for: 1. Verifying the quality factors are implemented in the system (software and hardware).

Logistics is responsible for: 1. Reviewing and commenting on the L-Chat SQA Plan. 2. Implementing the quality program in accordance with this SQA Plan.

Software Configuration Management (SCM) is responsible for: 1. Implementing the SCM practices, processes and procedures as defined in reference (e) and other program/project planning documents.

Independent Verification and Validation (IV&V) is responsible for: 1. Implementing the practices, processes, and procedures as defined for IV&V in program/project planning documents.

Systems Engineering Process Office (SEPO) is responsible for: 1. Maintaining the SQA Process. 2. Ensuring SQA training availability. 3. Providing assistance in software process engineering and software process improvement.

Tasks to be performed

An SQA task is performed in relationship to what software development activities are taking place. One or more SQA tasks can be performed concurrently until a task is completed.
o o o o o o

Evaluate System Requirements Analysis Process Evaluate System Design Process Evaluate Software Requirements Analysis Process Evaluate Software Design Process Evaluate Software Tools Evaluate Software Implementation & Unit Testing Process Evaluate End-item delivery Process Evaluate Configuration Management Proc

o o

5.3 SQA implementations in different phases Quality assurance will be implemented through all of the software life cycle of the tools development process, until the release of the software product. In the requirement phase, when the SRS is being developed, it has to be ensured that it elucidates the proposed functionality of the product and to

keep refining the SRS until the requirements are clearly stated and understood. In the specification and design phase, due to great importance and accuracy and completeness in these documents, weekly reviews shall be conducted between the developer and the client to identify any defects and rectify them .In the implementation phase, the developer shall do code reviews when the construction phase of the tool begins. 5.4 Documentation In addition to this document, the essential documentation will include the software requirement specification (SRS), which prescribe each of the essential requirements of the software and external interfaces. It objectively verifies achievement of each requirement by a prescribed method and facilitates traceability of requirement specification to product delivery. The document also include the software design document (SDD), which depicts how the software will be structured, it describes the components and sub components of the software design, including various packages and frameworks. It gives an object model and a sample interaction diagram. 5.5 Software development process The software development process includes three stages, requirement phase, design phase and implementation and testing phase. During each phase, the client will review the deliverable documents. The developer will incorporate modifications suggested by the committee. This would ensure the quality of the software product.

5.6 Project reviews

The client will perform a review at the three stages of the project as described in the section above. This review will determine whether the requirements have been met for the deliverable, check that the product meets the requirements, ensure that the SQA plan has been adhered to, verify the performance of the software and ensure that acceptance testing is carried out. A design check list will be used and the developer will check to see whether the design meets the checklist criteria. 5.7 Testing and quality check Testing will be carried out in accordance with the software testing plan (STP). Testing documentation will be sufficient to demonstrate that testing objectives and software requirements have been met. Test results will be documented and discussed in the final phase of the project.

SYSTEM DESIGN

6. SYSTEM DESIGN

System design is the second phase of the software life cycle. The system goes through logical and physical state of development. The user oriented performance specification is extended into a design specification, while designing the needed system. The design phase begins when the Requirement Specification document for the software to be developed is available. When the Requirement Specification activity is entirely in the problem domain, design is the first step to move from the problem domain to the solution domain. Design is essentially the bridge between the requirements specification and the final solution for satisfying these requirements. 6.1 Input design

Input design is the process of converting a user-oriented description of the inputs to a computer-based business system into a programmer-oriented specification. The design decision for handling input specify how data are accepted for computer processing. Input design is a part of overall design that needs careful attention. The collection of input data is considered to be the most expensive part of the system design. Since the inputs have to be planned in such a way so as to get the relevant information, extreme care is taken to obtain the pertinent information. If the data going into the system is incorrect then the processing and outputs will magnify these errors. The goal of designing input data is to make data entry as easy, logical and free from errors as possible. The following are the objectives of input design: To produce a cost effective method of input. To ensure validation.

Effort has been made to ensure that input data remains accurate from the stage at which it is recorded and documented to the stage at which it is accepted by the computer. Validation procedures are also present to detect errors in data input, which is beyond control procedures. Validation procedures are designed to check each record, data item or field against certain criteria. 5.2 Output design The output design phase of the system design is concerned with the conveyance of information to the end users in user-friendly manner. The output design should be efficient, intelligible so that the system relationship with the end user is improved and thereby enhancing the process of decision making. The output design is an ongoing activity almost from the beginning of the project, efficient and well-defined output design improves the relation of the system and the user. The primary considerations in the design of the output are the requirement of the information and the objective of the end user. The system output may be of any of the following A report A document A message

6.3 Architectural design Data flow diagram

Data flow diagram (DFD) was first developed by Larry Constantine as a way of representing system requirements in a graphical form; this led to modular design. A DFD describes what data flow (logical) rather than how they are processed, so it does not depend on hardware, software, and data structure or file organization. It is also known as bubble chart. A data Flow Diagram is a structured analysis and design tool that can be used for flowcharting in place of, or in association with, informationoriented and process-oriented system flowcharts. A DFD is a network that describes the flow of data and the processes that change, or transform, data throughout a system. This network is constructed by using a set of symbols that do not imply a physical implementation. It has the purpose of clarifying system requirements and identifying major transformations that will become programs in system design. So it is the starting point of the design phase that functionally decomposes the requirement specifications down to the lowest level of detail. A DFD can be considered as an abstract of the logic of an informationoriented or a process-oriented system flow-chart. For these reasons DFDs are often referred to as logical flow diagrams. The four basic symbols used to construct data flow diagrams are shown below:

A rectangle represents a data source or destination. A directed line represents the flows of data, which is data stream.

An enclosed figure, usually a circle or an oval bubble, represents a process that transforms data streams. An open-ended rectangle represents data storage.

These are symbols that represent data flows, data sources, data transformations and data storage. The points at which data are transformed are represented by enclosed figures, usually circles, which are called nodes. The principle processes that take place at nodes are 1. 2. 3. Combining data streams Splitting data streams Modifying data streams

The data flow diagram:


ADMIN

USER USER

SOFTWARE TESTING

7. SOFTWARE TESTING

System testing provides the file assurance that software once validated must be combined with all other system elements. System testing verifies whether all elements have been combined properly and that overall system function and performance is achieved. Characteristics of a Good Test: 7.1 Introduction Testing is usually relying on to detect the faults on each phase, in addition to the faults introduced during the code phase itself. Due to this, different levels of testing are used in the testing process, each level of testing aims to test different aspect of a system. Tests are likely to catch bugs No redundancy Not too simple or too complex

Client

Acceptance

Requirements

System testing

Design

Integration testing

Code

Unit testing

7.2 Unit testing Unit testing focuses verification effort on the smallest unit of software designs the module. To check whether each module in the software works properly so that it gives desired outputs to the given inputs. All validations and conditions are tested in the module level in the unit test. Control paths are tested to ensure the information properly flows into, and output of the program unit and out of the program unit under test. Boundary conditions are tested to ensure that the modules operate at boundaries. All independent paths through the control structure ensure that all statements in a module have been executed at least once. 7.3 Integration testing The major concerns of integration testing are developing an incremental strategy that will limit the complexity of entire actions among components as they are added to the system. Developing a component as they are added to the system, developing an implementation and integration schedules that will make the modules available when needed, and designing test cases that will demonstrate the viability of the evolving system. Though each program works individually they should work after linking them together. This is also referred to as interfacing. Data may be lost across interface and one module can have adverse effect on another. Subroutines after linking may not do the desired function expected by the main routine. Integration testing is a systematic technique for constructing program structure while at the same time conducting tests to uncover errors associated with the interface. In the testing, the programs are constructed and tested in small segments. Here our objective is that to edit, compile and execute Java programs within a single platform. Using integration test plan prepared in the design phase of

the system developments guide, the integration test is carried out and all the errors found in the system are corrected for the next testing steps. 7.4 System testing When a system is developed, it is hoped that it performs properly. In practice however some errors always occur. The main purpose of testing and information system is to find the errors and correct them. A successful test is one which finds an error. The main objectives of system testing are To ensure during operation the system will perform as per specifications. To make sure that the system meets users requirements during operation. To verify that the controls incorporated in the system function as intended. To see that when correct inputs are fed to the system the outputs are correct. To make sure that during operation incorrect input and output will be deleted. The scope of a system test should include both manual operations and computerized. Operations system testing is a comprehensive evaluation of the programs, manual procedures, computer operations and controls. System testing is the process of checking if the developed system is working according to the original objectives and requirements. All testing needs to be conducted in accordance to the test conditions specified earlier.

SYSTEM IMPLEMENTATIONS

8. SYSTEM IMPLEMENTATIONS System implementation is the conversion of new system into an operating one which involves creating compatible files, training staff and installing

hardware. A critical factoring in conversion is not disrupting the functioning of organization. User training is crucial for minimizing resistance to change and giving chance to prove its worth. Training aids user friendly manuals and healthy screens provide the user with a good start. Software maintenance follows conversion to the extent that changes are necessary to maintain satisfactory operations relative to changes in the users environment. Maintenance often includes minor enhancements or corrections to the problem that surface late in the systems operations. In the implementation phase, the team builds the components either from scratch or by composition. Given the architecture document from the design phase and the requirement document from the analysis phase, the team should build exactly what has been requested, though there is still room for innovation and flexibility. For example, a component may be narrowly designed for this particular system, or the component may be made more general to satisfy a reusability guideline. The architecture document should give guidance. Sometimes, this guidance is found in the requirement document. The implementation phase deals with issues of quality, performance, baselines, libraries, and debugging. The end deliverable is the product itself. During the implementation phase, the system is built according to the specifications from the previous phases. This includes writing code, performing code reviews, performing tests, selecting components for integration, configuration, and integration. The implementation includes the following things.

Careful planning Investigation of system and constraints. Design the methods to achieve the charge over. Training the staff in the changed phase. Evaluation of change over method. The method of implementation and time scale to be adopted are found out initially. A crucial phase in system development is the successful implementation of the new system. Implementation includes all those activities that take place to convert from the old system to the new system. The new system may be completely new replacing an existing manual or automated system or it may be major modification to an existing system. In either case proper implementation becomes necessary so that a reliable system based on the requirement of the organization can be provided. Successful implementation may not guarantee improvement in the organization using the new system, but improper implementation will prevent this improvement. It has been observed that even the best system cannot show good result if the analysts managing the implementation do not attend every important detail. This is the area where the system analysts need to work with utmost care. The three main aspects of implementation are User training, User manual and Conversion. User training

Even well designed system can succeed or fail because of the way these are operated and used. Therefore the quality of training received by the personal involved with the system in various capacities helps or hinders and may even prevent with the system development must know in detail what their roles will be, how they can make efficient use of the system and what will not do for them. User manual When a system is developed then only the developer of it knows how it operates. But as the project is being made for a client and it is to be used by the staffs of that firm, so there is a use of user manual. It is documentation of the project that describes how to operate the system? What are the various modules for efficient use of the system? How to start the system? Conversion It is the process of the old system to the new one. It should be accomplished in shortest possible time. The methods used are parallel system, direct conversion, pilot system and phase-in mind.

SYSTEM MAINTENANCE

9 SYSTEM MAINTENANCE When the system is in maintenance phase, some people with in the system are responsible for collecting maintenance requests from users and other interested parties. The process of maintaining system is the process of

returning to the beginning of system development phase until changes implemented. System maintenance is the activity that occurs following the delivery of the software product enhancement to software products adapting products to new environment and correcting errors. Software products enhancement may involve providing new functional capabilities improving user displays and modes of intersection or upgrading the performance characteristics of the system. Problem correction involved modification and revalidation of software to correct errors. The process that includes the diagnosis and correction of one or more error is known as corrective maintenance. As the software is used recommendation for new capabilities, modification and general enhancement may be obtained and this leads to perfect maintenance. When software is changed to improve feature maintainability or reliability to preventive maintenance. For maintaining this system the following have to be made strictly. The executable generated several of the form and reports are only given tothe end users. The back up should be taken in order to safeguard the system against any loss of data due to system manufacturing. System maintenance is the modification of the software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment. Maintenance is thus a very broad activity often defined as including all work made on a software system after it becomes operational.

Maintenance covers large number of activities like the correction of errors, the enhancement, deletion and addition of capabilities, the adaptations to changes in data requirements and operation environments, the improvements of performance, usability or any other quality attribute. Maintenance accounts for 50-80% of total system development. To put maintenance in its proper perspective requires considerable skill and experience and is an important and ongoing aspect of system development. Maintenance demands more orientation and training than any other programming activities. The environment must recognize the needs of the maintenance programmer for tools, methods and training. Maintenance is done after the successful implementation of the software and is continued till the product is reengineered or deployed to another platform. Maintenance is also done based on fixing the problems reported, changing the interface with other software or hardware enhancing the software.

CONCLUSION

10. CONCLUSION L-CHAT is a user friendly package and requires little prior knowledge of software. All the suggestions forwarded during the proposal of the software

have been successfully completed and final threshold of application has been crossed. The system developed for the given conditions specified by the firm was found working efficiently. The system is highly flexible and and is well efficient to use.

BIBLIOGRAPHY

11. BIBLIOGRAPHY

BOOKS Java 2 Platform unleashed Jamie Jaworsky Core Java 2 volume-1 fundamentals Cay S. Horst Mann, Gary Cornell Software Engineering A Practitioners Approach, Fifth Edition by Roger S. Pressman

SCREEN SHOTS