Vous êtes sur la page 1sur 96

PROJECT REPORT ON

JUSTJOB.COM
SUBMITTED IN PARTIAL FULFILLMENT FOR AWARD OF DEGREE OF

MASTER OF COMPUTER APPLICATION


(BATCH 2010-2013) BY

NAME OF STUDENT: ADITYA PRATAP SINGH


ROLL NO. 1029014002 UNDER THE SUPERVISION OF

NAME OF GUIDE: Mrs. Archana Sharma Designation: Astt. Prof.

ABESIT GROUP OF INSTITUTIONS, GHAZIABAD JANUARY, 2013

MAHAMAYA TECHNICAL UNIVERSITY, NOIDA

Industrial Training Report

Company Certificate
This is to certify that the Project entitled JustJob.com is a bonafide record of independent work done by Aditya Pratap Singh (Roll. No.: 1029014002) under my supervision during submitted to the Department of Master in Computer Application, ABES IT GROUP OF INSTITUTIONS, GHAZIABAD, U.P. in partial fulfillment for the award of the DEGREE OF MASTER IN COMPUTER APPLICATION from Mahamaya Technical University, Noida in session 2010-2013 and that the Project has not previously formed the basis for the award of any other degree, Diploma, Associate ship, Fellowship or other title.

Date:

Signature (Mr. Giriraj)

Name of Organization: Artish Job Training Institute. Address: Greater Noida.

Industrial Training Report

Acknowledgement
I am graceful to my project guide Mrs. Archana Sharma for giving his valuable time and constructive guidance in preparing the Synopsis/Project. It would not have been possible to complete this project in short period of time without his kind encouragement and valuable guidance.

Date:

Signature
(Aditya Pratap Singh)

Industrial Training Report

Certificate of Originality
I hereby declare that the Project entitled JustJob.com submitted to Department of Master in Computer Application, ABES IT GROUP OF INSTITUTIONS, GHAZIABAD, U.P. in partial fulfillment for the award of the Degree of MASTER IN COMPUTER APPLICATION in session 2010-2013 is an authentic record of my own work carried out under the guidance of Mrs. Archana Sharma (Internal Guide) and Mr. Giriraj (External guide) and that the Project has not previously formed the basis for the award of any other degree.

Place: Date: Signature of the candidate


(Aditya Pratap Singh) (1029014002)

This is to certify that the above statement made by the candidate is correct to the best of my knowledge.

Signature of Internal guide


(Mrs. Archana Sharma)

Signature of External Guide


(Mr. Giriraj)

Industrial Training Report

INTRODUCTION
We have developed the Portal of JustJob.com for fulfillment of my MCA project, the Portal can handle data of Recruites (Several companies) who are looking for suitable candidates for their vacancies. This Portal will be most useful for Consultants for searching of matching Job with Jobseekers etc. The Portal has few sections, which is discussed a below. An Adminstrator is provided through which user can enter Recruiters records/type of jobs/Jobseekers description. A registration form is provided through which user can enter details of company like location of company / types of job / status of job / Qualification of Jobseekers. This data once entered can be edited/deleted as required when there will be vast entries of data user can scroll the data. There are sections provided for Recruiter Requirement/Resource.

Recruiter
In Recruiter sections, user can enter the details of companies through the help of Portal. The Portal has forms that will ask details like company id/name/location/address/city /country/contact person/contact number/contact email_id. Once after entering the details the data will be saved by clicking save button and the details will be stored in the Recruiter database.

Requirements
In Requirements section, various vacancies of various companies are stored. All the details like Job id, Job title, Job type, Job period, Job location, Functional Skills, Technical Skills, company id, contact person, contact number, contact email_id are stored in the database.

Resource
In Resource section, details of various Jobseekers are stored. All the Personal details and Technical and Educational background,
5

Industrial Training Report

work experience, Nature of work and position held in last job are stored in the database.

Search
In Search section, user will search for matching requirement and Jobseeker as per their requirement form of the Portal and fill the form as it given above.

BENEFITS OF JUSTJOB.COM
In order to quantify the benefits of your job placement software, you first have to know what to look for. Job tracking solutions can help you in different ways. Here are some of the areas to look for benefits in implementing a software system:

Paper Reduction
JustJob.com can reduce the cost associated with creating and distributing paper requirements and resumes. Cost savings result from:

Direct savings from distribution costs

reduced

paper,

printing,

and

Indirect savings from time spent handling paper documents

Paperwork Transfer
A big expense with a manualy maitaing job records and requirement system is that of transferring of records from one person to another. For example, the employee needs to get to know about the requirement of an organization from the HR consultents or from any other source. They had to forward the resume and then had to move over to the cosultant manager of any consultant. The manager checks and verifies the resumes and then selects the appropriate one with to that of the requirement of the organization and then forwards them to the concerned HR department of the particular organization. A very conservative estimate of the direct time spent on simply transferring the records around would be wasted per employee each time.

Industrial Training Report

Improved Data Quality


Manual resumes must be then entered into a computer in order to be processed for further process or may be maintained into database for future requirement. Whenever data is keyed into a computer from a hand-written document, errors will be made. These errors can cost you in many direct and indirect ways:

Incorrect selection may take place. When employees are appointed it may be the wrong selection that may had occurred due to the consultant or adjustment is costly for organization. Without accurate information, you lose the ability to perform useful decision support. You should have accurate information about the background of the employee as well as the employer, departments worked in, areas the organization is working in etc. for your decision support.

Fewer Inquiries to the Human Resources Department


A good automated JustJob.com will provide useful information to the jobseekers online that they traditionally request from the HR departments. By making this information available online, your HR departments will spend less time answering questions from jobseekers and recruiters. A good system will be able to track the following information for each jobseeker and make available:

The professional record of the jobseeker History of the jobseekers experience The major skills of the jobseeker The personal information about it The areas the organization work in

The following information can be tracked for each recruiter The Contact persons resposible for recruitement
7

Industrial Training Report

Assigned Projects of the organization Training sessions if it providing any Position title and the experience it is seeking Performance Reviews of the organization. Human Resource Management features make creating and maintaining complete employee files simple and efficient. Its powerful record keeping, monitoring and reporting capabilities will save you time, while reducing your exposure to employment related lawsuits by ensuring you have proper documentation. In addition, HRM reduces the potential for employee grievances by assuring fairness across your workforce. With HRM, you will identify trends early and make adjustments as needed.

Industrial Training Report

OBJECTIVE
JustJob.com is a Portal made for Consultancy. Objective of this project is to automate the recruitment process of the consultancy. The project entitled JustJob.com helps in finding solutions to the manual systems being used in Consultancy. The system analyses the problem of dealing with the great deal of manual work. Manually maintenance of Jobseeker details and Recruiter details can create a lot of problem. Such as: Slow process Time taking Difficulty to retrieve information Difficulty to analyze the related data More staff More paper work In today's world of computing one has to cope with the fast trend of changing world and globalization a consultancy has to interact with Recruiters (various companies), keep records and knowledge of various vacancies in these companies. It also keeps resumes of several kinds of Jobseekers. And maintain resources (Jobseekers and match the bio-data according to the job requirement) and then inform the Jobseeker about the job and Recruiters. Computerised and web based JustJob.com will help a user i.e. a consultant in many ways. The key features of the project are: To facilitate easy maintenance of records of various Recruiters (Companies), Jobs and Jobseekers. To check details of prospective Jobseekers through quick search provided in the Portal. To check for matching Job with Jobseekers. To facilitate preparation of records in the mechanized process and thereby producing accurate documents/datas for recording details. Quick access of all records To match the suitable candidate to appropriate job
Industrial Training Report

Reduce manual work Generation of Quick report Prevent and reduce human error

Industrial Training Report

10

SYSTEM ANALYSIS

Introduction of User Definition of System Identification of Need Preliminary Investigation Modules in JustJob.com

Industrial Training Report

11

SYSTEM ANALYSIS
System Analysis refers to the process of examining a business situation with the intent of improving it through better procedures and methods Requirement analysis is the first technical step in Portal process. It is a process of discovery, refinement, modeling and specification. It is the systematic use of proven principles, techniques, languages and tools for the cost-effective analysis, documentation and on-going evolution of user needs and the specification of external behavior of a system to satisfy those user needs. The very first thing is the problem recognition. After the need of the project is identified the implementation of the project is identified who is going to use the Portal, what all are the points needed in modeling the design of the Portal.

