Sunteți pe pagina 1din 30

Railways Employee Telephone Directory

A Practical Training Report Submitted in fulfillment of the requirements for the award of the degree of Bachelor of Technology in COMPUTER ENGINEERING

by Harshita Singh Bhati Divya Sharma Diksha Verma

DEPARTMENT OF COMPUTER ENGINEERING Vivekananda Institute of Technology (East)

Submitted to:Poonam Ghera (HOD )


The satisfaction that accompanies the successful completion of any task would be incomplete without the mention of people whose ceaseless cooperation made it possible, whose constant guidance and encouragement crown all efforts with success. It comes out to be a great pleasure and experience to me to have my summer training at North-Western Railways. Firstly I am grateful to Mr. R.K. Jain, guide and employee at North-Western Railways, boosting us for creative thinking and helping us to be practical which we learned as during our summer training period. I am grateful to my guide whose immense knowledge helped us a lot and made my summer training really knowledge full. He was always ready to help me whenever I need it. In another way I can say that training is a mark of fruitful technical discussion I had. I would also like to thank Mr. Nishant Singhal who is the CIO of IT department and Mr. Gopal Meena an employee for supporting us throughout the training period. Words are inadequate in offering my thanks to my fellow Project Trainees and Project Assistants, for their encouragement and cooperation in carrying out the team work. I would Welcome Constructive Suggestions to improve this software, which can be implemented in my further attempts.


A Computer Software succeeds-when it meets the needs of the people who use it, when it performs flawlessly over a long period of time, when it is easy to modify and even easier to use-it can and does change things for the better. But when software fails-when its users are dissatisfied, when it is error prone, when it is difficult to change and even harder to use-bad things can and do happen. We all want to build software that makes things better, avoiding the bad things that lurk in the shadow of failed efforts. To succeed we need discipline when software is designed and built. Many individuals and companies still develop software haphazardly, even as they build systems to service the most advanced technologies of the day. As a result, the quality of the software that we produce suffers and bad things happen. This project report is intended to serve as a guide to the software developed on Employee Telephone Directory. I have tried to follow the principles and rules as suggested by the software engineers as far as possible, in order to make this software a Successful one. The emphasis in this report is to document the important concepts and techniques used for the successful development of this project. I do hope fervently that, through this report, the readers will get a real picture of what the project is all about. I also wish that may this software satisfies all the needs and requirements of the organization, for which it is meant.

Contents Introduction1 i. Objective of the Training..1 ii. Basic Concepts..1 1. Company Profile.....2 2. Basic Concepts....3 i. Technologies Used....3 1. System Specification...8 i. Software requirements...8 ii. Hardware requirements..8 1. Hands on Experience..9 i. Feasibility Study....9 a) Economic feasibility......9 b) Technical feasibility.10 c) Behavioral feasibility...10 d) Cost analysis feasibility...10 e) Operational feasibility.10 f) Legal feasibility...11 1. Project Definition..12 i. Problem Statement.......12 ii. Objective and Scope of the Project..12 1. Project Modules.13 i. Modules Brief Description...14 a) Login module14 b) Administrator Home Page....15 c) Module for addition of new data..16 d) View Directory Module........17 e) Search Module..18 1. Data Tables....19 2. Entity Relationship Diagram...21 3. Data Flow Diagram...22 4. Advantages and Disadvantages...23 5. Concluding remarks.............24 i. Conclusion...24 ii. Future Extension..24 1. Annexure25

Under the curriculum of Rajasthan technical university, a 30 days practical training is to be done after the completion of 3rd year as the partial fulfillment of award of Bachelor of technology degree. I perused my training at NORTH WESTERN RAILWAYS during the time period from 13th may 2011 to 13th June 2011 that counts a total of 30 calendar days.

Objective of the training:

Summer training is an integral part of the curriculum and forms a vital aspect of overall development of the engineering students. It allows us to experience and learn the corporate culture, first hand. At the same time, the corporate world gets fair idea about the talent of the emerging generation of future engineers. The specific objectives are as follows:

To get an exposure on real life organizational problems and to get an opportunity to work on them intensively. To understand the organization structure and processes in the practical setting and the company standards for building a project. To get an opportunity to analyze real life problems and apply the concepts and theory learnt in the class room. The Summer Training also acts as a mechanism to help us to crystallize our career choices as we can explore them in project work.

