Professional Documents
Culture Documents
Shiu Project
Shiu Project
ON
RESOURCE
MANAGEMENT SYSTEM
For the partial fulfillment of the requirement for
degree of
BACHELOR OF TECHNOLOGY
FROM
SUBMITTED BY:
RAHUL MUKHIJA
191/CS/07
1
CERTIFICATE
Mr. G SRIDHAR
2
ACKNOWLEDGEMENT
3
Table of Contents
1. Profile of the Problem
Introduction
2. Existing System
Whats new in the system to be developed
Proposed system with objectives
Software System Attributes
Acceptance Criteria
3. Problem Analysis 18
Product Definition, Acronyms and Abbreviations
Feasibility Study
What are the users demonstrable needs?
How can the problem be redefined?
4
External Interface Requirements
Technical Requirements
Hardware Requirements
Software Requirements
Technologies Used
General Description
User Personas and Characteristics
Product Perspective
Overview of Functionality
Functionality
5. Design
6. Diagrams
8. Testing
Testing Objectives
Levels of Testing
Unit Testing
Integration Testing
System Testing
Acceptance Testing
White Box Testing
Black Box Testing
Test Cases
9. Implementation
Training
Conversation Plan
Competitive Examination System Group
5
Post Implementation
10.User Manual
11.Future Enhancement
12.Conclusion
13.Bibliography
6
Profile of the Problem
INTRODUCTION
The main aim of the project is to develop a Resource Module for the Intranet
Automation of resource Software. It has an Intranet through which all the
employees in the company will be knit together. It has different modules such as
Resource Management, adding new employee, administrators task, project
managers task etc., connecting the employees in the company.
Resource Module is the Intranet in which all the information regarding the
employees in the company will be present. The module has been developed with
good Interaction / communication facilities between the employees and
Administrator.
Web based applications have evolved significantly over recent years and with
improvements in security and technology there are plenty of scenarios where
traditional software based applications and systems could be improved by
migrating them to a web based application.
Below are some of the core benefits of web-based applications.
Most web-based applications are far more compatible across platforms than
traditional installed software. Typically, the minimum requirement would be a web
7
browser like Internet Explorer, Fire fox, Netscape etc. These web browsers are
available for a multitude of operating systems and so whether you use Windows,
Linux, or Mac OS you can still run the web application.
More manageable
Web based systems need only be installed on the server placing minimal
requirements on the end user workstation. This makes maintaining and updating
the system much simpler as usually it can all be done on the server. Any client
updates can be deployed via the web server with relative ease.
Highly deployable
Due to the manageability and cross platform, support deploying web applications
to the end user is far easier. They are also ideal where bandwidth is limited and the
system and data is remote to the user.
Typically, in larger systems those are more complex data is stored and moved
around separate systems and data sources. In web-based systems, these systems
and processes can often be consolidated reducing the need to move data around.
Web based applications also provide an added layer of security by removing the
need for the user to have access to the data and back end servers.
Reduced costs
Web based applications can dramatically lower costs due to reduced support and
maintenance, lower requirements on the end user system and simplified
architecture.
By further streamlining your business operations because of your web, based
application additional savings can often be found.
Existing System
8
Automation of Resource Software has implemented different modules such as
Library
Project Management
Marketing
PROPOSED SYSTEM
Decision in assigning proper skillful hands for the project is an important issue in
Resource Module. The Resource Administrator should report with the personal
holding the necessary skills required for the project assignment. The decision in
making analysis about the employees skills is a prime important before booting in.
The proposed system of Resource Module is the right software to be incorporated
into the Automation of Resource Software for helping the organization needs with
respect to skillful Resource. The Proposed system provides detail general
information about the employee along with Educational, Certification, skill and
project details. It enhances the HR Management in adding, viewing and updating
employees details and generates various reports regarding employees skill and
experience.
9
Software System Attributes
Usability:
The links are provided for each form. The user is facilitated to view and make
entries in the forms. Validations are provided in each field to avoid inconsistent or
invalid entry in the databases. Some forms consists Hyper Links, which provides
further details. Reports screen contains text boxes and drop down lists, so that
reports can be produced.
Security:
Application will allow only valid users to access the system. Access to any
application resource will depend upon users designation. There are four types of
users namely Administrator and employee, HR manager and project manager.
Security is based upon the individual user ID and Password.
Maintainability:
The installation and operation manual of resource management system will be
provided to the user.
Portability:
The application is developed in JAVA. It would be portable to other operating
system provided .NET Framework is available for the OS.
Acceptance Criteria
The software should meet the functional requirement and perform the functionality
effectively and efficiently.
10
Problem Analysis
Product Definition, Acronyms and Abbreviations
JSP: Java Server Pages .It enables developer to directly insert java codes into jsp
files and helps in developing dynamic websites.
11
Feasibility Study
Depending on the results of initial investigation the survey is expanded to more
detailed feasibility study. The objective of feasibility study is not to solve the
problem but to acquire a sense of its scope during the study the problem definition
is crystallized and aspects of the problem to be included in the system are
determined. Consequently, costs and benefits are determined with greater accuracy.
Types of Feasibility
There are various measures of feasibility that helps to decide whether a particular
project is feasible or not. These measures include-
Technical Feasibility
Operational Feasibility
Economical and Financial Feasibility
12
It involve estimating cost and benefits that can be tangible and intangible because
of confusing between the types of costs it is sometimes very difficult to divide the
benefits out weight the cost.
Cost:
The cost required in the proposed system is comparatively less to the existing
system.
Effort:
Compared to the existing system the proposed system will provide a better
working environment in which their will be ease of work and the effort required
will be comparatively less than the existing system.
Time:
Record finding and updating will take less time than the existing system.
Employee:
In the existing system employee has all the required technical skills.
13
Software Requirement Analysis
Overview/Introduction
Its a system which enables efficient and effective management of resources in an
organization.
Its an intranet in which all the information regarding employees is present.
Purpose
Its a system which enables efficient and effective management of resources
in an organization.
Its an intranet in which all the information regarding employees are present.
Its an organization specific i.e., for an IT organization.
Scope
1. Administrator
2. Project Manager
3. Employee
4. HR Manager
14
ABBREVIATIONS AND DEFINITION
HTML: Hypertext Markup Language is a markup language used to design
static web pages.
JSP: Java Server Pages .It enables developer to directly insert java codes
into jsp files and helps in developing dynamic websites.
Info- Information.
Database:- Oracle10g (using JDBC type 4): The JDBC type 4 driver, also
known as the Direct to Database Pure Java Driver, is a database driver
implementation that converts JDBC calls directly into a vendor-specific
database protocol. Written completely in Java, type 4 drivers are thus
platform independent. They install inside the Java Virtual Machine of the
client. This provides better performance than the type 1 and type 2 drivers as
it does not have the overhead of conversion of calls into ODBC or database
API calls. Unlike the type 3 drivers, it does not need associated software to
work. As the database protocol is vendor-specific, the JDBC client requires
separate drivers, usually vendor-supplied, to connect to different types of
databases.
15
Problem/Need
In an IT company, to reduce human efforts in assigning the resources to a project.
To get all the relevant information about the resources in one system. Problems in
existing system
Does not include information regarding employee specialization, skills, and
experiences.
Solution/Approach
System is organization specific.
Scope
Scope of this project is very broad
Few of them are:
Can be used anywhere any time as it is a web based application (user Location
doesnt matter).
16
Purpose
The main aim of the project is to develop a Resource Module for the Intranet
Automation of Resource Software. NTPC is one of the premium offshore
companies in developing quality software. It has an Intranet through which all
the employees in the company will be knit together. It has different modules
such as Recruitment, Project Management, and Project Detail updation etc.,
connecting the employees in the company.
Resource Module in the Intranet in which all the information regarding the
employees in the company will be present.
17
Assumptions, Dependencies, Constraints
Foundation & Impact
Assumptions
The project can be failed due to lack of bandwidth available and other
hardware issues like failure of web server, failure of network.
The project can be affected, if properly backup have not taken time to time.
The project can be affected, if any specific data requirements are not provided
to developers.
Dependencies
The project will depend upon good and attractive marketing policies so that
people must use it.
The project depends upon provision web server and good bandwidth Internet.
18
The execution of project is depends upon well normalized database
management system.
The database can be limited (in means of storage) if not properly handled.
The requirements may gradually change by client. Those are not part of
original requirements.
Pool of random questions is maintained for the various subjects with varying
levels of difficulty.
19
Logical Data Requirements
To develop this project, Developer requires different types of data which will be
mentioned in Design document.
Performance Requirements
Normalized Database
Documentation
Rugged Testing
Quality Requirements
The Quality of System will be determined and analyzed using various factors:
Conformance to requirements
Scalability
Correctness
Completeness
Absence of Bugs
Fault Tolerance
Extensibility
Maintainability
20
Absence of Bugs
Documentation
Readability
Low complexity
Well Documented
We will support and test this product on two major web browsers: Microsoft
Internet Explorer and Mozilla Firefox. The user will login to perform the various
tasks. All information will be stored in a database on a server. The users will be
able to perform their various roles within this setting. All information will be sent
over the web to the server where it will be stored and processed.
21
Technical Requirements
Hardware Requirements
processor:233 MHz
DEVELOPER SIDE
RAM:256 MB
Processor:400MHz
Harddisk:40 GB
Software Requirements
CLIENT SIDE
Web Browser-Mozilla Firefox
SERVER SIDE
22
DEVELOPER SIDE:
Oracle 10g
23
PRODUCT PERSPECTIVE:
24
PRODUCT FUNCTIONS:
Login Management
It deals with registration, signing in and updating existing account.
Update Information
This module is used to update the information section on the website by
administrator only. Registered Employees are provided with rights to
update their information.
Recruitment
It deals with recruiting new employees.
Report generation
This module is used to generate the reports of the project by the
administrator only.
Manage resources
This module is used to assign projects by project manager.
Portfolio
In this module there will be images of the project done by the
company.
USER CHARACTERSTICS:
User should have the basic knowledge of computer and internet browsing.
GENERAL CONSTRAINTS
DESIGN CONSTRAINTS
IEEE format has been followed throughout the development of srs to ensure
standards.
25
SPECIFIC REQUIREMENTS
RELIABILITY
AVAILABILITY:
Users can resume after shutting down of the system without any loss of data.
SECURITY:
All the registered users are authenticated since passwords are provided for the
purpose of security. Any unauthorized user cannot access it and change the
documented information. Each user is provided with certain rights according to
which, they have restricted access.
MAINTAINIBILITY:
PORTABILITY:
26
SOFTWARE
DESIGN SPECIFICATION
3-TIER ARCHITECTURE
27
2) STRUCTURE AND RELATIONSHIP
Data flow diagram is a pictorial representation of the system in which flow of data
from one process to another process is described. A Data Flow is composed of
ADMINISTRATOR EMPLOYEE
MANAGE AND
CONTROL
LOG IN
FEEDBACK
AUTHENTICATION
RESOURCE
MANAGEMENT SYSTEM
ALLOCATION OF
EMPLOYEES
PROJECT HR MANAGER28
MANAGER
LEVEL 1-ADMINISTROR
ADMINISTRATOR
ADMINISTRATOR NEWS
LOGIN DETAILS SUCCESSFUL
LOGIN
VERIFIED UPDATE
VERIFY DETAILS
29
LEVEL 1 PROJECT MANAGER
PROJECT MANAGER
PROJECT_MANAGER
LOGIN DETAILS SUCCESSFUL LOGIN
VERIFIED
VERIFYDETAILS
2.1 LOGIN
NEW PROJECT
NEW RESOURCES
UPDATED UPDATED
EMPLOYEE
PROJECT
30
LEVEL-1 EMPLOYEE
EMPLOYEE
EMPLOYEE
3.1 LOGIN
EMPLOYEE EMPLOYEE
31
LEVEL-1 HR MANAGER
HRMANAGER HR MANAGER
VERIFY DETAILS
LOGIN
RECRUITMENT
32
DATABASE DESCRIPTION:
1.)Employee Foreign key: id refers login table
33
3.) PROJECT
34
FIELD TYPE DESCRIPTION CONSTRAINT
35
5.) LOGIN
Primary id: ID
36
6.) APPLICANT
37
JOB_ID Varchar2(10) ID of the job Foreign Key
38
7.) REGISTRATION
Foreign key: Emp_Id refers login table
39
CHOOSEYOUR_QUES Varchar2(50) Choose your Not null
question for
password
security
YOUR_ANS Varchar2(50) Answer for Not null
password
security
8.) HR MANAGER
9.) JOB
Primary id: Job_ID
41
DATE_POSTING Date Consists of date of Not null
posting of job
SKILL Varchar2(50) Skills required for Not null
the job
AGE_LIMIT Varchar2(10) Age of the person Not null
required for job
EXPERIENCE Varchar2(10) Experience of the Not null
person
JOB_DESCRIPTION Varchar2(150) Description of the Not null
job
SALARY Varchar2(20) Salary for the job Null
10.) ADMIN
FIELD TYPE DESCRIPTION CONSTRAINT
42
PASSWORD Varchar2(10) Password of the admin Not null
11.) DRAFT
FIELD TYPE DESCRIPTION CONSTRAINT
43
SENDER Varchar2(35) Sender of the mail Not null
MESSAGE Varchar2(250)
44
Design
Software design is actually a multistage process that focuses on four distinct
attributes of a program: data structure, software architecture, interface
representation and procedural detail. The design process translates requirements
into a representation of the software that can be accessed for quality before code
generation begins. It is the most creative and challenging phase of the SDLC. It
refers to the technical specifications that will be applied to the system.
The design activity is often divided into two separate phases- system design and
detailed design. System design, which is sometimes also called top-level design, it
aims to identify modules that should be in the system. The specification of these
modules and how they interact with each other to produce the desired results at the
end of system design, all the major data structure file formats, output formats and
the major modules in the system and their specification are decide.
During detail design, the internal logic of each of the modules specified design is
decided. During these phases, further details of the data structures and algorithm
design of each of the modules is specified. The logic of the module is usually
specified in a high-level design description language, which is independent of the
target language in which the software will eventually be implemented.
In system design, the focus is on identifying the modules whereas during detailed
design, the focuses on designing the designing the logic for each of the modules, in
other words, in system designing the attention is on what components are needed,
while in detailed design, how the components can be implemented in software is
45
the issue, a design methodology is a systematic approach to creating a design by
application of a set of techniques and guidelines .Most methodologies focus on
system design.
The purpose of the design phases is to plan a solution of the problem specified by
the specification document. This phase is the first step in moving from the problem
domain to the solution domain. In the other words, start in with what is needed;
design takes us toward how to satisfy the needs.
Design of the system is the critical factor affecting the quality of software, and has
major impact on later phases such as testing and maintenance.
System design is also called top-level design aim to identify modules that should
be in the system .The specification of these modules and how they interact with
each other to produce the desired results.
During detail design, the internal logic of each of the modules specified design is
decided. In system design, the focus is on identifying the modules whereas during
detailed design the focuses on designing the designing the logic for each of the
modules.
46
TESTING
Testing is the process used to help identify the correctness, completeness security,
and quality of developed computer software. Testing is a process of technical
investigation, performed on behalf of stakeholders, that is intended to reveal
quality-related information about the product with respect to the context in which it
is intended to operate.
A small system error can conceivably explode into a much larger problem.
Effective testing early in the process translates directly into long term cost savings
from a reduced number of errors. Another reason for project testing is its utility as
a user oriented vehicle before implementation .The best program is worthless if it
does not meet user needs. Unfortunately, the users demands are often
compromised by efforts to facilitate program or design efficiency in terms or
memory utilization.
Testing plays a critical role in quality assurance for software. Due to the limitation
of the verification method for the previous phases, design and requirement fault
also appear in the code. Testing is used to detect these errors, in addition to the
error introduced during coding phase.
Testing is a dynamic method for verification and validation, where the system is to
be tested is executed and behavior of the system is observed. Due to this testing the
failure of the system can be observed, from which the presence of fault can be
deduced. However, separate activities have to be performed to identify the faults.
In functional testing, the internal logic of the system under testing is not
considered and the test cases are decided from the specification or the
requirements. It is often called Black Box Testing
.
In structural testing, the test cases are decided entirely on the internal logic of the
program or module being tested.
The basic steps of testing have been picked from software engineering practices.
The following are the steps, we undertook:
47
The content of the Intranet site is reviewed to uncover Content errors. Content
Errors covers the typographical errors, grammatical errors, errors in content
consistency, graphical representation and cross referencing errors
2. The design model of the web application is reviewed to uncover the navigation
errors. Use cases, derived as a part of the analysis activity allows a web designer to
exercise each usage scenario against the architectural and navigational design. In
essence these non-executable tests help to uncover the errors in navigation.
3. When web applications are considered the concept of unit changes. Each web
page encapsulates content navigation links, content and processing elements
(Forms, Scripts in our case). It is not always possible to test each of these
individually. Thus is the base of the web applications the unit to be considered is
the web page. Unlike the testing of the algorithmic details of a module the data that
flows across the module interface, page level testing for web applications is driven
by content, processing and links encapsulating the web page.
4. The Assembled web application is tested for overall functionality and content
delivery. The various user cases are used that test the system for errors and
mistakes.
TESTING OBJECTIVES:
The main objective of testing is to uncover a host of errors, systematically and with
minimum effort and time. Stating formally, we can say,
1. Testing is a process of executing a program with the intent of finding an error.
3. A good test case is one that has a high probability of finding error, if it exists.
5. The software more or less confirms to the quality and reliable standards.
48
LEVELS OF TESTING
In order to uncover the errors present in different phases, we have the concept of
levels of testing. The basic levels of testing are:
Unit testing
Unit testing focuses verification effort on the smallest unit of software i.e. the
module. Using the detailed design and the process specifications, testing is done to
uncover errors within the boundary of the module. All modules must be successful
in the unit test before the start of the integration testing begins.
In this project each service can be thought of a module. There are modules like
Login, Registration, etc. Each module has been tested by giving different sets of
inputs. When developing the module as well as finishing the development, the
module works without any error. The inputs are validated when accepting them
from the user.
Integration Testing
After unit testing, we have to perform integration testing. The goal here is to see if
modules can be integrated properly, the emphasis being on testing interfaces
between modules. This testing activity can be considered as testing the design and
hence the emphasis on testing module interactions.
In this project the main system is formed by integrating all the modules. When
integrating all the modules I have checked whether the integration effects working
of any of the services by giving different combinations of inputs with which the
two services run perfectly before Integration.
System Testing
Here the entire software system is tested. The reference document for this process
is the requirements document, and the goal is to see if software meets its
requirements. Here entire functionality has been tested against requirements of
49
project and it is checked whether all requirements of project have been satisfied or
not.
Acceptance Testing
Acceptance Testing is performed with realistic data of the client to demonstrate
that the software is working satisfactorily. Testing here is focused on external
behavior of the system; the internal logic of program is not emphasized.
50
Purpose
The purpose of this document is to lay down the test procedure & formats for
testing the functionality of the site.
Test Procedure
Each check and procedure is first checked individually and then its effect is seen
on the other forms.
At all the stages of testing there should be a positive attempt to provoke system
failure to avoid it.
A test strategy needs to include the following type of testing such as:
Program Testing.
String Testing
System Testing
Program Testing:- A Program represents the logical elements of the system It will
be ensured that each program runs satisfactory and it must compile and perform
testing of data correctly.
String Testing:- Program are invariably related to each other to interacts in a total
system. Each program has been tested to check whether it confirms to relate
programs in the system. Each portion of the program will be tested against entire
module with test data before the entire system is ready to be tested.
User Acceptance Testing:- User will be invited to test the system to ensure that
whether the system is fulfilling the stated objective.
51
Implementation
Training
Training is providing to the user of the system and the operator because they are
the ones who will be delaying with the system. Training plays a very important role
as ever technically agent system fails due to poor quality of training the method of
rendering training differs from person to person. In case of operator training, the
focus is to let them handle both entry procedures and vital data etc. In case of user
training, user is explained the explained the fundamental operations along with the
basic knowledge of hardware.
52
Conversation Plan
Processing of changing the old system into a new one, there are various methods of
handling system conversion. However, the pros and cons of each method should be
evaluated before deciding on the final approach. This precaution is very necessary
because success or failure of entire project depends on it. The methods of
conversion are: -
DIRECT CONVERSION.
1 PARALLEL CONVERSION.
2
3 PHASED CONVERSION.
4 PILOT CONVERSION.
Direct Conversion
All users stop using the old system at the same time, then being using the new
system. This option is fast but disruptive.
Parallel Conversion
Users continue to use old system while an increasing amount of data is proceeds
through the new system. The outputs from the two systems are compared: if they
agree then the switch is made which is used to further testing of the new system.
Phased Conversion
Users start using the new system component by component. This option work only
systems, which can be compartmentalized.
Post-Implementation
Internationalization
Internationalization means globalization. It is aimed at developers and team leaders
wanting to create applications which run in more than one language and region
(country).
53
Maintenance
Corrective Maintenance
Adaptive Maintenance
1 Any effort that is initiated as a result of changes in the environment in which
a software system must operate is termed adaptive change. Adaptive change is a
change driven by the need to accommodate modifications in the environment of
the software system, without which the system would become increasingly less
useful until it became obsolete.
The term environment in this context refers to all the conditions and influences
which act from outside upon the system, for example business rules, government
policies, work patterns, software and hardware operating platforms. A change to
the whole or part of this environment will warrant a corresponding modification of
the software.
54
Perfective Maintenance
1 his is actually the most common type of maintenance encompassing
enhancements both to the function and the efficiency of the code and includes all
changes, insertions, deletions, modifications, extensions, and enhancements made
to a system to meet the evolving and/or expanding needs of the user. A successful
piece of software tends to be subjected to a succession of changes resulting in an
increase in its requirements. This is based on the premise that as the software
becomes useful, the users tend to experiment with new cases beyond the scope for
which it was initially developed. Expansion in requirements can take the form of
enhancement of existing system functionality or improvement in computational
efficiency.
Though efforts have been made to develop error free systems, but no system is
perfect, room for improvement is always there. Thus proper documentation for the
system has been done so that it will be easy to handle any breakdown or any other
type of system maintenance activity.
55
User Manual
The main aim of the project is to develop a Resource Module for the Intranet
Automation of resource Software. It has an Intranet through which all the
employees in the company will be knit together. It has different modules such as
Resource Management, adding new employee, administrators task, project
managers task etc., connecting the employees in the company.
Resource Module is the Intranet in which all the information regarding the
employees in the company will be present. The module has been developed with
good Interaction / communication facilities between the employees and
Administrator.
1. Administrator
3. Project Manager
4. Employee
The administrator is the one who has the overall control of the web application.
56
Login
This is Login page through which users including administrator, human resource
manager, project manager and employee. Enter UserType, UserId and Password
and user can login
57
Registration page
Once the registration is complete a employee can then login from the main login
page. In case the website is opened on a personal computer a user has the facility
of Remembering Me, checking it makes the user id save on the local disc so that
when the same user visits the same website he doesnt have to enter the credentials
again.
58
Password Recovery Form
In case the user forgets his password he can then click the Forgot Password link
in order to redirect to the Password Recovery Phase.
59
Recruitment
Through this page applicants can be information about all the available jobs.
Applicant can apply for the respective jobs by clicking on APPLY NOW
60
Application form
61
Through this form applicant apply for the form
62
Add Employee: Administrator can add employees selected by HR manager
63
Project
64
65
Human Resource Module
Through this page HR manager can Post jobs by using Job Type.
66
ShortListed Resume
This page contains the entire applicant that applied for the particular jobs. By
clicking on View Applicants HR manager can view all the applicants.
67
Project Manager Module
Request generation :
Through this form project manager can create the request for the projects
68
Employee Module
View Profile:- Clicking on view profile employee can view his profile
Compose mail through this form employee can compose mail and can sent to any
user
69
Inbox: form here user can check new mails
70
Draft: From here user can check save mails
FUTURE ENHANCEMENTS
1. Video chats and conferencing can be facilitated among users.
2. To implement chat server for facilitating the users for more effective
communication.
71
CONCLUSION
With mutual cooperation and help from faculties we have successfully completed
our project-RESOURCE MANAGEMENT SYSTEM. This site is to develop a
Human Resource Module for the Intranet Automation of HR software. We hope
our efforts would somehow meet the goals.
72
BIBLIOGRAPHY
1.) The Complete Reference Java 2 6th edition by Herbert Schildt Tata
Macgraw Hill Publications
2.) Database System concepts by Korth, Silberschatz, Sudarshan 4th edition
Tata Macgraw Hill Publications
73
74