INTRODUCTION OF USER
The term user is widely used in the system analysis and design. The term end-user is widely used by the analysts to refer to people who are not professional information systems specialists but who can use computers to perform their Jobs. We can group end-user into four categories. Hands-on Users actually interact with the system. They fed in data or receive output, perhaps using a terminal. Indirect Users benefits form the results or reports produced by these systems but do not directly interact with the hardware or software. These users may be managers of business functions using the system. End-Users are not alike. Some are intermittent users. The enduser can also be a competitor, not an employee of the firm. User manages have management responsibilities for application systems.
12

Industrial Training Report

Senior Manager users are fourth types of users and is talking increased responsibility for the development of information systems.

DEFINITION OF SYSTEM
In the broad sense, a system is simply a set of components that interact to accomplish some purpose. Systems are all around us. As computers are used more and more by persons who are not computer professionals, the face of systems development is taking on an additional dimension. Users themselves are undertaking development of some of the systems they use, as the executive in the vignette emphasized. These different situations are represented by three distinct approaches to the development of computer information systems: Systems Development Life Cycle. Structured Analysis Development Method. Systems Prototype Method. Systems development, a process consisting of two major steps of systems analysis and design, starts when management of sometimes systems development personnel realizes that a particular business system needs improvement. Systems development is classically thought of as the set of activities that analysts, designers and users carry out to develop and implement an information system. Different parts of the project can be in various phases at the same time, with some components undergoing analysis while other advanced stages.

Systems development consists of following activities : Preliminary investigation. Determination of system requirements. Design of system. Development of Portal.
13

Industrial Training Report

System testing. Implementation and evaluation. System analysis is conducted with the following objectives in mind: Identify the users need. Evaluate the system concept for feasibility. Perform economic and technical analysis. Allocate functions to hardware, software, people, database and other system elements. Establish cost and schedule constraints. Create a system definition that forms the foundation for all subsequent engineering work. Both hardware and software expertise are required to successfully attain the objectives listed above. As our Portal JustJob.com is going to be used by the people who may or may not be computer literate, we had tried to make it user-friendly.

IDENTIFICATION OF NEED
This step is initiation of system analysis .An overview of the customers requirement has been done. The basic need of the user to opt for such kind of project is analyzed. Manually maintenance can create a lot of problem. Such as: 1. Slow process 2. Time consuming. 3. Lacks accuracy. 4. Difficulty to hide information from unauthenticated staff. 5. Difficulty to retrieve information 6. Difficulty to analyze the related data 7. More staff
14

Industrial Training Report

8. More paper work Computerizing the JustJob.com will help a user i.e. a consultant to quick access of all records; match the suitable candidate to appropriate job. It also maintains all the files in databases to provide quick access and save the time. The objective of the project is to develop Portal for handling the record of consultancy and easy to update according users requirement. The main aim of the project is to increasing the efficiency of the management process and to better maintain the records of both Jobseekers and Recruiters.And when need records should available easily. The user is accessed to the main menu from which he/she can select appropriate Jobseeker for job requirement of several companies. Information is needed in organizations for planning, staffing and controlling purposes.Regardless of the nature of the information required, the information should possess the characteristics of accuracy, timeliness, completeness and relevancy. In the recent years, need for information improvement by reports lacking one or more of these characteristics and by increased paper work volume, rising costs, and pressures from outside changes. Fortunately computers thrive on repetitive large volume processing tasks, are fast and accurate. The processing capability in many organizations has been strained by 1. Growth in size and complexity of the organizations 2. The increased requirements for data from external sources and 3. The demand of administrators for more information. More than a million new pages of data are generated each minute of the day in offices. Compare to other processing methods, the use of computers may make it possible for certain administrative costs to be reduced while the level of processing activity remains stable. The increased cost and clerical labor materials and other

Industrial Training Report

15

expenses associated with the data processing operation require eventual managerial attention. We all agree that meaningful information is timely information. But with an increase in volume and size of an organization, there is only a reduction in the speed of processing. Rapid changes are taking place in the world socially, economically and technically. Such changes have a significant impact on the environment in which organizations must operate, on the planning that managers must do, and on the information that they must have. But if a data processing operation is strained to or beyond the capacity for which if was originally planned, inaccuracies will begin to appear. Inadequate control will permit inadequate performance. It is due to these pressures (increased paper work volume, costs, pressure from outside changes, and demand for timeliness & demand for quality) that most of the organizations today are opting for computers to do data processing for them. The project is mainly an information-processing sub-package. It aims at providing information about rooms available in the hotel. Each time a customer checks in the availability of a room is checked and then allotted, and his personal detail is stored. The problem if handled manually the information might lose the characteristics of either timeliness or accuracy. Hence the need for this project was realized. All the data has to be first fed in the computer. Once it is stored in the files any query regarding this data can be answered satisfactorily. The retrieval process involves much less time and the information is accurate. Any updating is easily accommodated.

PRELIMINARY INVESTIGATION
The user is a consultant, which has to keep records of his Recruiters, their details, the details of their requirements. The consultant has also maintained the resource pool of Jobseekers and then matches the suitable candidate according to the requirement.

Industrial Training Report

16

MODULES IN JUSTJOB.COM
Password Module In this module, user enters a password and the Portal checks its validity. If the password is valid then he is allowed to enter, otherwise Invalid User/Password message is displayed. PostJob Consultancies contact to several companies and gather information regarding several vacancies and store them into their database. Jobseekers Jobseekers gather information about the several consultancies and prepare their resumes according to job requirement mentioning their technical and educational skills and send resumes to consultancies. Recruiters Recruiters match the job with resumes and inform the Jobseeker through phone or email. Contact of Consultancies to Companies After selecting suitable candidate consultancies information to companies.

give

their

Selection Company selects appropriate Jobseeker sended by consultancies and fix time for interviews. After final selection information is sended to Jobseeker. Prepare Invoice Companies sending information about the selection of Jobseeker to consultancies and consultancies make invoices according to selected Jobseeker and send to company.

Industrial Training Report

17

Payment Company checks invoices against requirement sended by consultancies and make payment accordingly either through cash or cheque. Validation of Data Entered by the User and Error Handling In this module, the validity of data entered by the user during the various processes is checked through various validation checks. For example, there shouldnt be any characters entered in the numeric fields, likewise if there is any error occurs that it should handle that particular error and give the required messages.

Industrial Training Report

18

FEASIBILITY STUDY

Operational Feasibility Economical Feasibility Technical Feasibility

Industrial Training Report

19

FEASIBILITY STUDY
Depending on the results of the initial investigation, the survey is expanded to a more detailed feasibility study. Feasibility study is a test of system proposal according to its work ability, impact on the organization, ability to meet user needs, and effective use of resources. The objective for this phase is not to solve the problem but to acquire a sense of scope. During the study, the problem definition is crystallized and aspects of the problem to be included in the system are determined. Information processing systems are capital investments because resources are being spent currently in order to achieve benefits to be received over a period of time following completion. There should be a careful assessment of each project before it is begun in terms of economic justification, technical feasibility, operational impact and adherence to the master development plan. We started the project by listing the possible queries that the user might want to be satisfied. And on these lines we guided the project further. The three main points, kept in mind at the time of project, are: Possible (To build it with the given technology and resources) Affordable (given the time and cost constraints of the organization) Acceptable (for use by the eventual users of the system) The three major areas to consider while determining the feasibility of a project are: ---

TECHNICAL FEASIBILITY
This involves financial consideration to accommodate technical enhancements. If the budget is a serious constraint, then the project is judged not feasible.The analyst thinks about the technical
Industrial Training Report

20

feasibility of the system. In the proposed system, the application has made in this way so that it is technically feasible for the sales promotion. There are some certain types of reports being used in the system to make the application more users friendly i.e. the Data Report is used. The system has made in such away that it is being used for a single user as well as multi-user environment. The operating systems are Windows NT 4.0/Windows 2000/Windows XP/2003/7. Thus we see that the system is more technically feasible regarding to operating system. We are using Microsoft SQL Server 2005 as backend for maintaining the database. SQL Server is a relational database management system of an object that is formed by the database and an instance of the SQL Server. SQL Server 2000 is Windows based RDBMS. This is one of the powerful RDBMS due to its menu driven facility. This provides a better service to the user in the sense of taking the backup of data and then restores it. We can easily mirror the database in the SQL Server 2000.