Company Profile
North Western Railway came being on 1st October, 2002. It was carved out of 2 divisions each from Northern and Western Railways. The formation of this zone along with five other new zones was first approved by Railway Board on 16th September, 1996 and foundation stone for this zone was laid on 17th October 1996 by the then Prime Minister Shri H.D. Deve Gowda at K.P. Singh Stadium, Jaipur. The impetus for formation of New Zone came with the Government of India notification no. 97/E&R/700/1/Notification dated 14.06.2002 wherein it was decided that North Western Railway with its jurisdiction over existing Jaipur and Ajmer divisions of Western Railway and Jodhpur and Bikaner divisions of Northern Railway was to come into effect from 1.10.2002.

Jaipur Division
This division was formed after merging parts of BB&CI, Jaipur State Railways and Rajputana Malwa Railway; Jaipur Division serves the states of Rajasthan, Uttar Pradesh and Haryana. Being a predominately passenger earning division (84.92% of its earning is by way of passenger traffic), it deals primarily with cross traffic consisting of fertilizer, cement, oil, salt, food grains, oil seeds, lime stone and gypsum traffic. Container loading is done from here in bulk. The total no. of stations on this division is 128 and the total no. of trains run are 146. Jaipur station alone deals with 88 BG & 22 MG trains and 35,000 passengers in a day. In order to ensure that the passenger does not face any hardship for reservations the division has at the moment 14 functioning Computerized Passenger Reservation System Centres. The staff strength of this division in all categories is 12007.

IT Centre
IT center is facilitator for all technical assistance and dissemination of information on public website. IT center is maintaining Railnet & E-mail web server and centralized data center for various applications. IT center is managing Rail net/Internet LAN connectivity in HQ Office. IT center is running PRIME/ MMIS/ I-TAS/ Traffic Applications.

Basic Concepts
Technologies Used:
The most suitable and advanced tool for front end designing a website is J2EE and HTML.

J2EE: Open and standard based platform for developing, deploying and managing n-tier,
Web-enabled, server-centric, and component-based enterprise application. An Open and Standard SolutionA component and container model in which container provides system services through a set of well-defined and industry standard services J2EE provides code portability; an application written for a particular brand of J2EE application server will work on any other implementation of a J2EE application server What's In It For Developers?

Developers can use any J2EE implementation for development and deployment 1.Use a small scale J2EE server for development. 2.Use high-end commercial J2EE server for scalability production. There is a vast amount of J2EE community resources. and fault-tolerance in

3.Books, articles, tutorials, source code, best practice guidelines, design patterns etc.

The Three-Tier Model-:

1. NetScape i. Browser handles Presentation logic. ii. Browser talks Web server via HTTP protocol. 1. Web Server i. Business logic and data model are handled by dynamically by the middle tier.

1. Database i. Data is stored in Database and other repositories.

J2EE Components:

JDBC(Java Data Base Connectivity): JDBC API provides developers with a way to connect to relational data from java code. With it we can create a client (which can be anything from an applet to EJB) that can connect to a database) execute SQL statements, and process the result of those statements.

Database drivers: JDBC abstracts data base connectivity from java applications A JDBC driver is a middleware layer that transfers the JDBC calls to the vendor specific APIs. We have 4types of JDBC driversi. Type 1 (JDBC-ODBC bridge) ii. Type 2(Thick driver) iii. Type 3(Proxy Server) iv. Type 4(Thin Driver) Among all these TYPE-4 driver was used in the project TYPE-4 Driver

JNDI Java Naming and Directory Interface: i. JNDI is an API specified in Java that provides naming and directory functionality to applications written in Java. It is designed especially for Java by using Java's object model. ii. Using JNDI, Java applications can store and retrieve named Java objects of any type. iii. JNDI provides methods for performing standard directory operations, such as associating attributes with objects and searching for objects using their attributes. iv. JNDI allows Java applications to take advantage of information in a variety of existing naming and directory services, such as LDAP, NDS, DNS, and NIS (YP), and allows Java applications to coexist with legacy applications and systems.

JSP(JAVA Server Pages): The Goal of the Java Server Pages (JSP) is to simplify the creation and management of dynamic web pages, by separating contents and presentation. ii. JSP is not a product, but like other java APIs, a specification provided by the sun micro system for vendors to implement.

Benefits of JSP: 1.Although JSP technically cannot do anything but it makes it easier to write HTML code with Java code. 2.JSP is used in web applications as Dynamic content generation with separately for static also.

Java Servlets: i. Servlets have access to the entire family of Java APIs, including the JDBC API to access enterprise databases. ii. Servlets can also access a library of HTTP-specific calls and receive all the benefits of the mature Java language, including portability, performance, reusability, and crash protection. Anatomy of a Servlet: i. init() the init() function is called when the servlet is initialized by the server. This often happens on the first doGet() or doPost() call of the servlet. ii. destroy() this function is called when the servlet is being destroyed by the server, typically when the server process is being stopped.

