Assignment EAM SYSTEM2
Assignment EAM SYSTEM2
Employee Module:
Admin can Add new Employee,Update and Delete the
Record.
View and Manage the List of Employees.
Attendance Module:
Admin marks attendance for each employee on a daily basis
(Absent or Present).
Ability to handle different attendance scenarios such as half-
day, overtime, or leave .
Absent Employee Record.
Payroll Module:
o Salary Calculation:
Base salary input for each employee.
Daily attendance will affect monthly salary calculations.
o Overtime Calculation:
Option to input overtime hours.
Overtime rates applied to regular salary.
o Salary Reports:
Generate and download salary slips for each employee.
Shift Module:
Admin can assign shifts to employees based on work
requirements (e.g., day shift, night shift).
Report Module:
Employee Attends Report
Detailed Report
2. System Design
1. Architecture
The system follows a 3-tier architecture, which separates the application into
three logical layers to ensure scalability, maintainability, and security:
1. Presentation Layer (UI):
o Built using ASP.NET MVC.
o Admin interface for creating employees, managing attendance,
assigning shifts, and generating reports.
2. Business Logic Layer (BLL):
o Written in C#, this layer contains all the business logic and rules.
o Handles validation, processing attendance, shift assignments, and
communication between the presentation layer and the data
access layer.
o Ensures that only authorized actions are executed by the admin.
3. Data Access Layer (DAL):
o Manages interactions with the SQL Server database.
o Uses Entity Framework to communicate with the database.
o Contains methods for CRUD operations (Create, Read, Update,
Delete) on employee records, attendance, and shifts.
2. Database Design
The database is designed to store employee records, attendance, shifts, and admin
credentials. The main entities include:
Database Tables:
1. Admin Table:
o AdminID: Unique identifier for the admin (Primary Key).
o Username: Admin login name.
o Password: Admin password.
AdminID Username Password
1 Admin Admin@123
2. Employee Table:
o EmployeeID: Unique identifier for each employee (Primary Key).
o FullName: Full name of the employee.
o Department: Department the employee belongs to.
o Designation: Employee's job title.
o JoinDate: Date the employee joined the company.
o ShiftID: Foreign key linking to the Shift table.
EmployeeID FullName Department Designation JoinDate ShiftID
1 Priyanka IT Staff 2023-06-01 1
3. Attendance Table:
o AttendanceID: Unique identifier for each attendance record
(Primary Key).
o EmployeeID: Foreign key referencing the Employee table.
o Date: Date of the attendance entry.
o Status: Status of the employee for that date (Present/Absent).
AttendanceID EmployeeID Date Status
1 1 2024-09-01 Present
4. Shift Table:
o ShiftID: Unique identifier for the shift (Primary Key).
o ShiftName: Name of the shift (e.g., Morning, Evening, Night).
o StartTime: Time the shift starts.
o EndTime: Time the shift ends.
5.AttendenceReport Table:
o AttendanceReportId: Unique identifier for each attendance report
(Primary Key).
o EmployeeID: Unique identifier for the associated employee (Foreign
Key).
o EmployeeName: Name of the employee.
o TotalAttendanceDays: Total number of days the employee was
present.
o TotalAbsenceDays: Total number of days the employee was absent.
o AttendancePercentage: Calculated percentage of attendance.
ReportGeneratedDate: Date when the report was generated.
6.PayRoll Table:
4. Workflows
Admin Login Workflow:
1. Admin enters credentials (username and password).
2. System verifies credentials using data from the Admin table.
3. If valid, the admin is redirected to the dashboard; if not, an error message
is displayed.
Employee Creation Workflow:
1. Admin navigates to the “Add Employee” form.
2. Admin enters employee details (name, department, designation, etc.).
3. System validates the input and saves the data in the Employee table.
Confirmation is displayed to the admin.
5. Security Design
1. Authentication:
o Only the admin can log in using secure credentials.
o Passwords are stored using hashing techniques to enhance security.
2. Role-Based Access Control (RBAC):
o Only the admin has access to system features, preventing
unauthorized access.
3. Session Management:
o Secure sessions are used to maintain admin login status. Sessions
expire after inactivity to prevent unauthorized use.
8.Technology Stack
Front-End: ASP.NET (Web Forms or MVC), HTML, CSS,
JavaScript,BootStrap
Back-End: C#, Entity Framework.
Database: SQL Server.
IDE: Visual Studio 2022.
Version Control: GitHub/Git.
9.Conclusion
The Employee Attendance Management System provides a robust solution
for managing employee attendance, shifts, and related data.
The system allows for efficient tracking of employee attendance, including
the ability to mark employees as present or absent and assign shifts. This
improves overall accuracy in recording attendance data and reduces
administrative overhead.By restricting access to administrative functions, the
system ensures that only authorized personnel can manage employee records
and attendance data. This helps maintain data integrity and security.