ECONOMICAL FEASIBILITY
An evaluation of development cost weighed against the ultimate income or benefit derived from the developed system. Today, software is the most expensive element of virtually all computerbased systems. A large cost estimation error can make the difference between profit and loss. Estimation of resources, cost, and schedule for a software engineering effort requires experience, access to good historical information, and the courage to commit to quantitative predictions. Estimation carries inherent risk and this risk leads to uncertainty. Project complexity has a strong effect of the uncertainty inherent in planning. Complexity, however, is a relative measure that is affected by familiarity with past effort. Project size is another important factor that can affect the accuracy and efficiency of estimates. As size increases, the interdependency among various elements of the software grows rapidly. Software cost and effort estimation will never be an exact science. Too many variableshuman, technical, environmental, political-can affect the ultimate
21

Industrial Training Report

cost of software and effort applied to develop it. However, software project estimation can be transformed from a black art to a series of systematic steps that provide estimates with acceptable risk. The system is not too costly according to the features of the application. The cost of the project is balanced. The cost of the project might be increase or decrease as according to requirement of the customer. The system has developed systematically.

OPERATIONAL FEASIBILITY
This application is very easy to operate as it is made user friendly. Main consideration is users easy access to all the functionality of the application. Documentation of the Feasibility Study The findings of a feasibility study are generally documented in what is called a feasibility report. The degree of detail in such reports would be greatly dependent on the native of the project. The content of this project would be as given in: Introduction Statement of problem Implementation Environment Constraints Management summery and recommendations Important findings Comments Recommendations Impact Alternatives Alternative system configurations Criteria used in selecting the final approach

Industrial Training Report

22

System description Abbreviated statement of scope. Feasibility of allocated elements

Industrial Training Report

23

SOFTWARE & HARDWARE SPECIFICATIONS PROJECT PLANNING


Team Structure. Topic understanding. Modular break-up of the system Processor logic for each module Database requirements

PROGRAMMING LANGUAGE & TOOLS


Environment: Introducing the .NET Platform Technology: The Asp.Net Programming Language: C#.Net Sql Server 2005

Industrial Training Report

24

SOFTWARE AND HARDWARE SPECIFICATIONS


The Portal Requirements Specification is produced at the culmination of the analysis task. The function and performance allocated to Portal as part of system engineering are refined by establishing a complete information description, a detailed functional description, a representation of system behavior, an indication of performance requirements and design constraints, appropriate validation criteria, and other information pertinent to requirements. The Introduction of the Portal requirement specification states the goals and objectives of the Portal, describing it in the context of the computer-based system. Actually the introduction may be nothing more than the software scope of the planning document. The information description provides a detailed description of the problem that the Portal must solve. Information content, flow, and structure are documented. Hardware, Software and human interfaces are described for external system elements and internal software functions. For this project we need some special type of environment for setup. This is as follows:

Software Interfaces
Following software are required for developing Web based application:
I. II. III. IV. V. VI. Operating System Environment Frontend Tool Technology Versioning Tools Backend Tool Windows NT, 2000, XP Prof Etc. VisualStudio.Net C#, VB.Net. ASP.NET. IIS 5.0. SqlServer2000.

Industrial Training Report

25

VII. VIII.

Data Access Tool Reports

ADO.NET. Crystal Report.

Hardware Interfaces
It's a web based project, so a robust hardware configuration is required. The hardware requirements are:
I. II. III. IV. Processor Motherboard RAM Hard Disk PIII 700 MHz and above. Intel 845 and above 256 to 768 MB 2.5 GB for Visual Studio .NET and 1 GB for Microsoft SQLServer2000. Standard Ethernet card for networking. Keyboard, mouse and Color monitor Twisted pair for networking.

V. VI. VII.

Network Card I/O Devices Wires

Industrial Training Report

26

PROJECT PLANNING
I took assignment for developing a computerized system of JustJob.com planning of this project will include following things: Team Structure. Topic understanding. Modular break-up of the system Processor logic for each module Database requirements

TEAM STRUCTURE
The project team comprises of five members who worked as developers and a project leader who assigned the whole task and provided the finest details of the problem. The project coordinator supervises the whole project work and sort out the problems occurred during the development phase.

TOPIC UNDERSTANDING
It is vital that the field of application as introduced in the project may be totally a new field. So as soon as I took this project, I carefully went through the project to identify the requirements of the project.

MODULAR BREAK-UP OF THE SYSTEM


It consists of following phases: Identify the various modules in the system List them in the right hierarchy Identify their priority of development

Description of the Modules


Industrial Training Report

27

This project consists of different interfaces, which will be accessed through a MDI (Multiple Document Interfaces) window. Different modules which makeup this system are briefly described below: Password Module In this module, user enters a password and the Portal checks its validity. If the password is valid then he is allowed to enter, otherwise Invalid User/Password message is displayed. PostJob Consultancies contact to several companies and gather information regarding several vacancies and store them into their database. Jobseekers Jobseekers gather information about the several consultancies and prepare their resumes according to job requirement mentioning their technical and educational skills and send resumes to consultancies. Recruiters Recruiters match the job with resumes and inform the Jobseeker through phone or email. Contacts of Consultancies to Companies After selecting suitable candidate consultancies information to companies.

give

their

Selection Company selects appropriate Jobseeker sended by consultancies and fix time for interviews. After final selection information is sended to Jobseeker. Prepare Invoice Companies sending information about the selection of Jobseeker to consultancies and consultancies make invoices according to selected Jobseeker and send to company.

Industrial Training Report

28

Payment Company checks invoices against requirement sended by consultancies and make payment accordingly either through cash or cheque. Validation of Data Entered by the User and Error Handling In this module, the validity of data entered by the user during the various processes is checked through various validation checks. For example, there shouldnt be any characters entered in the numeric fields, likewise if there is any error occurs that it should handle that particular error and give the required messages.

PROCESS LOGIC FOR EACH MODULE


In the first module, validity of password is checked against a particular user. In the second module, whenever a new entity is entered it should be checked for the duplicate data. In the third module and fourth module, just like the first module it should have the proper checks for every entity being modified or updated. In last module, again the validation checks are made and the different reports are generated to ease the business processes and decision-making. DATABASE REQUIREMENTS Identify the various tables required. Fields for these tables. The various key fields (for example Primary key and foreign key). Identify the various constraints like not null, Unique etc.

Industrial Training Report

29

PROGRAMMING LANGUAGE & DEVELOPMENT TOOLS ENVIRONMENT: Introducing the .NET Platform
The .NET Framework is a managed type-safe environment for application development and execution. The .NET Framework manages all aspects of your programs execution. It allocates memory for the storage of data and instructions, grants or denies the appropriate permissions to your application, initiates and manages application execution, and manages the reallocation of memory from resources that are no longer needed. The .NET Framework consists of two main components: the common language runtime and the .NET Framework class library. The common language runtime can be thought of as the environment that manages code execution. It provides core services, such as code compilation, memory allocation, thread management, and garbage collection. Through the common type system (CTS), it enforces strict type-safety and ensures that code is executed in a safe environment by also enforcing code access security. The .NET Framework class library provides a collection of useful and reusable types that are designed to integrate with the common language runtime. The types provided by the .NET Framework are object-oriented and fully extensible, and they allow you to seamlessly integrate your applications with the .NET Framework. The .NET Framework is designed for cross-language compatibility, which means, simply, that .NET components can interact with each other no matter what supported language they were written in originally. So, an application written in Microsoft
Industrial Training Report

30