Component-Container Model: Developers program components that live inside a container. The container provides services for scalability, load balancing, security, etc.

What does a container usually provide? Component Life Cycle Distribution Support

Cluster Support Distributed Transaction Support Authentication and Authorization Management Communication with EJB clients (EJB - Enterprise Java Beans are components that are deployed into containers) Enterprise Naming Context (JNDI name space) Session maintenance : Need a mechanism to maintain client state across a series of requests from a same user (or originating from the same browser) over some period of time, is done with the help of session mechanism.

My SQL Server: Written in C and C++. Tested with a broad range of different compilers. Works on many different platforms. Uses GNU Automake, Autoconf, and Libtool for portability. Fully multi-threaded using kernel threads. It can easily use multiple CPUs if they are available. Its fast and portable, provides transactional & non transactional storage engine. In-memory hash tables, which are used as temporary tables. SQL functions are implemented using a highly optimized class library and should be as fast as possible. Usually there is no memory allocation at all after query initialization. The server is available as a separate program for use in a client/server networked environment. It is also available as a library that can be embedded (linked) into standalone applications. Such applications can be used in isolation or in environments where no network is available.

System Specification
Software Requirements:

Operating Environment Win XP/Vista/7 Database MY SQL Tomcat Apache server

Hardware Requirements:

Processor P IV or higher Minimum RAM 250 MB Minimum Space Required 100 MB Display 32 bit color

Hands on Experience
Under the curriculum of RAJASTHAN TECHNICAL UNIVERSITY, I underwent an industrial practical training at North-Western Railways Headquarters, Jaipur. I am really happy and satisfied by what I have learned during these 30 days. My hands on experiences from this training session are:

How to work according to user requirements? How to make robust software? How to built Dynamic Applications? How to organize time, to complete the project on deadline? Team building capabilities. Leadership skills. J2EEs knowledge. Building documents. Team work. Trouble Shooting

Feasibility Study
Economic Feasibility Economic analysis is most frequently used for evaluation of the effectiveness of the system. More commonly known as cost/benefit analysis the procedure is to determine the benefit and saving that are expected from a system and compare them with costs, decisions is made to design and implement the system. This part of feasibility study gives the top management the economic justification for the new system. This is an important input to the management, because very often the top management does not like to get confounded by the various technicalities that bound to be associated with a project of this kind. A simple economic analysis that gives the actual comparison of costs and benefits is much more meaningful in such cases. In the system, the organization is most satisfied by economic feasibility because, if the organization implements this system, it need not require any additional hardware resources as well as it will be saving lot of time. Our project fulfilled the above criteria when a study was conducted in this regard, as most of the work now could be accomplished at a faster rate and more accurately.

Technical Feasibility Technical feasibility centers on the existing manual system of the test management process and to what extent it can support the system. According to feasibility analysis procedure the technical feasibility of the system is analyzed and the technical requirements such as software facilities, procedure, inputs are identified. It is also one of the important phases of the system development activities. The system offers greater levels of user friendliness combined with greater processing speed. Therefore, the cost of maintenance can be reduced. Since, processing speed is very high and the work is reduced in the maintenance point of view management convince that the project is operationally feasible.

Behavioral Feasibility People are inherently resistant to change and computer has been known to facilitate changes. An estimate should be made of how strong the user is likely to move towards the development of computerized system. These are various levels of users in order to ensure proper authentication and authorization and security of sensitive data of the organization. Our project fulfilled the above criteria when a study was conducted in this regard, as most of the work now could be accomplished at a faster rate and more accurately. Cost Analysis Feasibility In Addition to the positive fulfillment of Economical Feasibility, the cost/benefit analysis that we conducted, gave very positive results to our client. Both tangible and intangible benefits that we sorted out were excellently supporting our project.

One intangible benefit, it works accurate and in given time. One tangible benefit, it decreases information processing costs by eliminating of unnecessary procedures and man power. The cost of essential hardware and software requirement is not very expensive. Moreover hardware like Pentium I PC and software like MY-SQL Server are easily available in the market.

Operational Feasibility Operational feasibility is the willingness and ability of the management to operate, use and support a proposed system.

The system that we proposed really satisfied all the end users, especially our clients and authorities because of its rich GUI interfaces and fast computing ability. Non-Programmers can easily use our software. However it is desirable that the user has the basic knowledge of the computers.

