Sree Chaitanya College Of Engineering L.M.D Colony,Thimmapur
1. INTRODUCTION
Training and Placement Center is a total management and informative system, which provides the up-to date information of all the students in a particular college. TPC helps the colleges to overcome the difficulty in keeping records of hundreds and thousands of students and searching for a student eligible for recruitment criteria from the whole thing. It helps in effective and timely utilization of the hardware and the software resources.
All the users have some common services like changing password, updating details, searching for details, checking the details, mailing to administrator, and reading the material uploaded by admin if the user is a student. Administrator has the services to add events and achievements and he can reply to the mails sent by users. He can upload materials, search for student details, and he has the right to approve the students.
The system is an online application that can be accessed throughout the organization and outside as well with proper login provided. This system can be used as an application for the TPO of the college to manage the student information with regards to placement.
This project contains all the details of the students that can be viewed by all the users (read only), but can be modified only by the student with an authorized service. By maintaining student’s information, the system helps to have selections to be made easy for a company in its test for the recruitment process. The students can update their own information only.
Students can search for the material required for the selection process such as aptitude, reasoning…etc and various websites for placement papers. Events happening in the college and the achievements of the student’s i.e. selected students’ details can be viewed by all the users.
So, our project provides a facility of maintaining the details of the students, and gets the requested list of candidates for the companies who would like to recruit the people based on a given query.
1. PROBLEM DEFINITION
The earlier system is not computerized. All transactions in the system are done manually maintaining records. To make this laborious job simple the clients have to computerize the system. The management and all the departments that have been carrying out this job using manually makes the job more complicated and tedious most of the times. So, the best way is computerize computerization of the current environment.
2. OBJECTIVES OF PROJECT
The proposed system is fully computerized, which removes all the drawbacks of existing system. Proposed system is an online application that can be accessed throughout the organization and outside as well with proper login provided. This system can be used as an application for the TPO of the college to manage the student information with regards to placement. Students logging should be able to upload their information in the form of a CV. Visitors/Company representatives logging in may also access/search any information put up by Students.
1.3 SCOPE
The scope of project is limited only to Placement application and its approval. But actually login credentials required to do these tasks are given by “Career Development System” project which provides facility to register the students and give login credentials to the respective students. And placement of particular student is viewed by concerned authority before granting placement to the student.
1.4 ORGANAIZATION OF DESSERTION:
In the Chapter 2 we are going to explain existing Complaints and grievances Management System is maintained in the form of hard copies. To overcome the problem we are maintaining the complaints online .That is our proposed system. And the Chapter 3 consists of functional requirements, module description, non-functional requirement, performance requirement, design constraints, software and hardware requirements and feasibility study. Chapter 4 describes about diagrams and the table such as DFD,E-R,UML, and all tables which are used in the project. In Chapter 5 it explains about all new technologies that are used such as Hibernates, Struts and Ajax. The Chapter 6 explains about the testing.
2. LITERATURE SURVEY
2.1 EXISTING SYSTEM
The earlier system is not computerized. All transactions in the system are done manually maintaining records. To make this laborious job simple the clients have to computerize the system. The management and all the departments that have been carrying out this job using manually makes the job more complicated and tedious most of the times. So, the best way is computerize computerization of the current environment.
For example, in the earlier system placement officer has to collect student details for placements. Approving those student details takes lot of time. Placement officer and students have to consult each other directly if any information is needed.
Here searching for eligible candidates takes lots of time. And some times some candidates’ details may be missed. It takes so much time for a placement officer to collect students’ details and approving the details provided by them.
2.2DISADVANTAGES OF EXISTING SYSTEM
Poor communication between students and placement officer, so here intimating about new placements is a hard task. Students may not know about company details. Here also poor communication provides a problem.
Candidate may not get required information if concerned TPO is not at the desk.
2.3 PROPOSED SYSTEM WITH FEATURES
The proposed system is fully computerized, which removes all the drawbacks of existing system. Proposed system is an online application that can be accessed throughout the organization and outside as well with proper login provided. This system can be used as an application for the TPO of the college to manage the student information with regards to placement. Students logging should be able to upload their information in the form of a CV. Visitors/Company representatives logging in may also access/search any information put up by Students.
The home page contain various links such as links to login ,various services like events happened, achievements and recruiter details etc., .The administrator will create the users and the users will use the accounts created by administrator. When the user entered into his respective page he has to update his details. And the details are to be approved by the administrator.
Proposed System of ERP
The ERP space in higher education is moving rapidly. The future integration of Internet technologies, ASP hosting services, and expanded ERP systems could help transform the way higher education institutions operate in the 21st century and move closer to realizing the goal of anytime, anywhere computing. Here are some benefits realized by the different User Entities of the Education System through our Education ERP solution.
Benefits for Management
• Easy access of all records at one place
• Channel to interact with staff, teachers, parents, students
• Saving man hours and increasing productivity
• Unhindered, smooth management
Benefits for Faculty
• Manage class reports, attendance, performance
• Making online exams
• Interaction with parents
• Effective planning
• Online projects and forums for students
Benefits for Administration
• Easy access to reports
• Getting accurate and timely data
• Publication & Circulation of reports
• Saving man hours for productive work
Benefits for Students
• Platform to interact
• Share knowledge, experience, views
• Access library
• Online exams
• Participate in projects
• Contribute to school in out of school hours
Benefits for Parents
• Reports & Updates regarding ward
• Effective & Timely communication of school activities
• Knowledge Interaction with other guardians
Quantitative Benefits
• Savings from phased-out legacy systems
• Streamlines Education Processes
• Important Functions
• Increases Productivity and Efficiency
• Big Savings in Person-hours
• Increases Revenue
Qualitative Benefits
• Improves data and process integrity
• Enhances operational security
• Reinforces accountability and transparency
Features
1. End-to-End solution
Whether it's the enrollment of a new student or calculation of salary for the staff, our Education ERP solution provides you a fully integrated end-to-end solution to manage all the functions and activities required for your education institution. It ensures that offices, faculty and students have access to timely and up-to-date information. It manages high volumes of critical information with hundred percent of accuracy helping you to run your institution more smoothly and efficiently. It creates a foundation for new processes that can yield significant returns on investment.
2. N-Tier Architecture
Our Education ERP solution is designed on an N-Tier architecture allowing multiple users to work simultaneously from multiple locations on a single database. This helps in sharing information between different departments and users on a real-time basis.
3. Streamlines Educational process
Our Education ERP solution often prompts significant process reengineering and could breathe life into ineffective and inefficient departments or processes. It helps in proper documentation and standardization of education process by setting up protocols for each and every process. Our solution also provides you an opportunity to correct broken processes and replace them with modern, system-enabled, state-of-the-art business practices. .
4. Automates important functions
Manual work most of the time is not accurate. Whether it's the collection of fees or generating mark-sheets, the information has to be accurate. Our ERP solution automates these critical functions like fee collection, salary computation, time-table, Examination, mark-sheets etc. helping educational institutions to effectively improve productivity, efficiency and accuracy of their entire system.
5. Increases productivity and efficiency of the staff
Automation helps staff to work out things well in time helping them to give more time to take care of the other issues and problems. Our solution helps organizations to handle the same amount of work by less staff thereby allowing the rest of the man power to be deputed in other productive works.
6. Saves lot of Man hours that directly means saving of a lot of money
Automation of various critical tasks such as fee collection, salary management etc saves a lot of man hours that directly reflects to expenditure of the organization.
7. Reduces paper work
Our Education ERP solution has an in-built Document Management System that helps organizations to reduce their paper consumption to a great extent which is not just cost effective but is eco friendly as well. .
8. Strengthens relationship between different user entities
The relationship between various user entities such as Management, Staff, Faculty, Students and Parents plays a vital role in the development of student. Our Education ERP provides an interactive platform for strengthening the relationship. .
9. Completely organizes data with no redundancy
Our ERP solution offers zero redundancy of data for managing the various aspects of your educational business needs. For example, you just need to add the name of student only once and it will automatically appear in rest of the modules like Fee, Courses, Examination, Promotion etc.
10. User Friendly Interfaces
Interfaces of software play an important role to make it successful and a popular solution. Our solution is designed with easy to use, interactive and user friendly interfaces that help non-expert users to perform complex functions without any difficulty.
11. Comprehensive Reporting System
Organizations around the world consider effective reporting system as a vehicle for evaluating and enhancing the performance of the entire system. Thus reports have become the most vital part of any application software. What so ever new features there may be in an application, the end user evaluates the quality of software by its quality of reports.
Our ERP solution offers a powerful mechanism to generate accurate and robust reports with a great deal of flexibility. Whether you want a report for a single student or for the entire institute, it gives you plenty of options and flexibility to generate reports at multiple levels helping you to enhance the performance and productivity of your institution.
12. Advance Printing Options
Our advance printing options gives you the freedom to generate printouts on any size of paper that reduces printing expenses to a great extent.
13. Ensures Data Security
Data Security is also an important factor while designing an ERP solution. Our Education ERP ensures complete security of data. We make sure that the data isn't in the direct access of the users. Various security measures have been implemented to tighten the security at the database level as well as at the application level.
• Login security and single sign-on: Users sign on once within a secure environment and are automatically authenticated for all applications they are allowed to access.
• Security roles and permissions: Users see and access only what their individual roles and permission levels grant them.
• Workflows and approval processes: Workflows and approval processes ensure proper task routing among departments.
14. Easy Centralized Backup Options
Database Backup is the most critical part of any ERP solution. Our ERP comes with easy to manage database-backup system. The database backup and restoration processes both are simple and easy and don't require any database expert to perform these activities.
3. SYSTEM requirements and Analysis
3.1 FUNCTIONAL REQUIREMENTS
A Requirement Specifies a function that a system or component must be able to perform. A requirement of our website is to maintain the details of placement and trainings of the student. As it is an online application, communication with placement officer is easy to students and recruiters, so here intimating about new placements very easy task.
Placement officer can easily collect student’ details, and approve the details provided by them. As it is an online application, communication with placement officer is easy to students and recruiters, so here intimating about new placements very easy task.
Students can know about company details through the details provided by Placement officer and through the websites provided by him at recruiters’ option.Here recruiters can also search for the details provided by students on the basis of their percentage. Placement officer can send required materials used for placements preparation to students. With this option preparation for placements becomes easy.
3.2 NON-FUNCTIONAL REQUIREMENTS.
Non functional requirements are the requirements which are not directly concerned with the specific function delivered by the system. They specify the criteria that can be used to judge the operation of a system rather than specific behaviors. They may relate to emergent system properties such as reliability, response time and store occupancy. Non functional requirements arise through the user needs, because of budget constraints, organizational policies, the need for interoperability with other software and hardware systems or because of external factors such as:-
➢ Product Requirements
➢ Organizational Requirements
➢ User Requirements
Product Requirements
Portability: Since the software is developed in java it can be executed on any platform for which the JVM is available with minor or no modifications.
Correctness: It followed a well-defined set of procedures and rules to compute and also rigorous testing is performed to confirm the correctness of the data. The defined rule has to follow the corresponding technique to encode and decode the data. Once the service provider uses some technique the same technique has to follow in destination also.
Ease of Use: The front end is designed in such a way that it provides an interface which allows the user to interact in an easy manner. The Packeting hiding techniques are easy to use. Because the interfaces designed in such a manner.
Modularity: The complete product is broken up into many modules and well-defined interfaces are developed to explore the benefit of flexibility of the product.
Robustness: This software is being developed in such a way that the overall performance is optimized and the user can expect the results within a limited time with utmost relevancy and correctness. Java itself possesses the feature of robustness, which implies the failure of the system is negligible.
Non functional requirements are also called the qualities of a system. These qualities can be divided into execution quality & evolution quality. Execution qualities are security & usability of the system which are observed during run time, whereas evolution quality involves testability, maintainability, extensibility or scalability.
3.3 PROJECT MODULES:
1. Student module.
2. Administrator module.
3.3.1 Student Module Consist Of Services Like:
Training Events/IT Programs: This service provides the user to registered in Training/workshops/IT Programs
Check details: This service provides the user to check his details.
Drives: This service provides the user to registered in Drives uploaded by administrator
Reports: This service provides the user to view the list of training/ workshops are attended by student.
Media: This service provides the users to view the news articles
3.3.2 Administrator Module Consist Of Services Like:
Student Information: Allows administrator to update Student details and view the current/Alumni details of the student.
Companies/Recruiters: Allows administrator to insert/update /delete the company details and he can also add/update/ the job profiles to company.
Training Events: Allows administrator to add/update /delete the training, workshops and events. Helps the student to registration for Training events
IT Programs: Allows administrator to add /update /IT Programs. Helps the student to registration for IT Program
Drive Events: Allows administrator to add/update /delete the drive events results are send to the student. He can also add the coordinates at the time of drives.
Placements: Allows administrator to add the short list of the students for placement round wise. Administrator can also maintain the details of placement according to college wise/branch wise. Send the placement details to the student
Media: Allows administrator to upload/update/delete articles of the student to media.
Reports: Allows administrator to upload material for students.
Mailing: Allows administrator to reply for the mailing.
3.4 PERFORMANCE REQUIREMENTS
Response Time: When the request is sent by the browser to the server then the time taken to give the response is less.
Quality of Service: The services provided by this project are of high quality.
Accuracy: It returns the accurate result of every student and their leaves.
Capacity: Minimum of 1GB used.
3.6 DESIGN CONSTRAINTS
Web Services Architecture
[pic]
Web Service Flow
[pic]
Web services need the following:
1.SOAP (Simple Object Access Protocol):It is an application level protocol. It determines the request and response format.
2.WSDL (web service Description Language): It is a file saved with “.wsdl”. It contains web service details like name operations supported arguments and return values. It also provides URL to connect to web service.
3.UDDI (Universal Description and Discovery Interface): It is used to discover web services programmatically.
Web Service Development Scenario:
1. Define any java class with business logic methods.
2. Apache access server (or) any server that supports deployment of web services need to be started.
3. Deploy the java class as a web service.
4. The java class object is registered with Axis Servlet (front controller of apache access server).
5. The java developer generates WSDL file using the “java2 WSDL”.
6. The Generated WSDL file is made available to public.
7. A .net developer wants to create Ws client. He has to generate C# interfaces and implementations using tool “WSDL2C#”
Hibernate Architecture
[pic]
Fig no 3.6.1 Hibernate Architecture
STRUTS 2 MVC ARCHITECTURE
[pic]
Fig No:3.6.2 Struts 2 Mvc Architecture
1. The container receives from the web server a request for the resource HelloWorld.action. According to the settings loaded from the web.xml, the container finds that all requests are being routed toorg. Apache .struts2.dispatcher.FilterDispatcher, including the *.action requests. The FilterDispatcher is the entry point into the framework.
2. The framework looks for an action mapping named "HelloWorld", and it finds that this mapping corresponds to the class "HelloWorld". The framework instantiates the Action and calls the Action's execute method.
3. The execute method sets the message and returns SUCCESS. The framework checks the action mapping to see what page to load if SUCCESS is returned. The framework tells the container to render as the response to the request, the resource HelloWorld.jsp.
4. As the page HelloWorld.jsp is being processed, the tag calls the getter getMessage of the HelloWorld Action, and the tag merges into the response the value of the message.
5. A pure HMTL response is sent back to the browser.
3.7 SOFTWARE SPECIFICATION.
Language : Java(JDK 1.6/1.7)
Operating System : Windows XP/7/8
Technologies : Servlet/ JSP
ORM Tool : Hibernate
IDE : NetBeans/Eclipse
Scripting Language : JavaScript
Formatting Language : HTML
Browser : Chrome/Firefox
Client Side Technologies : AJAX
Back End Tools : MySQL
3.8 HARDWARE SPECIFICATION
Processor : Intel Pentium dual core
Hard Disk : 250 GB
Ram : 2GB
Internet : 2Mbps
3.9 FEASIBILITY STUDY
Feasibility study is conducted once the problem is clearly understood. The feasibility study which is a high level capsule version of the entire system analysis and design process. The objective is to determine whether the proposed system is feasible or not and it helps us to the minimum expense of how to solve the problem and to determine, if the Problem is worth solving. The following are the three important tests that have been carried out for feasibility study.
□ ECONOMICAL FEASIBILITY
□ OPERATIONAL FEASIBILITY
□ TECHNICAL FEASIBILITY
3.9.1 Economical Feasibility
As a part of this, the costs and benefits associated with the proposed systems are to be compared. The project is economically feasible only if tangible and intangible benefits outweigh the cost. We can say the proposed system is feasible based on the following grounds.
• The cost of developing the full system is reasonable.
• The cost of hardware and software for the application is less.
3.9.2 Operational Feasibility
The project is operationally feasible because there is sufficient support from the project management and the users of the proposed system .Proposed system definitely does not harm and will not produce the bad results and no problem will arise after implementation of the system.
User-friendly
Customer will use the forms for their various transaction i.e. for adding new routes, viewing the routes details. Also the Customer wants the reports to view the various transactions based on the constraints. These forms and reports are generated as user-friendly to the Client.
Reliability
The package wills pick-up current transactions on line. Regarding the old transactions, User will enter them in to the system.
Security
The web server and database server should be protected from hacking, virus etc.
3.9.3 Technical Feasibility
In the technical feasibility study, one has to test whether the proposed system can be developed using existing technology or not. It is planned to implement the proposed system in JSP. The project entitled is technically feasible because of the following reasons.
• All necessary technology exists to develop the system.
• The existing system is so flexible that it can be developed further.
4. SYSTEM DESIGN
The System Design Document describes the system requirements, operating environment, system and subsystem architecture, files and database design, input formats, output layouts, human-machine interfaces, detailed design, processing logic, and external interfaces.
4.1 DATA FLOW DIAGRAM:
1. The DFD is also called as bubble chart. It is a simple graphical formalism that can be used to represent a system in terms of input data to the system, various processing carried out on this data, and the output data is generated by this system.
2. The data flow diagram (DFD) is one of the most important modeling tools. It is used to model the system components. These components are the system process, the data used by the process, an external entity that interacts with the system and the information flows in the system.
3. DFD shows how the information moves through the system and how it is modified by a series of transformations. It is a graphical technique that depicts information flow and the transformations that are applied as data moves from input to output.
4. DFD is also known as bubble chart. A DFD may be used to represent a system at any level of abstraction. DFD may be partitioned into levels that represent increasing information flow and functional detail.
Notations used in DFD
Element References symbols
Data Flow Process
Process
Data Store
Source link
The context level data flow diagram shown above gives a brief idea about the flow of data should be and it is also shows the control if some data are invalid.
They are represented by:
• Level-0 Data Flow Diagram
• Level-1Data Flow Diagram
Level-0 Data Flow Diagram
[pic]
Fig No 4.1.1 Level-0 Data Flow Diagram
[pic]
Fig No 4.1.2 Level-1 Data Flow Diagram
2. E-R DIAGRAMS
Entity Relationship Diagrams (ERDs) illustrate the logical structure of databases. Entity-relationship model, a graphical representation of entities and their relationships to each other, typically used in computing in regard to the organization of data within databases or information systems. An entity is a piece of data-an object or concept about which data is stored. A relationship is how the data is shared between entities. There are three types of relationships between entities.
[pic]
Fig No 4.2.1 E-R Diagrams
3. Data Dictionary
The most important aspect of the system is data design. The data must be organized according to the system requirements.
The database approach is used to store and organize the data in developing the system. The database is an integrated collection of data stored in different types of tables. Some general objectives in establishing a database are as follows:
• Integrating all data
• Incorporates updating easily
• Provide data security from unauthorized users
4.3.1 Calendar Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |calendar_id |varchar |
|2 |Name |varchar |
|3 |Type |varchar |
|4 |Degreetype |varchar |
|5 |Branch |varchar |
|6 |course_id |varchar |
|7 |Desc |varchar |
|8 |Enable |varchar |
|9 |revised_status |varchar |
4.3.2 Event Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |event_id |varchar |
|2 |calendar_id |varchar |
|3 |Startdate |varchar |
|4 |Enddate |varchar |
|5 |Eventname |varchar |
|6 |Eventtype |varchar |
|7 |Eventcategory |varchar |
|8 |Noofweeksndays |varchar |
|9 |Desc |varchar |
4.3.3 Events Specification Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |event_id |varchar |
|2 |event_url |varchar |
|3 |event_participation_type |varchar |
|4 |Noofdays |varchar |
|5 |poster_release_date |varchar |
|6 |reg_start date |varchar |
|7 |reg_end_date |varchar |
|8 |reg_fee |varchar |
|9 |comp_id |varchar |
|10 |accom_provision |varchar |
|11 |accom_fee |varchar |
| |
|4.3.4EventRegistrationTable: |
|S.No |FIELD NAME |DATA TYPE |
|1 |event_rid |varchar |
|2 |Htno |varchar |
|3 |Name |varchar |
|4 |Mobile |varchar |
|5 |Email |varchar |
|6 |college_name |varchar |
|7 |Address |varchar |
|8 |fee_status |varchar |
|9 |it_pid |varchar |
| |
| |
|4.3.5 Event_Personel Table: |
|S.No |FIELD NAME |DATA TYPE |
|1 |event_id |varchar |
|2 |person_name |varchar |
|3 |Desig |varchar |
|4 |Branch |varchar |
|5 |Section |varchar |
|6 |Batch |varchar |
|7 |contactno1 |varchar |
|8 |contactno1 |varchar |
|9 |Email |varchar |
|10 |Order |varchar |
| |
|4.3.6 Companies Table: |
| |
|S.No |FIELD NAME |DATA TYPE |
|1 |comp_id |varchar |
|2 |Name |varchar |
|3 |Desc |varchar |
|4 |hr_name |varchar |
|5 |Mobile |varchar |
|6 |Email |Varchar |
| |
| |
| |
| |
| |
| |
|4.3.7 Job Profile Table: |
| |
|S.No |FIELD NAME |DATA TYPE |
|1 |job_id |varchar |
|2 |Name |varchar |
|3 |Type |varchar |
|4 |Category |varchar |
|5 |comp_id |varchar |
|6 |Desc |varchar |
|7 |eligibility_criteria |varchar |
|8 |ssc_cutoff |varchar |
|9 |inter_cutof |varchar |
|10 |degree_cutoff |varchar |
|11 |pg_cutoff |varchar |
|12 |no_of_backlogs |varchar |
|13 |training_location |varchar |
|14 |other_inf |varchar |
|15 |no_of_rounds |varchar |
|16 |selection_criteria |varchar |
|17 |payment_scale |varchar |
4.3.8 Job Location Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |job_id |varchar |
|2 |Location |varchar |
|3 |Address |varchar |
8.3.9 IT Programs Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |it_pid |varchar |
|2 |Name |varchar |
|3 |Desc |varchar |
|4 |spoc_name |varchar |
|5 |Contact |varchar |
|6 |Email |varchar |
4.3.10 Placements Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |Tid |varchar |
|2 |Timestamp |varchar |
|3 |Htno |varchar |
|4 |job_id |varchar |
|5 |Comp id |varchar |
|6 |Round |varchar |
|7 |round_name |varchar |
|8 |Status |varchar |
4.3.11 Up Load Category Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |Ucid |varchar |
|2 |cat_name |varchar |
|3 |Filetype |varchar |
|4 |Uploadto |varchar |
4.3.12 Up Loads Table:
|S.No |FIELD NAME |DATA TYPE |
|1 |Tid |varchar |
|2 |Timestamp |varchar |
|3 |File name |varchar |
|4 |Title |varchar |
|5 |Desc |varchar |
|6 |Ucid |varchar |
|7 |Filepath |varchar |
|8 |user_id |varchar |
|9 |Role |varchar |
4. UML DIAGRAMS:
UML stands for Unified Modeling Language. UML is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created by, the Object Management Group.
The goal is for UML to become a common language for creating models of object oriented computer software. In its current form UML is comprised of two major components: a Meta-model and a notation. In the future, some form of method or process may also be added to; or associated with, UML.
The Unified Modeling Language is a standard language for specifying, Visualization, Constructing and documenting the artifacts of software system, as well as for business modeling and other non-software systems.
The UML represents a collection of best engineering practices that have proven successful in the modeling of large and complex systems.
The UML is a very important part of developing objects oriented software and the software development process. The UML uses mostly graphical notations to express the design of software projects.
GOALS:
The Primary goals in the design of the UML are as follows:
1. Provide users a ready-to-use, expressive visual modeling Language so that they can develop and exchange meaningful models.
2. Provide extendibility and specialization mechanisms to extend the core concepts.
3. Be independent of particular programming languages and development process.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of OO tools market.
6. Support higher level development concepts such as collaborations, frameworks, patterns and components.
7. Integrate best practices.
4.4.1 USECASE:
A use case diagram in the Unified Modeling Language (UML) is a type of behavioral diagram defined by and created from a Use-case analysis. Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors, their goals (represented as use cases), and any dependencies between those use cases. The main purpose of a use case diagram is to show what system functions are performed for which actor. Roles of the actors in the system can be depicted.
4.4.1.1 Admin
[pic]
Fig No 4.4.1.1 Admin Use Case Diagram
4.4.1.2 Student:
[pic]
Fig No 4.4.1.2 Student Use Case Diagram
4.4.2 Class Diagram:
In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the relationships among the classes. It explains which class contains information.
[pic]
Fig No 4.4.2 Class Diagram
4.4.3 Sequence Diagram:
A sequence diagram in Unified Modeling Language (UML) is a kind of interaction diagram that shows how processes operate with one another and in what order. It is a construct of a Message Sequence Chart. Sequence diagrams are sometimes called event diagrams, event scenarios, and timing diagrams.
4.4.3.1.Admin:
[pic]
Fig No 4.4.3 Admin Sequence Diagram
4.4.3.1 Student:
[pic]
Fig No 4.4.3.2 Student Sequence Diagram
4.4.4 Collaboration Diagrams.
4.4.4.1 Admin:
[pic]
Fig no 4.4.4.1.1collaboration for Admin
4.4.4.2 Student
[pic]
Fig no 4.4.4.2.1collaboration for Student
4.4.5 Activity Diagram:
Activity diagrams are graphical representations of workflows of stepwise activities and actions with support for choice, iteration and concurrency. In the Unified Modeling Language, activity diagrams can be used to describe the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control.
[pic]
Fig No 4.4.5 Activity Diagram
4.4.6 State chart diagram:
4.4.6.1.Admin:
[pic]
Fig No 4.4.6.1.Admin State Chart Diagram
4.4.6.2.Student:
[pic]
Fig no 4.4.6.2.Student State chart Diagram
4.4.7 Component diagram:
[pic]
Fig no 4.4.7.1 Component Diagram
4.4.8 Deployment diagram:
[pic]
Fig No 4.4.8 Deployment Diagram
5.SYSTEM IMPLEMENTATION
5.1 DEVELOMENT ENVIRONMENT
STRUTS 2
Struts 2 is a brand new, state of the art web application framework. As we said earlier, Struts 2 is not just a new release of the older Struts 1 framework. It is a completely new framework, based on the architecturally esteemed Web Work framework. By now you should be pretty tuned in to what a web application framework should offer. In terms of the common domain tasks, Struts 2 covers the domain quite well. It handles all of the tasks we have identified, and more. During the course of the book, you will learn how to work with the features that address each of those tasks in turn. At the introductory stage of things, it makes more sense to focus on the architectural aspects of the framework. So in this section, we will see how Struts 2 structures the web application workflow. In the next few sections, we will look at the design pattern roots of Struts 2, see how those roots influence the high level architecture, and take a slightly more detailed look at how the framework handles actual request processing. Struts 2 are a second generation web application framework that implements the Model-View-Controller (MVC) design pattern. Struts 2 is built from the ground up on best practices and proven, community accepted design patterns. This was true for the first version of Struts as well. In fact, one of the primary goals of the first Struts was the incorporation of the Model-View- Controller (MVC) pattern into a web application framework. This was, of course, a critical step in the evolution of well designed web applications as it provided the infrastructure for making the MVC separation of concerns an easily achieved goal. This allowed developers, with little resources for such architectural niceties, to tap into a readymade best practice solution. Struts 1 can certainly claim responsibility for many of the more well designed web applications of the last ten years. At some point, the Struts community became aware of the limitations in the first framework. With such an active community, identification of the weak and inflexible points in the framework was not hard to accomplish. Struts 2 takes advantage of the many lessons learned to present a cleaner implementation of MVC. At the same time, it introduces several new architectural features that make the framework cleaner and more flexible. These new features include such things as interceptors for layering cross cutting concerns away from action logic, annotation based configuration to reduce class path pollution, a powerful expression language OGNL that transverses the entire framework, and a mini-MVC based tag API that supports modifiable and re-usable UI Components. At this point, it's pretty much impossible to do more than namedrop. We will have plenty of time in the book to fully explore each of these features. We really need to start with a high level overview of the framework. First, we'll look at how Struts 2 implements MVC. Then, we'll look at the actual parts of the framework work together when processing a request. The Value Stack and OGNL While interceptors may not absorb a lot of your daily development energies, the Value Stack and OGNL will be constantly on your mind. In a nutshell, the Value Stack is simply a storage area that holds the entire application domain data associated with the processing of a request. You could think of it as a piece of scratch paper where the framework does its data work while solving the problems of request processing. In short, OGNL is an expression language that allows you to reference and manipulate the data on the Value Stack. Developers new to Struts 2 probably ask more questions about the Value Stack and OGNL than anything else. If you are coming from Struts 1, these are certainly a couple of the more exotic features of the new framework. Due to this, and the sheer importance of this duo, we will carefully treat them throughout the book. In particular, Chapter Five and Chapter Six describe the detailed function of these two framework components.
5.1.2 HIBERNATE
Working with object-oriented software and a relational database can be cumbersome and time consuming in today's enterprise environments. Hibernate is an object/relational mapping tool for Java environments. The term object/relational mapping (ORM) refers to the technique of mapping a data representation from an object model to a relational data model with a SQL-based schema.
Hibernate not only takes care of the mapping from Java classes to database tables (and from Java data types to SQL data types), but also provides data query and retrieval facilities and can significantly reduce development time otherwise spent with manual data handling in SQL and JDBC.
Hibernates goal is to relieve the developer from 95 percent of common data persistence related programming tasks. Hibernate may not be the best solution for data-centric applications that only use stored-procedures to implement the business logic in the database, it is most useful with object-oriented domain models and business logic in the Java-based middle-tier. However, Hibernate can certainly help you to remove or encapsulate vendor-specific SQL code and will help with the common task of result set translation from a tabular representation to a graph of objects.
We now have a persistent class and its mapping file in place. It is time to configure Hibernate. Before we do this, we will need a database. HSQL DB, a java-based SQL DBMS, can be downloaded from the HSQL DB website. Actually, you only need the hsqldb.jar from this download. Place this file in the lib/ directory of the development folder.
Create a directory called data in the root of the development directory - this is where HSQL DB will store its data files. Now start the database by running java class path ../lib/hsqldb.jar org.hsqldb.Server in this data directory. You can see it start up and bind to a TCP/IP socket, this is where our application will conIntroduction to Hibernate next later. If you want to start with a fresh database during this tutorial, shutdown HSQL DB (press CTRL + C in the window), delete all files in the data/ directory, and start HSQL DB again. Hibernate is the layer in your application which connects to this database, so it needs connection information. The connections are made through a JDBC connection pool, which we also have to configure. The Hibernate distribution contains several open source JDBC connection pooling tools, but will use the Hibernate built-in connection pool for this tutorial. Note that you have to copy the required library into your class path and use different connection pooling settings if you want to use a production-quality third party JDBC pooling software
Note that this XML configuration uses a different DTD. We configure Hibernate's SessionFactory - a global factory responsible for a particular database. If you have several databases, use several configurations, usually in several configuration files (for easier startup). The first four property elements contain the necessary configuration for the JDBC connection. The dialect property element specifies the particular SQL variant Hibernate generates. Hibernate's automatic session management for persistence contexts will come in handy as you will soon see. The hbm2ddl.auto option turns on automatic generation of database schemas - directly into the database. This can of course also be turned off (by removing the config option) or redirected to a file with the help of the SchemaExport Ant task. Finally, we add the mapping file(s) for persistent classes to the configuration.
A Session begins when it is first needed, when the first call to getCurrentSession() is made. It is then bound Introduction to Hibernate by Hibernate to the current thread. When the transaction ends, either through commit or rollback, Hibernate automatically unbinds the Session from the thread and closes it for you. If you call getCurrentSession() again, you get a new Session and can start a new unit of work. This thread-bound programming model is the most popular way of using Hibernate, as it allows flexible layering of your code (transaction demarcation code can be separated from data access code, we'll do this later in this tutorial). Related to the unit of work scope, should the Hibernate Session be used to execute one or several database operations? The above example uses one Session for one operation. This is pure coincidence, the example is just not complex enough to show any other approach. The scope of a Hibernate Session is flexible but you should never design your application to use a new Hibernate Session for every database operation. So even if you see it a few more times in the following (very trivial) examples, consider session-per-operation an anti-pattern. A real (web) application is shown later in this tutorial.
5.1.3 AJAX
AJAX tutorial covers concepts and examples of AJAX technology for beginners and professionals. AJAX is an acronym for Asynchronous JavaScript and XML. It is a group of inter-related technologies like javascript, dom, xml, html, css etc. AJAX allows you to send and receive data asynchronously without reloading the web page. So it is fast. AJAX allows you to send only important information to the server not the entire page. So only valuable data from the client side is routed to the server side. It makes your application interactive and faster. Before understanding AJAX, let’s understand classic web application model and ajax web application model first. A synchronous request blocks the client until operation completes i.e. browser is not unresponsive. In such case, javascript engine of the browser is blocked. full page is refreshed at request time and user is blocked until request completes Let's understand it another way. An asynchronous request doesn’t block the client i.e. browser is responsive. At that time, user can perform another operations also. In such case, javascript engine of the browser is not blocked. As you can see in the above image, full page is not refreshed at request time and user gets response from the ajax engine. Let's try to understand asynchronous communication by the image given below.
An object of XMLHttpRequest is used for asynchronous communication between client and server. It performs following operations:
1. Sends data from the client in the background
2. Receives the data from the server
3. Updates the webpage without reloading it.
As you can see in the above example, XMLHttpRequest object plays a important role.
1. User sends a request from the UI and a javascript call goes to XMLHttpRequest object.
2. HTTP Request is sent to the server by XMLHttpRequest object.
3. Server interacts with the database using JSP, PHP, Servlet, etc.
4. Data is retrieved.
5. Server sends XML data or JSON data to the XMLHttpRequest callback function.
6. HTML and CSS data is displayed on the browser.
5.1.4 WEB RESOURCES
5.1.4.1 JSP
JSP means Java Server Page.JSP is the technology for dynamic content presentation.
• JSP is a web page saves by .jsp extension.
• JSP page are best used for the presentation.
• JSP pages can have two kinds of elements
i) Template Text(Static content)
ii) JSP elements(Dynamic content
5.1.4.2 HTML
HTML means Hyper Text Markup Language.HTML is the technology for dynamic content presentation.
• A markup language is a set of markup tags
• HTML documents are described by HTML tags
• Each HTML tag describes different document content
• HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded and can be used to create interactive forms. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts written in languages such as JavaScript which affect the behavior of HTML web pages.
5.1.4.3 NET BEANS:
Net Beans IDE
Net Beans IDE is a free, open source, integrated development environment (IDE) that enables you to develop desktop, mobile and web applications. The IDE supports application development in various languages, including Java, HTML5, PHP and C++.
The IDE provides integrated support for the complete development cycle, from project creation through debugging, profiling and deployment. The IDE runs on Windows ,Linux, Mac OS X, and other UNIX-based systems.
The IDE provides comprehensive support for JDK 7 technologies and the most recent java enhancements. It is the first IDE that provides support for JDK 7, Java EE 7, and Java FX 2. The IDE fully supports Java EE using the latest standards for Java, XML,Web services, and SQL and fully supports the Glassfish Server, the reference implementation of Java EE.
Developing Web Applications:
A web application is an application written for the Internet, including those built with Java technologies such as Java Server Pages and servlets, as well as those built with non-Java technologies such as CGI and Perl. Web Applications often include frameworks such as Java Server Faces, spring, Hibernate, and Struts.
You can create a web application by writing and editing Java source code in the Source Editor. Configure the application yourself. Add the Java Server Faces, Struts, or Spring Web framework to improve the design of your application.
A web application roughly corresponds to the J2EE term web application module. This is a deployable unit that consists of one or more web components, other resources, and web application deployment descriptors, contained in a hierarchy of directories and files in a standard web application format.
The following steps outline the basic process of working with web applications:
1. Create a project.
a. Register the target server for your application
b. Create the project using the best template for your programming needs.
While creating the project, you can let the IDE include libraries and configuration files for Java Server Faces, Struts, or spring.
c. Configure the class path for the project. You can add a JAR file, a library, or an IDE project to the class path.
2. Create web components.
a. Choose File > New File or right-click any project and choose New > Other.
b. Under Categories, select Web. Under File Type, select the web component that you would like to create.
c. Click next and follow the instructions in the wizard.
3. Edit web components.
a. In the Projects window or Files window, double-click the web component that you would like to edit.
b. Use the Source Editor to edit the web component.
4. (Optional) Connect to database.
a. If the database connection is not visible in the right-click the Databases node and choose New Connection, then add the database connection in the New Database Connection dialog box.
b. If the database node is broken, right-click the node and choose Connect, and
Then connect to the database.
5. Deploy and run application.
Choose Run > Run Project or right-click the project and choose Run. The project is compiled , and new and changed files are copied from the project's build directory to the WAR's deployment directory. The deployed application then opens in a browser.
6. Debug web application.
a. Set breakpoints or watches in your code.
b. Right-click the project node in the Projects window and choose Debug.
Alternatively, set the project as the main project and choose Debug > Debug
Main Project.
You can also attach a running process to the debugger.
c. Step through the program execution.
d. Choose Debug > Finish Debugger Session when you are finished debugging.
5.1.4.4 MYSQL:
MYSQL is a fast, easy-to-use RDBMS being used for many small and big businesses. MYSQL is developed, marketed, and supported by MYSQL AB, which is a Swedish company. MYSQL is becoming so popular because of many good reasons: MYSQL is released under an open-source license. So you have nothing to pay to use it. MYSQL is a very powerful program in its own right. It handles a large subset of the functionality of the most expensive and powerful database packages. MYSQL uses a standard form of the well-known SQL data language. MYSQL works on many operating systems and with many languages including PHP, PERL, C, C++, and JAVA, etc. MYSQL works very quickly and works well even with large data sets. MYSQL is very friendly to PHP, the most appreciated language for web development. MYSQL supports large databases, up to 50 million rows or more in a table. The default file size limit for a table is 4GB, but you can increase this (if your operating system can handle it) to a theoretical limit of 8 million terabytes (TB). MYSQL is customizable. The open-source GPL license allows programmers to modify the MYSQL software to fit their own specific environments.
Installing MYSQL on Windows:
Default installation on any version of Windows is now much easier than it used to be, as MYSQL now comes neatly packaged with an installer. Simply download the installer package, unzip it anywhere, and run setup.exe. Default installer setup.exe will walk you through the trivial process and by default will install everything under C:\mysql. Test the server by firing it up from the command prompt the first time. Go to the location of the Mysql d server which is probably C:\mysql\bin, and type: mysqld.exe --console NOTE: If you are on NT, then you will have to use mysqld-nt.exe instead of mysqld.exe If all went well, you will see some messages about start up and Inno DB. If not, you may have a permissions issue. Make sure that the directory that holds your data is accessible to whatever user (probably Mysql) the database processes run under. MYSQL will not add itself to the start menu, and there is no particularly nice GUI way to stop the server either. Therefore, if you tend to start the server by double clicking the Mysql d executable, you should remember to halt the process by hand by using Mysql admin, Task List, Task Manager, or other Windows specific means.: Verifying MYSQL Installation: After MYSQL has been successfully installed, the base tables have been initialized, and the server has been started, you can verify that all is working as it should via some simple tests Utility to Obtain Server Status: Use the Mysql admin binary to check server version. This binary would be available in /user/bin on Linux and in C:\mysql\bin on windows. [root@host]# Mysql admin --version It will produce the following result on Linux. It may vary depending on your installation: Mysql admin Ver 8.23 Disturb 5.0.9-0.
If you do not get such message, then there may be some problem in your installation and you would need some help to fix it. Execute simple SQL commands using MYSQL commands using MYSQL Client: Execute simple SQL commands using MYSQL Client: You can connect to your MYSQL server by using MYSQL client using Mysql command. At this moment, you do not need to give any password as by default it will be set to blank.
6 MODULE IMPLEMENTATION WITH EXPLANATIONS AND ALGORITHMS
Issue Companies Action.java.code
package in.ac.scce.erp.cds1.action;
import static com.opensymphony.xwork2.Action.SUCCESS;
import in.ac.scce.erp.cert1.dao.IssueCompaniesDao;
import in.ac.scce.erp.cert1.pojo.IssueCompaniesLogs;
import java.util.Data;
public class IssueCompaniesAction {
private int compId;
private String name;
private String desc;
private String hrname;
private Integer mobile;
private String email;
public int getcompId () {
return compId;
}
public void setcompId (int compId) {
this. compId = compId;
}
public String getName() {
return status;
}
public void setName (String Name) {
this. Name = Name;
}
public String getDesc() {
return Desc;
}
public void set Desc (String Desc) {
this. Desc = Desc;
}
public String getHrName() {
return HrName;
}
public void setHrName (String HrName) {
this. HrName= HrName;
}
public String getMobile() {
return Mobile;
}
public void setMobile (String Mobile) {
this. Mobile = Mobile;
}
public String getEmail() {
return email;
}
public void setEmail (String email) {
this. email = email;
}
private IssueCompniesDao gbService = new IssueCompaniesDao();
public String execute() {
try {
gbService.insert(new IssueCompaniesLogs(getCompId(), getName(), getDesc(), getHrName(), getMobile(), getEmail()));
//messages = gbService.getAllEntries();
} catch (Exception e) {
}
return SUCCESS;
}
}
Issue Companiesdao Code
package in.ac.scce.erp.cds.dao;
import in.ac.scce.erp.cds.panies;
import in.ac.scce.erp.util.HibernateUtil;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class CompaniesHibDao {
public void insert(Companies gb) {
Session session = HibernateUtil.getSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
session.save(gb);
mit();
} catch (RuntimeException e) {
if (gb != null)
tx.rollback();
throw e;
}
finally {
session.close();
}
}
}
7.SYSTEM TESTING
7.1 BLACK BOX TESTING:
Black Box Testing is testing the software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as specification or requirements document, such as specification or requirements document. It is a testing in which the software under test is treated, as a black box .you cannot “see” into it. The test provides inputs and responds to outputs without considering how the software works.
Black box testing is performed only after the specifications are written. It is different from glass-box or white box testing. Different methods used to perform black box testing are as follows:
• Expected Inputs
• Boundary Values
7.2 WHITE BOX TESTING
White box testing deals with the internal logic and structure of the program code. In White Box testing, test cases are derived based on the knowledge of software structure and its implementation. The tester can analyze the code and make use of the knowledge about the structure to derive test data. Using white-box testing, the tester can detect which module or unit is not functioning properly, this test is performed depending on the knowledge of “how” the system is implemented. White box tests can analyze data flow, control flow, information flow, exception and error handling techniques. These techniques are used to test the behavior of software.
[pic]
A tester should have explicit knowledge about the internal working of the system being tested. Branch testing and path testing are the techniques used in white box testing. If the implementation details are changed, the tests should also be modified. The different methods used to perform white-box testing are as follows,
7.3 UNIT TESTING
Unit testing involves the design of test cases that validate that the internal program logic is functioning properly, and that program inputs produce valid outputs. All decision branches and internal code flow should be validated. It is the testing of individual software units of the application .it is done after the completion of an individual unit before integration. This is a structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform basic tests at component level and test a specific business process, application, and/or system configuration. Unit tests ensure that each unique path of a business process performs accurately to the documented specifications and contains clearly defined inputs and expected results.
Unit testing is usually conducted as part of a combined code and unit test phase of the software lifecycle, although it is not uncommon for coding and unit testing to be conducted as two distinct phases.
7.4 INTEGRATION TESTING
Integration is a process of combining smaller components to produce larger components. Integration testing is performed when the individual components undergo component testing successfully. But when components are integrated, component testing is either incorrect or inconsistent. It also ensures that that each individual component behaves as per the specifications that are defined during test design. The main purpose of integration testing is to be detecting the inconsistencies between these components. Some of the situations where inconsistency arises are as follows:
• When there is an improper call or return statement.
• When there is an inconsistent standard for data validation.
• When an inconsistent method is used for handling the data objects.
Thus, the administrator module and various visa immigration modules are tested here.
7.6 SYSTEMS TESTING
The third level of testing includes systems testing. Systems testing verify that the system performs the business functions while meeting the specified performance requirements. It is performed by a team consisting of software technicians and users. It uses the Systems Requirements document, the System Architectural Design and Detailed Design Documents, and the Information Systems Department standards as its sources. Documentation is recorded and saved for systems testing.
System testing is done either on the whole system that is integrated or only on the important parts of the system. During the test design, it ensures the system’s behavior as per the requirements specification. Testing is performed on the following
Features like accountability, security, performance, sensitivity, configuration, start-up and recovery.
System testing is the most extensive testing of the system. It requires more manpower and machine processing time than any other testing level. It is therefore the most expensive testing level. It is critical process in the system development. It verifies that the system performs the business requirements accurately, completely, and within the required performance limits. It must be thorough, controlled and managed.
.
8.SCREENS/REPORTS/RESULTS
8.1 LOGIN PAGE:
[pic]
8.2 COMPANIES PAGE:
[pic]
8.3 CALENDAR PAGE:
[pic]
8.4 EVENTS PAGE:
[pic]
8.5 EVENT SPECIFICATION PAGE: [pic]
8.6 EVENT REGISTRATION PAGE:
[pic]
8.7 EVENTS PERSONAL PAGE:
[pic]
8.8 JOB LOCATION PAGE:
[pic]
8.9 IT PROGRAMS PAGE:
[pic]
8.10 UPLOAD CATEGORY PAGE:
[pic]
8.11 UP LOADS PAGE:
[pic]
8.12 SEARCH PAGE:
[pic]
CONCLUSION & FUTURE ENHANCEMENT
This project provides a facility of maintaining the details of the students, and gets the requested list of candidates for the companies who would like to recruit the people based on a given query
Career Development System is in web application in Future we can develop in mobile Application
Career Development System is applicable in any Colleges who would like to do the work
REFERENCES
scce.ac.in
w3schools
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related searches
- national academy of engineering nae
- national academy of engineering members
- national academy of engineering website
- show password of wifi i m connected to
- journal of engineering sciences
- list of engineering softwares
- properties of engineering materials pdf
- fundamentals of engineering economics pdf
- types of engineering jobs
- doctor of engineering vs phd
- instead of saying i m sorry
- college of engineering uw madison