Visual Basic .NET might reference a dynamic-link library (DLL) file written in Microsoft Visual C#, which in turn might access a resource written in managed Microsoft Visual C++ or any other .NET language. This language interoperability extends to full objectoriented inheritance. A Visual Basic .NET class might be derived from a C# class, for example, or vice versa. This level of cross-language compatibility is possible because of the common language runtime. When a .NET application is compiled, it is converted from the language in which it was written (Visual Basic .NET, C#, or any other .NET-compliant language) to Microsoft Intermediate Language (MSIL or IL). MSIL is a low-level language that the common language runtime can read and understand. Because all .NET executables and DLLs exist as MSIL, they can freely interoperate. The Common Language Specification (CLS) defines the minimum standards to which .NET language compilers must conform. Thus, the CLS ensures that any source code successfully compiled by a .NET compiler can interoperate with the .NET Framework. The CTS ensures type compatibility between .NET components. Because .NET applications are converted to IL prior to deployment and execution, all primitive data types are represented as .NET types. Thus, a Visual Basic Integer and a C# int are both represented in IL code as a System.Int32. Because both languages use a common type system, it is possible to transfer data between components and avoid time-consuming conversions or hard-to-find errors. Visual Studio .NET ships with languages such as Visual Basic .NET, Visual C#, and Visual C++ with managed extensions, as well as the JScript scripting language. You can also write managed code for the .NET Framework in other languages. Thirdparty tools and compilers exist for Fortran, Cobol, Perl, and a host of other languages. All of these languages share the same crosslanguage compatibility and inheritability. Thus, you can write code for the .NET Framework in the language of your choice, and it will be able to interact with code written for the .NET Framework in any other language.
Industrial Training Report

31

V I S U A L S T U D I O . Ne t t

C#

Vb.net

Jscript. net

Common Language Specification (CLS) Window s Forms Web Form Web Service

ADO.Net and XML .Net Framework Classes Common Language Runtime Windows COM+ Services

Microsoft .NET Architecture Hierarchy Features of the .NET Platform


Multilanguage Development Platform and Processor Independence Versioning Support Security

Components of the .NET Architecture


As we mentioned earlier, there is a lot to the .NET Framework. In this section, We identify the individual components and describe their features and how they fit into the overall picture.

. NET Runtime

Industrial Training Report

32

The heart of the .NET Framework is the CLR. Similar in concept to the Java Virtual Machine, it is a runtime environment that executes MSIL code. Unlike the Java environment, which is the concept of one language for all purposes, the .NET platform supports multiple programming languages through the use of the Common Language Specification, which defines the output required of compilers that want to target the CLR.

Managed/Unmanaged Code
Because all code targeted at the .NET platform runs with the CLR environment, it is referred to as managed code. This simply means that the execution of the code and its behavior is managed by the CLR. The metadata available with managed code contains the information required to allow the CLR to manage its safe execution. By safe execution we mean memory and security management, type safety, and inter-language interoperability. Unmanaged code can write to areas of memory it does not own, execute instructions at arbitrary locations in memory, and exhibit any number of other bad behaviors that cannot be managed or prevented by the CLR. Most of the applications running on Windows today are unmanaged.

Intermediate Language
The .NET intermediate language, MSIL, is defined in the Common Language specification. It is an amalgam of a low-level language similar in many ways to a machine language and a higher object language. You can write applications directly in MSIL, much as you can write directly in assembly language. Thankfully, this is not necessary for most purposes.

Compiling
Running your C# code through the C# compiler produces two important pieces of Information: code and metadata. The following sections describe these two items and then finish up by examining the binary building block of .NET code: the assembly.

Microsoft Intermediate Language (MSIL)


Industrial Training Report

33

The code that is output by the C# compiler is written in a language called Microsoft Intermediate Language or MSIL. MSIL is made up of a specific set of instructions that Specify how your code should be executed. It contains instructions for operations such as variable initialization, calling object methods, and error handling, just to name a few. C# is not the only language in which source code changes into MSIL during the compilation process. All .NETcompatible languages, including Visual Basic .NET and Managed C++, produce MSIL when their source code is compiled. Because all of the .NET languages compile to the same MSIL instruction set, and because all of the .NET languages use the same runtime, code from different languages and different compilers can work together easily. MSIL is not a specific instruction set for a physical CPU. It knows nothing about the CPU in your machine, and your machine knows nothing about MSIL. How, then, does your .NET code run at all, if your CPU can't read MSIL? The answer is that the MSIL code is turned into CPU-specific code when the code is run for the first time. This process is called "just-in-time" compilation, or JIT. The job of a JIT compiler is to translate your generic MSIL code into machine code that can be executed by your CPU.You may be wondering about what seems like an extra step in the process. Why generate MSIL when a compiler could generate CPU-specific code directly? After all, compilers have always done this in the past. There are a couple of reasons for this. First, MSIL enables your compiled code to be easily moved to different hardware. Suppose you've written some C# code and you'd like it to run on both your desktop and a handheld device. It's very likely that those two devices have different types of CPUs. If you only had a C# compiler that targeted a specific CPU, then you'd need two C# compilers: one that targeted your desktop CPU and another that targeted your handheld CPU. You'd have to compile your code twice, ensuring that you put the right code on the right device. With MSIL, you compile once. Installing the .NET

Industrial Training Report

34

Framework on your desktop machine includes a JIT compiler that translates your MSIL into CPU-specific code for your desktop. Installing the .NET Framework on your handheld includes a JIT compiler that translates that same MSIL into CPU-specific code for your handheld. You now have a single MSIL code base that can run on any device that has a .NET JIT compiler. The JIT compiler on that device takes care of making your code run on the device. Another reason for the compiler's use of MSIL is that the instruction set can be easily read by a verification process. Part of the job of the JIT compiler is to verify your code to ensure that it is as clean as possible. The verification process ensures that your code is accessing memory properly and that it is using the correct variable types when calling methods that expect a specific type. These checks ensure that your code doesn't execute any instructions that could make the code crash. The MSIL instruction set was designed to make this verification process relatively straightforward. CPU-specific instruction sets are optimized for quick execution of the code, but they produce code that can be hard to read and, therefore, hard to verify. Having a C# compiler that directly outputs CPU-specific code can make code verification difficult or even impossible. Allowing the .NET Framework JIT compiler to verify your code ensures that your code accesses memory in a bug-free way and that variable types are properly used.

Industrial Training Report

35

The Execution Flow In .Net

Industrial Training Report

36

Common Type System The .NET applications, regardless of their source languages all share a common type system. What this means is that you no longer have to worry when doing development in multiple languages
37

Industrial Training Report

about how a data type declared in one language needs to be declared in another. Any .NET type has the same attributes regardless of the language it is used in. Furthermore, all .NET data types are objects, derived from System. Object. Because all data types derive from a common base class, they all share some basic functionality, for example the ability to be converted to a string, serialized, or stored in a collection.

. NET Base Class Library (BCL)


If I could have bought a library that offered everything the .NET Base Class Library offers when I started programming, a years salary would have seemed reasonablethere really is that much to it. Almost everything in the .NET environment is contained within the BCL. Lets look at a Hello World example: Using System; Class Hello {Public static void Main () {Console.WriteLine ("Hello World");} } The only function contained in this simple program is a call to the WriteLine method of the Console class. What is really unique about the .NET environment is that .NET languages dont have to implement even the most basic functions; they are available in the BCL. Because all .NET languages share the same common set of libraries, the code being executed by your C# program is the same code being executed by a program written in another language. This means that all languages that target the .NET environment essentially share the same capabilities, except they have different syntax.

Assemblies
Assemblies are the means of packaging and deploying applications and components In .NET. Just like a compiled application or component today, assemblies can be made up of either single or multiple files. An assembly contains metadata information (covered in the next section), which is used by the CLR for everything from type
Industrial Training Report

38

checking and security to actually invoking the components methods. All of this means that you dont need to register .NET components, unlike COM objects. Sometimes, you will use C# to build an end-user application. These applications are packaged as executable files with an extension of .EXE. Windows has always worked with .EXE files as application programs, and C# fully supports building .EXE files. However, there may be times when you don't want to build an entire application. Instead, you may want to build a code library that can be used by others. You may also want to build some utility classes in C#, for example, and then hand the code off to a Visual Basic .NET developer, who will use your classes in a Visual Basic .NET application. In cases like this, you won't be building an application. Instead, you'll be building an assembly. An assembly is a package of code and metadata. When you deploy a set of classes in an assembly, you are deploying the classes as a unit; and those classes share the same level of version control, security information, and activation requirements. Think of an assembly as a "logical DLL." If you're familiar with Microsoft Transaction Server or COM+, you can think of an assembly as the .NET equivalent of a package.There is two types of assemblies: private assemblies and global assemblies. When you build your assembly, you don't need to specify whether you want to build a private or a global assembly. The difference is apparent when you deploy your assembly. With a private assembly, you make your code available to a single application. Your assembly is packaged as a DLL, and is installed into the same directory as the application using it. With a deployment of a private assembly, the only application that can use your code is the executable that lives in the same directory as your assembly. If you want to share your code among many applications, you might want to consider deploying your code as a global assembly. Global assemblies can be used by any .NET application on the system, regardless of the directory in which it is installed. Microsoft ships assemblies as a part of the .NET Framework, and each of the Microsoft assemblies is installed as a global assembly. The .NET Framework contains a list of global assemblies in a facility called the global assembly cache, and the .NET Microsoft
39

