OOPM microproject Java
OOPM microproject Java
We take this occasion to thank God, almighty for blessings us with his grace and taking our
endeavor to a successful culmination. We extend us sincere and heartfelt thanks to our esteemed
guide, Prof. Bhaktvatsal Jadhao for providing us with the right guidance and advice at the
crucial junctures and for showing us the right way. We also take this opportunity to express a
deep sense of gratitude to our class coordinators and for their cordial support, valuable
suggestions and guidance. We extend our sincere thanks to our respected Head of the
Information Technology department Prof. Bhaktvatsal Jadhao, for allowing us to use the
facilities available. We would like to thank the other faculty members also, at this occasion. Last
but not the least, we would like to thank our friends and family for the support and
encouragement they have given us.
1
Abstract
Employee Management System is simple to understand and can be used by anyone who is not
even familiar with simple employees’ system. It is user friendly and just asks the user to follow
step by step operations by giving easy to follow options. It is fast and can perform many
operations for a company. The goal of this project is to design and develop an employee
management system to fill existing gaps in the electronic employee management system.
2
INDEX
1 Problem Statement 4
2 Solution 5
3 Project Background 6
4 Objective 7
5 Scope 8
6 Expected Benefit 9
10 Conclusion 22
11 Reference 23
3
PROBLEM STATEMENT
4
Solution
In this code we have used the concept of Classes and Objects to solve the problem. We have
created a menu for the user which consists of 5 different features.
1. To add an employee
2. To view details of an employee
3. To remove an employee
4. To update info of an employee
5. To exit the Portal.
For each of these features We have created a separate class to maintain the decorum of the code.
Also, we have used the concept of Switch Cases to automate the task and make it more useful
and user friendly. User need to just enter the numbers as per given and it will perform the task.
5
Project Background
Employees are the backbone of any company therefore their management plays a major role in
deciding the success of an organization. Human Resource Management Software makes it easy
for the employer to keep track of all records. This software allows the administrator to edit
employees, add new employees as well as evaluate an employee’s performance. Employees can
be managed efficiently without having to retype back their information in the database. You can
check to see if there are duplicate positions/employees in the database. A flexible and easy to use
Employee Management software solution for small and medium sized companies provides
modules for personnel information management thereby organization and companies are able to
manage the crucial organization asset people. The combination of these modules into one
application assures the perfect platform for re-engineering and aligning Human Resource
processes along with the organizational goals. This system brings about an easy way of
maintaining the details of employees working in any organization. It is simple to understand and
can be used by anyone who is not even familiar with simple employees’ system. It is user
friendly and just asks the user to follow step by step operations by giving easy to follow options.
It is fast and can perform many operations for a company.
6
Objectives
In this world of growing technologies everything has been computerized. With large number of
works opportunities, the Human workforce has increased. Thus, there is a need of a system
which can handle the data of such a large number of Employees. This project simplifies the task
of maintaining records because of its user-friendly nature.
The objective of this project is to provide a comprehensive approach towards the management of
employee information. This will be done by designing and implementing an HR management
system that will bring up a major paradigm shift in the way that employee information is
handled.
• A user friendly front-end for the user to interact with the system.
7
Scope
• Employee profiles: Employees will have access to their personal profiles and will be able
to edit their details.
• Project Management: Assign tasks and projects to employees, assign a project team and
keep track of the progress.
• Report generation: The HR manager will be able to generate timely reports in order to
monitor employees and this can be used for performance appraisals. The reports will be
having all the information of an employee from educational background, trainings
attended, projects done as well as technical skills.
• Recruitment Process: The admin will add an employee and a default password and
employee id will be generated and sent to the new employee’s email. The HR manager
will then have the ability to add an employee’s information to the database.
8
EXPECTED BENEFITS
This system is expected to be user friendly and will offer easy access to data as well as services
such as online leave management, e-recruitment, and timely report generation, monitoring
employee trainings, task management, project management and employee tracking. The
employee is expected to have direct interaction with this system through a password protected
user account therefore proposed system is web based to enable accessibility from any location as
long as internet connectivity is available. This direct interaction with the system will enable
employee self-service. Without an employee management system, it’s a tedious job for the
human resource department to keep track of each and every employee and even harder for a
project manager to assign tasks to the project team. The HR management system will be
developed to provide information of employees and many other facilities at the click of a button.
9
REQUIREMENTS AND CONSTRAINTS
Functional Requirements:
Authentication:
• Login: The user can login to the HRMS system with his/her username and password.
• Logout- The user can log out from the HRMS system. Login failure- If the user does not
exist in the database or the user has not yet been authorized by the HRMS admin.
Authorization:
• User role check- After logging in, the user role will be checked from the database and the
user interface will be displayed according to their role.
Process Data:
• Display- User with defined roles can display the content of the database. Being more
specific, employee can only view his/her personal information. HOD can not only see
his/her personal information but also employee’s information who are under his/her
department or school. Admin and HR can display their personal information and all
employees’ information.
• Edit- A user with employee role can edit his/her specific personal information. Dean or
HOD can only edit employees’ personal information that is under his/her coverage except
user role type. Admin can edit all information related to all employees’ including their
user role type.
• Search- User with Dean/HOD role can search the content of database for the employees
who are under his/her coverage. HR and admin roles can search all the employee’s
information in the database. Search feature works on specific keywords showing
employee’s characteristics, peculiarities, skills, features, and etc. For example, HR wants
to find employees’ who are well trained in Java Programming Language. He/she will
write the specific keyword in the search bar and press the available search button.
Afterwards, he/she will find a list of all the employees who know Java Programming.
10
• Update authentication- This feature can be used only by admin role type. Admin can
update the role type of a specific user. For example, an employee got promotion and his
role type will be changed from employee role id to HOD or Dean role. Admin will be
able to update this authentication mechanism.
Leave Application/Approval:
• Leave application: The user can be able to fill in leave application form in the appropriate
fields.
• Leave approval- The admin can be able to approve leave applications based on the reasons
stated, length of leave as well as available HR on a department. Leave days accrued- The
user shall be able to check the number of leave days accrued.
Recruitment:
• Add new employee- HR role type is able to add a new employee to the database. The new
employee will have all the required personal information related to him/her. The
newcreated employee will have an id.
• Add a new user- After a new employee has being created by HR role, admin role is
responsible for creating a new user by the specified id assigned in the Add a new employee
feature. The unique id will be given by the system. Admin will assign a new role such as
employee, Dean, HOD, HR, and admin to the new created user.
Report generation:
• Project Management: Create project team- The HOD of department or project manager
shall be able to create a project and come up with a project team. Work Breakdown
Structure (WBS)- The HOD or project manager shall be able to assign tasks to the project
team as well as monitor their progress.
• Trainings-The HOD shall create trainings and assign employees that are required to attend
the trainings as well.
11
Non-Functional Requirements:
Performance Requirements:
• There is no restriction on the number of the users to be added to the database.
Hardware Requirements:
EMS should be able to work on a computer with the following minimum hardware
• specifications:
OS: Windows XP/Vista/7/8 and Linux
CPU: Pentium III (700MHz) and above
Memory: 128 MB and above
Capacity: 4GB of hard drive
Others: Network interface card, mouse, keyboard, and monitor.
Software requirements
Since EMS application is a web-based application, internet connection must be
established. The EMS software personal database model will support MySQL
environment as DBMS.
12
Entity Relationship Diagram (ERD)
13
Source Code
/************************MENU OF EMS EmployDetail emp=new EmployDetail();
*************************/
emp.getInfo();
class MainMenu
try
{
{
public void menu()
File f1=new
{ File("file"+emp.employ_id+".txt");
System.out.println("\t\t**************** if(f1.createNewFile())
***************************");
{
System.out.println("\t\t\t EMPLOYEE
FileWriter myWriter = new
MANAGEMENT SYSTEM");
FileWriter("file"+emp.employ_id+".txt");
System.out.println("\t\t****************
myWriter.write("Employee
***************************");
ID:"+emp.employ_id+"\n"+"EmployeeName
System.out.println("\n\nPress 1 : To Add an :"+emp.name+"\n"+<Surname
Employee Details"); :"+emp.Surname+"\n"+"Employee
Contact:"+emp.employ_contact+"\n"+"Email
System.out.println("Press 2 : To See an
Information :"+emp.email+"\n"+"Employee
Employee Details ");
position:"+emp.position+"\n"+"Employee
System.out.println("Press 3 : To Remove Salary :"+emp.employ_salary");
an Employee");
myWriter.close();
System.out.println("Press 4 : To Update
System.out.println("\nEmployee has
Employee Details");
been Added :)\n");
System.out.println("Press 5 : To Exit the
System.out.print("\nPress Enter to
EMS Portal");
Continue...");
}
sc.nextLine();
}
}
/********************* To add details of
else
Employee ******************/
{
class Employee Add
System.out.println("\nEmployee
{
already exists :(");
public void createFile()
System.out.print("\nPress Enter to
{ Continue...");
14
} email=sc.nextLine();
String employ_salary; {
15
public void removeFile(String ID) fileContext =fileContext+"\n"+sc.nextLine();
{ }
} System.out.println("\n*********************
********************");
}
System.out.println("$ cat Thank You For Using
}
Software :) ");
/******************* To Update details of
System.out.println("***********************
Employee ******************/
******************");
class Employee_Update
System.exit(0);
{
}
public void updateFile(String s,String o,String
}
n) throws IOException
/************************ Main Class
{
*************************/
File file = new File("file"+s+".txt");
class EmployManagementSystem
Scanner sc = new Scanner(file);
{
String fileContext="";
public static void main(String arv[])
while (sc.hasNextLine())
{
{
/** To clear the output Screen **/
16
System.out.print("\033[H\033[2J"); String s=sc.nextLine();
obj1.menu(); sc.nextLine();
while(i<6) obj1.menu();
{ break;
i=Integer.parseInt(sc.nextLine()); case 3:
17
try epu.updateFile(I,s,n);
epv.viewFile(I); sc.nextLine();
} System.out.print("\033[H\033[2J");
catch(Exception e) obj1.menu();
{ break;
System.out.println(e); }
} catch(IOException e)
String n=sc.nextLine(); }
try }
18
Outputs
19
20
21
Conclusion
After we have completed the project, we are sure the problems in the existing system would
overcome. The JAVA process made computerized to reduce human errors and to increase the
efficiency. The main focus of this project is to lessen human efforts. The maintenance of the
records is made efficient, as all the records are stored in the access database, through which data
can be retrieved easily. The navigation control is provided in all the forms to navigate through
the large number of records. If the numbers of records are very large, then user has to just type in
the search string and user gets the results immediately. The editing is also made simpler. The
user has to just type in the required field and press the update button to update the desired field.
The Books and Students are given a particular unique id no. So that they can be accessed
correctly and without errors. Our main aim of the project is to get the correct information about a
particular student and books available in the library. The problems, which existed in the earlier
system, have been removed to a large extent. And it is expected that this project will go a long
way in satisfying user’s requirements. The computerization of the Library Management will not
only improve the efficiency but will also reduce human stress thereby indirectly improving
human recourse.
22
REFERENCE
We got the references for our project from various websites and different books based on
Computer Graphics.
• WEBSITES:
1. www.google.com
2. www.chatgpt.com
• BOOKS:
1. Nirali Prakashan
23
Annexure II
Evaluation sheet for microproject
Academic Year:
Name of faculty:
Course : Course code: Semester:
Title of Project: -
______________________________________________________________________________
Cos addressed by the micro project:
______________________________________________________________________________
Major learning outcomes achieved by students by doing the project:
1) Practical outcomes:
_____________________________________________________
2)Outcomes in affective domain:
______________________________________________________________________________
______________________________________________________________________________
Comments/Suggestions about teamwork/leadership/interpersonal communication (if any)
_________________________________________________________________________
_________________________________________________________________________
24