Legal Feasibility Our Project does not infringe with known acts, status or any pending legislation. Hence, it is legally feasible.

Problem Definition
Problem Statement:
This online directory was required to add the information efficiently so that chances of mistakes reduces, and with the facility to search and view directory option. I did the entire job regarding the requirements with keeping the above mentioned problem in mind.

Objective and scope of the project:

This application is a web based application. The system provides an easy and efficient way to its users to add new data and search any random information. The department or valid person can login and add new information. Searching and viewing can be done by any authorized user or any general user in this e-directory. The objectives of the application are:

The main objective of the project is an electronic directory which will be a web based application. This system provides users to maintain their records of all employees working in the company. This system provides users to search results with the help of keywords which make it easier for the user. The system provides users to view the whole directory by one click in a very effective way.

Project Modules

There are following modules in the project:

Login Module Administrator Home Page Module Module for addition of data in directory View Directory Module Search Module

Modules Brief Description

Login Module:
This module is designed for the authentication of end-users. Here only authorized department Administrator is allowed to login to verify his/her username and password stored in the system. The modules possess the following options:

Login for administrators of the Department. For General user we have two options: -Search Directory - View Directory

After complete verification by system the Department administrator is redirected to the Administrator Home Page of the respective users account.

Administrator Home Page Module

Every department administrator who has username or password can login and get access to this page. It provides the administrator the options to add entries in the directory, view directory and search the data within the directory.

Module for addition of new data

Every department administrator after authorization from the Administrator Home

page can get access to this page.

We use to add different types of related information of any employee in the directory

which will be updated in the database.

View Directory Module

The user can view the complete directory through this link. It is very easy for any user to view the directory. With its help we can get all the information of every employee in different departments.

Search Module
It provides the administrator as well as common user to search for employees by entering different key words in the form. It is a way to get collective information having common attributes. After the above page is submitted we get the results in a page like view directory so it is very easy and user friendly to search required information.

Data Tables

Login table(logintable)
This table stores the username and passwords of the administrators of the various departments. Field Name Username Password Field Type Varchar(40) Varchar(20) Description Login id of administrator Password for login

Directory Table(raildir)
It maintains the directory of the employees with their respective departments and divisions.

Field Name Division Department Name Designation nsw_off nsw_res bsnl_off bsnl_res fax_off fax_rail Cug Email

Field Type Varchar(20) Varchar(40) Varchar(20) Varchar(20) Integer Integer Integer Integer Integer Integer BIGINT(15) Varchar(50)

Description Divisions of NWR Departments of NWR Name of the employee Designation of the employee Railways office number Railways residence number BSNL office number BSNL residence number Office fax Railways Fax Mobile number of the employee Email address of employee

Entity Relationship Diagram:

Entity Relationship Diagram represents the object-relationship pairs in graphical forms. Entities specify distinct real world items in the application. Relationships connect different entities and represent meaningful dependencies between them. Attributes specify various properties of entities and relations involved in a system.

Data Flow Diagram:

A data flow diagram is a graphical representation that depicts the information flow and the transforms that are applied as data moves from input to output.

Advantages of the project:

This software is designed to help users to add the data and search the various contacts of any employee.

Saves time and energy in searching the details of a particular employee. Protects the database from unauthorized users by securing the system since general public cannot have direct access to the database. It helps in addition of new entry in the database with an easy approach. General public can view the whole directory but cannot temper with the original database.

Disadvantages of the project:

This application has few discrepancies such as:

It does not have updation and deletion facility. The administrator can only update the information using My Sql query browser. Thus user should have prior knowledge of My Sql.

Concluding Remarks

The Employee telephone directory developed using advanced Java and My Sql fully meets the objectives of the system for which it has been developed. The system has reached a steady state where all bugs have been eliminated. The system is operated at a high level of efficiency and the entire railways employee and user associated with the system understands its advantage. The system solves the problem. It was intended to solve as requirement specification. User Friendly. User can add information easily and efficiently. Searching about any employee is easy here. Viewing of employee table. Collective information can be gathered of the employees having common attributes.

Future Extension
This software can be easily upgraded in the future.

In future user can Update the information he added. In future user can Delete the information he added.

Acronyms and abbreviations used

JSP: JAVA Server Pages EJB: Enterprise JAVA Beans SQL: Standard Query language IIS: Internet Information Services ISO: International Organization for Standardization DFD: Data Flow Diagram ERD: Entity Relationship Diagram


The J2EE Tutorial The Complete Reference JSP