Industrial Training Report

Framework SDK includes utilities to both install and remove assemblies from the global assembly cache.

Metadata
The compilation process also outputs metadata, which is an important piece of the .NET code sharing story. Whether you use C# to build an end-user application or you use C# to build a class library to be used by someone else's application, you're going to want to make use of some already-compiled .NET code. That code may be supplied by Microsoft as a part of the .NET Framework, or it may be supplied by a user over the Internet. The key to using this external code is letting the C# compiler know what classes and variables are in the other code base so that it can match up the source code you write with the code found in the precompiled code base that you're working with.Think of metadata as a "table of contents" for your compiled code. The C# compiler places metadata in the compiled code along with the generated MSIL. This metadata accurately describes all the classes you wrote and how they are structured. All of the classes' methods and variable information is fully described in the metadata, ready to be read by other applications. Visual Basic .NET, for example, may read the metadata for a .NET library to provide the IntelliSense capability of listing all of the methods available for a particular class. If you've ever worked with COM (Component Object Model), you may be familiar with type libraries. Type libraries aimed to provide similar "table of contents" functionality for COM objects. However, type libraries suffered from some limitations, not the least of which was the fact that not all of the data relevant to the object was put into the type library. Metadata in .NET does not have this shortcoming. All of the information needed to describe a class in code is placed into the metadata. You can think of metadata as having all of the benefits of COM type libraries without the limitations.

Just In Time Compilation


The .NET CLR utilizes Just In Time (JIT) compilation technology to convert the IL code back to a platform/devicespecific code. In .NET, you currently have three types of JIT compilers: ss.com
Industrial Training Report

40

Pre-JIT: This JIT compiles an assemblys entire code into native code at one stretch. You would normally use this at installation time. Econo-JIT: You would use this JIT on devices with limited resources. It compiles the IL code bit-by-bit, freeing resources used by the cached native code when required. Normal JIT: The default JIT compiles code only as it is called and places the resulting native code in the cache. In essence, the purpose of a JIT compiler is to bring higher performance to interpreted code by placing the compiled native code in a cache, so that when the next call is made to the same method/procedure, the cached code is executed, resulting in an increase in application speed.

Garbage Collection
Memory management is one of those housekeeping duties that take a lot of programming time away from developing new code while you track down memory leaks. A day spent hunting for an elusive memory problem usually isnt a productive day. The .NET hopes to do away with all of that within the managed environment with the garbage collection system. Garbage collection runs when your application is apparently out of free memory, or when it is implicitly called but its exact time of execution cannot be determined. Lets examine how the system works. When your application requests more memory, and the memory allocator reports that there is no more memory on the managed heap, garbage collection is called. The garbage collector starts by assuming everything in memory is trash that can be freed. It then walks though your applications memory, building a graph of all memory that is currently referenced by the application. Once it has a complete graph, it compacts the heap by moving all the memory that is genuinely in use together at the start of the free memory heap. After this is complete, it moves the pointer that the memory allocator uses to determine where to start allocating memory from the top of this new heap. It also updates all of your applications references to point to their new locations in memory. This approach is commonly called a mark and sweep implementation. The exception to this is with individual objects over 20,000 bytes. Very
41

Industrial Training Report

large objects are allocated from a different heap, and when this heap is garbage collected, They are not moved, because moving memory in this size chunks would have an adverse effect on application performance.

TECNOLOGY: The ASP.NET


ASP.NET adds many features to and enhances many of the capabilities in classic ASP. ASP.NET isnt merely an incremental improvement to ASP; its really a completely new product, albeit a new product designed to allow the same development experience that ASP developers have enjoyed. ASP.NET is a set of components that provide developers with a framework with which to implement complex functionality. Two of the major improvements of ASP.NET over traditional ASP are scalability and availability. ASP.NET is scalable in that it provides state Services that can be utilized to manage session variables across multiple Web servers in a server farm. Additionally, ASP.NET possesses a high performance process model that can detect application failures and recover from them. Along with improved availability and scalability, ASP.NET provides the following additional benefits: Simplified development: ASP.NET offers a very rich object model that developers can use to reduce the amount of code they need to write. Language independence: ASP pages must be written with scripting. In other words, ASP pages must be written in a language that is interpreted rather than compiled. ASP.NET allows compiled languages to be used, providing better performance and crosslanguage compatibility. Simplified deployment: With .NET components, deployment is as easy as copying a component assembly to its desired location.

Industrial Training Report

42

Cross-client capability: One of the foremost problems facing developers today is writing code that can be rendered correctly on multiple client types. For example, writing one script that will render correctly in Internet Explorer 5.5 and Netscape Navigator 4.7, and on a PDA and a mobile phone is very difficult, if not impossible, and time consuming. ASP.NET provides rich server-side components that can automatically produce output specifically targeted at each type of client. Web services: ASP.NET provides features that allow ASP.NET developers to effortlessly create Web services that can be consumed by any client that understands HTTP and XML, the de facto language for inter-device communication. Performance: ASP.NET pages are compiled whereas ASP pages are interpreted. When an ASP.NET page is first requested, it is compiled and cached, or saved in memory, by the .NET Common Language Runtime (CLR). This cached copy can then be re-used for each subsequent request for the page. Performance is thereby improved because after the first request, the code can run from a much faster compiled version.

PROGRAMMMING LANUAGE: C#.Net


Introducing C# C#, the new language introduced in the .NET Framework, is derived from C++. However, C# is a modern, objected-oriented (from the ground up) type-safe language. Language features The following sections take a quick look at some of the features of the C# language Classes All code and data in C# must be enclosed in a class. You can't define a variable outside of a class, and you can't write any code that's not in a class. Classes can have constructors, which execute when an object of the class is created, and a destructor, which executes when an object of the class is destroyed. Classes support
Industrial Training Report

43

single inheritance, and all classes ultimately derive from a base class called object. C# supports versioning techniques to help your classes evolve over time while maintaining compatibility with code that uses earlier versions of your classes. As an example, take a look at a class called Family. This class contains the two static fields that hold the first and last name of a family member as well as a method that returns the full name of the family member. Class Class1 { Public string FirstName; Public string LastName; Public string FullName () { Return FirstName + LastName; } } Note Single inheritance means that a C# class can inherit from only one base class. C# enables you to group your classes into a collection of classes called a namespace. Namespaces have names, and can help organize collections of classes into logical groupings. These classes are contained within the Microsoft namespace. Data types C# lets you work with two types of data: value types and reference types. Value types hold actual values. Reference types hold references to values stored elsewhere in memory. Primitive types such as char, int and float, as well as enumerated values and structures, are value types. Reference types hold variables that deal with objects and arrays. C# comes with predefined reference types (object and string), as well as predefined value types (sbyte, short,int, long, byte, ushort, uint, ulong, float, double, bool, char, and decimal). You can also define your own value and reference types in your code. All value and reference types ultimately derive from a base type called object.

Industrial Training Report

44

C# allows you to convert a value of one type into a value of another type. You can work with both implicit conversions and explicit conversions. Implicit conversions always succeed and don't lose any information (for example, you can convert an int to a long without losing any data because a long is larger than an int). Explicit conversions may cause you to lose data (for example, converting a long into an int may result in a loss of data because a long can hold larger values than an int). You must write a cast operator into your code to make an explicit conversion happen. You can work with both one-dimensional and multidimensional arrays in C#. Multidimensional arrays can be rectangular, in which each of the arrays has the same Dimensions, or jagged, in which each of the arrays has different dimensions. Classes and structures can have data members called properties and fields. Fields are variables that are associated with the enclosing class or structure. Properties are like fields, but enable you to write code to specify what should happen when code accesses the value. If the employee's name must be read from a database, for example, you can write code that says, "When someone asks for the value of the Name property, read the name from the database and return the name as a string." Functions A function is a callable piece of code that may or may not return a value to the code that originally called it. An example of a function would be the FullName function shown earlier, in this chapter, in the Family class. A function is generally associated to pieces of code that return information whereas a method generally does not return information. For our purposes however, we generalize and refer to them both as functions. C# and the CLR work together to provide automatic memory management. You don't need to write code that says "allocate enough memory for an integer" or "free the memory that this object was using." The CLR monitors your memory usage and automatically retrieves more when you need it. It also frees memory automatically when it detects that it is no longer being used (this is
45

Industrial Training Report

also known as Garbage Collection).C# provides a variety of operators that enable you to write mathematical and bitwise expressions. Many (but not all) of these operators can be redefined, enabling you to change how the operators work. Classes can contain code and data. Each class member has something called an accessibility scope, which defines the member's visibility to other objects. Variables Variables can be defined as constants. Constants have values that cannot change during the execution of your code. The value of pi, for instance, is a good example of a constant, because its value won't be changing as your code runs. Enum type declarations specify a type name for a related group of constants. C# provides a built-in mechanism for defining and handling events. If you write a class that performs a lengthy operation, you may want to invoke an event when the operation is completed. Clients can subscribe to that event and catch the event in their code, which enables them to be notified when you have completed your lengthy operation. The event handling mechanism in C# uses delegates, which are variables that reference a function. Note an event handler is a procedure in your code that determines the actions to be performed when an event occurs, such as the user clicking a button. If your class holds a set of values, clients may want to access the values as if your class were an array. You can write a piece of code called an indexer to enable your class to be accessed as if it were an array. Suppose you write a class called Rainbow, for example, that contains a set of the colors in the rainbow. Callers may want to write MyRainbow [0] to retrieve the first color in the rainbow. You can write an indexer into your Rainbow class to define what should be returned when the caller accesses your class, as if it were an array of values. Interfaces C# supports interfaces, which are groups of properties, methods, and events that specify a set of functionality. C# classes can implement interfaces, which tell users that the class supports the set
46

Industrial Training Report

of functionality documented by the interface. You can develop implementations of interfaces without interfering with any existing code, which minimizes compatibility problems. Once an interface has been published, it cannot be changed, but it can evolve through inheritance. C# classes can implement many interfaces, although the classes can only inherit from a single base class. Attributes Attributes declare additional information about your class to the CLR. In the past, if you Wanted to make your class self-describing, you had to take a disconnected approach in which the documentation was stored in external files such as IDL or even HTML files. Attributes solve this problem by enabling you, the developer, to bind information to classes any kind of information. For example, you can use an attribute to embed documentation information into a class. Attributes can also be used to bind runtime information to a class, defining how it should act when used. The possibilities are endless, which is why Microsoft includes many predefined attributes within the .NET Framework.

SQL SERVER 2005


A database is stored in a very structured manner. Each database requires some way for a user to interact with the information within. Such interaction is performed by a database management system (DBMS). SQL Server is a member of a large category of products known as database management systems (DBMS). The general purpose of a DBMS is to provide for the definition, storage, and management of data in a centralized area that can be shared by many users. SQL Servers database management system is patterned on the relational model. Relational databases allow us to store vast amounts of data with far sampler maintenance and smaller storage requirements than the equivalent flat database. Relations among tables in a relational database are established using keys. A primary key is a field that uniquely identifies a record so it can be referenced from a related table. A foreign key is a field

Industrial Training Report

47

that holds identification values to relate records stored on other tables. Querying the database With each query of the database, we form a virtual table that contains the results of our query. Database queries are made with a specific language named SQL (structured query language). SQL Server 2000 has many performance improvements and features which allows us to build and manage large databases, query them fast, insert data into them at high rates, partition them for fast loading and backup and store very large objects or whole files. Central, Shared, Accessible, Backed up, Version etc. SQL, as a relational data language supports certain basic functions to control, define and manipulate data. SQL uses the term row to refer to a database record and the term column to refer to database field
The Data type that a Cell can hold Data Type
CHAR (size) : VARCHAR (size) int (P, S) DATE : : :

Description
This data type is used to store character strings values of fixed length. The size in brackets determines the number of characters the cell can hold. The maximum number of characters this data type can hold is 255 characters This data type is used to store variable length alphanumeric data. The maximum this data type can hold is 2000 character. The int data type is used to store numbers (fixed of floating point). Numbers of virtually any magnitude may be stored up to 10 digits of precision. This data type is used to represent data and time. The standard format is DD-MM-YY as in 24-JAN-03. To enter dates other than the standard format, use the appropriate functions. Date Time stores date in the 24hour format. This data type is used to store variable length character strings containing up to 2GB. LONG data can be store arrays of binary data in ASCII format.

LONG

Industrial Training Report

48

SYSTEM DESIGN DESIGN METHODOLOGY DATA FLOW DIAGRAM DATABASE DESIGN Stored Procedures. List of Tables. Relationship in Tables. DATA STRUCTURE

Industrial Training Report

49

SYSTEM DESIGN
System development can generally be through of as having two major components Analysis and Design. Systems development consists of following activities: Preliminary investigation. Determination of system requirements. Design of system. Development of software. System testing. Implementation and evaluation.

Analysis
System analysis is conducted with the following objectives: Identify the users need. Evaluate the system concept for feasibility. Perform economic and technical analysis. Allocate functions to hardware, software, people, database and other system elements. Establish cost and schedule constraints. Both hardware and software expertise are required to successfully attain the objectives listed above.

System Design
Software design is a multi step process, which focuses on distinct attributes of program: data structure, software architecture, interface representation, and procedural detail. The design process translates requirements into a representation of the software that can be assessed for quality before coding begins. According to requirement, the design is documented. The design must be translated into a machine-readable form. The code generation step perform this task .If design is performed in a detailed manner; code generation can be accomplished. The design phase is the first step while moving from the problem domain to solution domain. This phase begins when the
Industrial Training Report

50

requirement specification document for the newly developing system is available. The aim of this phase is to produce a model or a representation of the system, which is useful to have an overall look of the system without even developing the entire system. This model of the system is a plan for developing the system. There are three characteristics for the evaluation of a good design. The design should implement all the requirements of the user, which are specified in the SRS and it must accommodate all the requirements that may not be specified by the Recruiter in the analysis phase. The design should be readable and understandable for the people who involve in developing and testing the system. The design should provide a complete picture of the system, addressing the data functional domains from the implementation perspective.

DESIGN METHODOLOGY
When solving a small problem, the entire problem can be tackled at once. The complexity of large problems and limitations of human minds do not allow large problems to be treated as huge monoliths. For software design, the goal is to divide the problem into manageably small phases that can be solved separately. However, the different phases cannot be entirely independent of each other, as they together form the system. The different phases have to cooperate and communicate in order to solve the larger problem.

Industrial Training Report

51

DATA FLOW DIAGRAM


A Data Flow Diagram is a graph showing the flow of data values from their source in objects through processes that transform them to their destinations in other objects. It shows the functional relationship of the values computed by a system, including input values, output values, and input data stores. It is made up of a set of four symbols called as the external entities, data stores, data flows and the processes.

O level DFD

Jobseeker

JustJob.com (HRMS)

Recruiter

Industrial Training Report

52

1s Level DFD

HRM DATABASE JustJob.com (HRMS)

Pay to consulta nt Invoice PostJob Applicant informatio n Place resume

Conta ct

Jobseeker Recruiter Interviewin g

Industrial Training Report

53

2nd Level DFD

RECRUITER

Place requirement

JustJob.com (HRMS)

RECRUITER

Generate job specification category wise Job entry

Sent to consultant

JustJob.com (HRMS)

JOBSEEKER

Place resume

JustJob.com (HRMS)

JOBSEEKER

Industrial Training Report

Gather information about 54 consultant

Prepare resume according to job profile

Send resume JustJob.com (HRMS) Contact

Enter personal and technical information

JustJob.com (HRMS) JustJob.com (HRMS)

JOBSEEKER

Match the job requiremen t with resume

Contact through phone/email

JustJob.com (HRMS)

JOBSEEKER Select applicant according to job profile Send information 55 Industrial Training Report about the applicant to

RECRUITER

RECRUITER

Take Interview of

JOBSEEKER

RECRUITER

Selecting applicant send by consultant

Fix Interviews

Final Selection

Inform to applicant JOBSEEKER JustJob.com Invoice

RECRUITER

RECRUITER

Sending information about selection of applicant


Industrial Training Report

JustJob.com

56

JustJob.com

Prepare innovice of Applicant

RECRUITER

RECRUITER

Payment to consultant

JustJob.com

RECRUITER Check the invoice against the requirement

Make payment accordingly

JustJob.com

DATABASE DESIGN
A database management system (DBMS) consists of a collection of interrelated data and a set of programs to access those data. The collection of data, usually referred to as the database, contains information about one particular enterprise. The primary goal of a DBMS is to provide an environment that is both convenient and efficient to use in retrieving and sorting database information.

Industrial Training Report

57

Database systems are designed to manage large bodies of information. The management of data involves both the definition of storage of information and the provision of mechanisms for the manipulation of information. We used relational database management system (RDBMS) for developing this system. The goal of a relational- database management system (RDBMS) design is to generate a set of relation schemas that allows us to store information without unnecessary redundancy. It also allows us to retrieve information easily.

Redundancy
Redundancy means repetition of information i.e., same information may be written or stored in many places (files). This redundancy may lead to data inconsistency i.e., the various copies of the same data. When we access this inconsistent data, system may give wrong information. To reduce the data redundancy we use the concept of normalization.

Normalization
Normalization of data is a process in which unsatisfactory relation schemas are decomposed by breaking up their attribute into smaller relation schemas that possess desirable properties. Normal forms provide a formal framework for analyzing relation schemas based on their keys and the functional dependencies among attributes to database designers. The concurrent process model is often used as the paradigm for the development of Recruiter server system that is composed of a set of functional component. When applied to Recruiter /server, the concurrent process model defines activity in two dimensions--a system dimension and a component dimension. System level issues are addressed using three activities: design, assembly, and use. The component dimension is addressed with two activities: design and realization. Concurrency is achieved in two ways: System and activities occur simultaneously and can be modeled using the state-oriented approach described previously. A typical Recruiter server application is implemented with many components, each
Industrial Training Report

58

Of which can be designed and realized concurrently.

Introduction to data dictionary


Data dictionaries are an integral component of structured analysis, since data flow diagrams by themselves do not fully describe the subject of the investigation/. The data flow diagrams provide the additional details about the project/system.

Data Dictionary (Definition)


A data dictionary is a catalog- a repository- the elements in a system. These elements center on the data and the way they are structured to meet user requiremen6ts and organization needs. A data dictionary consists of a list of all the elements composing the data flowing through a system. The major elements are data flow, data stores, and processes. The data dictionary stores details and descriptions of these elements.

Describing Data Elements


Each entry in the data dictionary consists of a set of details describing the data used or produced in the system. Each item is identified by a data name, description, alias, and length and has specific values that are permissible for it in the system being studied.

LIST OF TABLES

Industrial Training Report

59

Employer
EMPID UserId CATID Em pName ContactPerson CAddress PhoneNo MobileNo Type Period Rate PaidAm ount Date IsBlocked IsActive

College
COLID Name IsActive

EmpCategory
EMPCId Em pId CATID IsActive

Admin
ADID AdminId Pwd EmailId

Category
CATID Name Description IsActive

Industrial Training Report

60

J obSeeker
J SID UserId FNam e LNam e DOB FatherName CAddress PAddress PhoneNo MobileNo IsActive IsBlocked

KeySkill
KSID CATID KeySkill IsActive

FeedBack
SNO UserId FeedBack IsActive

J obApplication
APPID UserId EmpId PJ ID AplDate IsActive

Industrial Training Report

61

Role
RID CATID Role IsActive

Rate
RATEID Period Rate IsActive

Qualification
QUAID Qualification IsActive

PostedJ ob
PJ ID UserId CATID J obTitle OpeningDate ClosingDate KeySkill ReqExp LOCID QUAID Description IsActive

Location
LOCID LocNam e IsActive

Industrial Training Report

62

UserResume
URID UserId CATID KeySkill TExp ASalary RHeading Resum e IsActive

UserQualification
UQUAID UserId QUAID SPID COLID Percentage PassYear IsActive

UserLogin
ULID UserId Pwd Em ailId AltEm ailId Type IsConfirm SecAns SecQuest RegDate IsActive

UEmployerHist
PREVID UserId UEm ployer CATID RID Designation ReleventExp IsActive

Specialisation
SPID QUAID Specialisation IsActive

Industrial Training Report

63

OPTIMIZATION OF CODE
The code of any application must be optimized. An optimized code effect the efficiency of the code and then the application .For application of code, we have used generalized function and that function are used in the entire application .An optimized code is also useful in terms of storage space .It require less hard disk space then the normalize code. It increase the speed of the compiler to compile the program .It needs less memory to run the application .An optimized program is also useful for the compiler when they are writing to give more assistance to their customer.

Industrial Training Report

64

SCREENS SHOTS

Industrial Training Report

65

Home page of the site

Industrial Training Report

66

Recruiter Login

Industrial Training Report

67

Jobseekers Login:

Industrial Training Report

68

Job Seeker Details:

Industrial Training Report

69

Edit Job seeker Details:

Job Search:

Industrial Training Report

70

Change password:

Industrial Training Report

71

Job seeker profile update:


Industrial Training Report

72

jobseeker resume summary

Industrial Training Report

73

FeedBack
Industrial Training Report

74

Industrial Training Report

75

Job Seeker Registration page1:

Industrial Training Report

76

Employer Details:

Industrial Training Report

77

Post Job

Industrial Training Report

78

Search Resume:

Industrial Training Report

79

Dowload Resume:

Industrial Training Report

80

Send Email To jobseeker:

SECURITY
Industrial Training Report

81

SECURITY CONFIGURATION Authentication. Authorization. Impersonation. CODE ACCESS SECURITY SECURITY MEASURES

Industrial Training Report

82

SECURITY
There are several reasons why you should think of security when you want to present a Web application. Reasons for Security One reason is that you might want to prevent access to some areas of your Web server. Different groups of users might have different access rights to different areas or virtual directories of your application.You also need security when you have to record and store secure relevant user data. This data has to be protected against public and unwanted access.

SECURITY CONFIGURATION
The Web.Config file has already been introduced. So it may be enough to mention that all security-related configuration information in ASP.NET is contained in this file. You have the ability to configure three fundamental functions for ASP.NET security: authentication, authorization, and impersonation. Therefore your Web.Config will have three additional sequences enclosed in the parent <security> tag.

Authentication, Authorization, Impersonation


Authentication-All your Web clients communicate with your Web application through IIS. So you can use IIS authentication (Basic, Digest, and NTLM/Kerberos) in addition to the ASP.NET built-in authentication solutions (Passport and Cookie). Authorization-Once a client request is authenticated, authorization determines whether this identity is allowed to have access to the requested resource. Impersonation-Through impersonation ASP.NET applications can get the identity of a client and behave like the client on whose behalf they are now operating.

Industrial Training Report

83

CODE ACCESS SECURITY


In ASP.NET you can make use of .NET Framework features. So you have access to the security solutions that the runtime provides. These are, for example, code access or role-based security.Code access security is a way to protect your server from malicious mobile code and allows benevolent mobile code to run safely. Code access security gives you an answer to the question: Are you the code you told me you were? The presented security solutions only work for ASP.NET resources. Other files types such as .gif, .txt, or .asp are still accessible, but you can map such files explicitly to the ASP.NET security system by configuring IIS.

AUTHENTICATION
ASP.NET supports three authentication providers. These providers validate the credentials a client sends along with a request against some authority. If the credentials are valid, an authenticated identity is given to the client. The three providers are: Windows authentication, which works hand in hand with IIS security. Passport authentication, which is a centralized authentication service provided by Microsoft. Cookie authentication, which issues a cookie to the request/response that contains the credentials for reacquiring the identity.

AUTHORIZATION
Once a client request is authenticated, the system determines whether access to the requested resource can be granted or not. ASP.NET distinguishes two types of authorization:

Industrial Training Report

84

File authorization File authorization is active when using Windows authentication. To determine whether access should be granted or not, a check against an access control list (ACL) is done. URL authorization Identities are mapped to pieces of the Uniform Resource Identifier (URI) namespace using URL authorization to selectively allow access to parts of the namespace.

IMPERSONATION
When using impersonatioSn, IIS and Windows file access security come into play. IIS authenticates the user using Basic, Digest, or Windows NTLM/Kerberos authentication. IIS then passes a token to ASP.NET; the token is either authenticated or unauthenticated. ASP.NET now impersonates the given token, so that the ASP.NET application can operate with the identity of the requesting client. The access to the requested resource is permitted according to NTFS settings (obviously, the Web server file system must be formatted as NTFS).

CODE ACCESS SECURITY


Besides the ASP.NET built-in security features, a developer can make use of several security solutions of the .NET Framework. Here we focus on one of them: code access security. With code access security you can admit code originating from one computer system to be executed safely on another system. Therefore the codes identity and origin has to be verified. To determine whether the code should be authorized or not, the runtimes security system walks the call stack, checking for each caller whether access to a resource or performing an operation should be allowed.

Industrial Training Report

85

In the .NET Framework you must specify the operations the code is allowed to perform.

SECURITY MEASURES TAKEN


Only the registered organization will be able to use the application. The system provides the facility to take backup and restoring of the data. There is no redundancy in the system at any stage. The structure of each table has designed in such a way that to remove any kind of encryption or decryption firewalls in the processing of the data. If a transaction completes, then the record is saved in the concerned tables otherwise not. There is a lot error handling technique has been used in the system. There is no deadlock situation comes at any stage in the system. Because each and every user has its own permissible rights to add/update/delete operation in the tables. In the JustJob.com we have taken mainly the three security preservers through Portal coding, to protect the data and system by unauthorized users: User of the system will have to go through the login screen and must enter the User Id and Password to enter to the Main Menu. If any one who doesnt no the password and gives wrong user id and password then system will inform about wrong information entered. If he/she cancels this login prompt then application will unload itself. Most important is the use of SQL Server 2005 system. It has its own password. Only valid user can enter in SQL Server database that knows user id and password. We also create trigger in SQL Server for security. It get fired when any updation, modification, deletion will be done on any table. It keeps record of date, time, user id, name of table, old

Industrial Training Report

86

value, and altered value on which above operation is done, and thus we can keep record of any discrepancy done. The use of Windows-XP will not provide access the system to unauthorized users. The above security will stop the unauthorized user to use the system. We make two provisions in case of hardware failure. These are: For hardware failure especially in the case of hard disk failure, SQL Server has the Option, of MIRROR hard disk, which back up the record in another hard disk. In the case of server failure Windows XP has the facility to run another CPU, which are, connected parallel to server and back up all the data of server and invoked in the case of server failure automatically.

Industrial Training Report

87

FUTURE SCOPE LIMITATIONS FUTURE ENHANCEMENTS CONCLUSION

Industrial Training Report

88

LIMITATIONS
Like any other standard application software (or any type of application in real world), this developed software too has limitations. Although compared to the market, this softwares JustJob.com this application right now has numerous limitations and but in future with enhancement it can be substituted for a real JustJob.com portal. Here is listing of known confines under this application: As this is a web-based application, like modern portals present on the internet or web this portal is not providing excellent user interface and GUI features. However, attempts have been maintained to provide a sort of good user interface. Although security algorithm are being used to encrypt or decrypt the user name and password but still there are chances that the confidentail information provided by the user may get lekaged or tampered.

As this a live project still the administrator part has to made more affective to perform functional tasks like checking the validy of any genuin organization or user, making paymnts etc. Companies are registered through online registration so there could be some fake organization so such checks with its primary information is still to be made which is not available in this project now. Whole of the registration process and the job searching is done on the website, so there are chances that user may not be very familiour with computer system.
89

Industrial Training Report

FUTURE ENHANCEMENTS

The project involves transforming the already existed manually operating system, so that it can be accessed easily. Efforts have been made to cover all user requirements to the extents possible and to make it user friendly. Input screens have designed in such a way that user have practically no possible in entering the information. Advantages of the proposed system The user can access the system from anywhere .If the user wants any query about the Recruiters, Jobseekers or requirement then a few keystrokes on a computer keyboard by a operator can avail all the details helping him/her not to wander department to department to access the details. The paper work is greatly minimized. No training is given to the users (operators). With the interface a layman can have pleasant experience working with the application. A detailed analysis of Portal requirements would provide necessary information for estimates, but analysis often takes weeks or months to complete. Therefore, We must examine the product and the problem it is intended to solve at very beginning of the project, At a minimum, the scope of the product must be established and bounded. Scope is defined by answering the following questionsContext- how does the Portal to be built into a larger system, product, or business context and what constraints are imposed as a result of the context?

Industrial Training Report

90

Information Objectives What customervisible data objects is produced as output from the Portal? What data objects are required for input? Function and Performance What function does the Portal perform to transform input data into output? Are any special performance In recent times in India and also other parts of the world record handling and maintaining the accuracy have become cumbersome processes. This Portal will assist the concerned Recruiter in maintaining their records and searching proper matching as per requirement only at mouse click. Manually find out the certain records in a very tedious. Cumbersome and risky job. This Portal can well assist in proper Real Estate Records Management.

Industrial Training Report

91

CONCLUSION
Web based application is the magic of todays world. The object of JustJob.com project is to harnsess the power of Internet for our practical and potential one. This report explains to extensively cover thiconcept and plant a seed of inquisitiveness in the mind of users. We hope that the HR persons of IT industry and IT Jobseekers wold maximam utlize of our project and we keep on adding ne facilities which would make it very useful fo other discipline jobseekers and HR persons among other industries no matter which field they are from. The basic idea f this project is to explain the fundamental concepts of B2B portal and also building of computer knowledge would highly unstable. We are thankful to the people who have given us their heartly support in this endavour, above all to Mr. Giriraj for giving us fabulous opportunity.

Industrial Training Report

92

BIBLIOGRAPHY & REFERENCES BOOKS ONLINE REFERENCES APPENDIX

BIBLIOGRAPHY
BOOKS

Developing web based applications with Microsoft PHI publications ASP.NET NIIT System Analysis & Design By Elias M. Awad SQL SERVER the complete reference (George Koch, Kevin Loney) SQL server2000 NIIT C# Bible Wiley Publishing, Inc. Visual Basic .NET (Wrox Publication) WEB SITE www.msdn.microsoft.com www.support.microsoft.com
Industrial Training Report

93

www.altavista.com www.developer.com/net

APPENDIX
Text Box A text Box control, sometimes called an edit field or edit control, displays information entered at design time, entered by the user, or assigned to the control in code at run time. Command Button Use a Command Button control to begin, interrupt, or end a process. When chosen, a Command Button appears pushed in and so is sometimes called push button. List Box A List Box control displays a list of items from which the user can select one or more. If the number of items exceeds the number that can be displayed, a scroll bar is automatically added to the List Box control. Label A Label control is a graphical control you can use to display text that a user cant change directly. Frame A Frame control provides an identifiable grouping for controls. You can also use a Frame to subdivide a form functionally for example, to separate groups of Option Button controls. Drop down Box A Drop down Box control combines the features of a text box and a list box. This control allows the user to select an item either by typing text into the combo box, or by selecting it form the list.

Industrial Training Report

94

Timer A Timer control can execute code at regular intervals by causing a Timer event to occur. The Timer control, invisible to the user, is useful for background processing. Picture Box The primary use for the Picture Box control is a display a picture to the user. The actual picture that is displayed is determined by the picture property. The picture property contains the file name (and optional path) for the picture file that you wish to display. Data Grid Control The DataGrid control displays and operates on tabular data. It allows complete flexibility to sort, merge, and format table containing strings and pictures. When bound to a Data control, DataGrid displays read-only data. Line Control A Line control is a graphical control displayed as horizontal, vertical, or diagonal line. You can use Line control at design time to draw lines on forms. Shape Control The Shape control is a graphical control displayed as a rectangle, square, oval, circle. Date and Time Picker Control A Data And Time Picker (DTP) Control provides a simple and intuitive interface through which to exchange data and time information with a user. For example, with a DTP control you can ask the user to enter a data and then retrieve his or her selection with ease. Option Button An Option Button control displays an option that can be turned on or off.

Industrial Training Report

95

Image Control Use the Image control to display a graphic. An Image control can display a graphic form an icon, bitmap or metafile, as well as enhanced metafile, JPEG, or GIF files. Check Box Control A Check Box indicates whether a particular condition is on or off. We use check boxes in an application to give users true/false or yes/no options. Because check boxes work independently of each other, a user can select any number of check boxes at the same time.

Industrial Training Report

96

Vous aimerez peut-être aussi