DB Documentation (EPE)
DB Documentation (EPE)
Session: 2022-2026
Submitted by:
Supervised by:
Dr. Syed Khaldoon
Nazeef ul Haq
Course:
CS-262L Database Systems
Contents
1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1 Project Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Scope and Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Technology Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1 Programming Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Backend Development: . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.2 Frontend Development: . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.3 Desktop Application: . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 Database Management System (DBMS) . . . . . . . . . . . . . . . . . . . . 7
2.3 Version Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 Development Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.5 Power BI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.6 Web Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.7 SSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.8 Pandas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Database Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1 CRUD Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.1.1 Business Rules and Explanations . . . . . . . . . . . . . . . . . . . . 9
4.1.2 Entity-Relationship Diagram (ERD) . . . . . . . . . . . . . . . . . . 10
4.1.3 Explanation of Entities . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1.4 Relationship Participation . . . . . . . . . . . . . . . . . . . . . . . 11
4.2 Analysis Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.1 Business Rules and Explanations . . . . . . . . . . . . . . . . . . . . 13
4.2.2 Entity-Relationship Diagram (ERD) . . . . . . . . . . . . . . . . . . 14
4.2.3 Explanation of Entities . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.2.4 Relationship Participation . . . . . . . . . . . . . . . . . . . . . . . 15
4.3 ETL Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.3.1 Entity Relationship Diagram (ERD) . . . . . . . . . . . . . . . . . . 17
5 Database Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1 CRUD-Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.2 CRUD-Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.3 Final Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
7 Evaluation Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.1 Retrieve Evaluations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.2 Obtain Metric Weightage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.3 Calculate Weighted Points . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.4 Total Weighted Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.5 Calculate Final Percentage . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
9 Dependency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
9.1 Functional Dependency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
9.2 Full Functional Dependency . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
9.3 Existence Dependency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
10 Relationship Strength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
10.1 Strong Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
10.1.1 Employee - Person Relationship: . . . . . . . . . . . . . . . . . . . . 29
10.1.2 Groups - GroupEmployee, GroupEvaluation Relationships: . . . . . . 30
10.1.3 Evaluation - Employee, Metrics Relationship: . . . . . . . . . . . . . 30
10.1.4 Metrics - Evaluation, GroupEvaluation Relationships: . . . . . . . . . 30
10.2 Weak Relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
10.2.1 Employee - Person Relationship: . . . . . . . . . . . . . . . . . . . . 30
10.2.2 GroupEmployee - Groups, Employee Relationships: . . . . . . . . . . 31
10.2.3 Evaluation - Employee, Metrics Relationship: . . . . . . . . . . . . . 31
10.2.4 GroupEvaluation - Groups, Metrics Relationships: . . . . . . . . . . . 31
10.3 Strong Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
10.4 Weak Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
11 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
11.1 Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
11.2 Integration Complexity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
11.3 Security Risks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
11.4 User Adoption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
11.5 Maintenance Overhead . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
11.6 Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
12 Future Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
12.1 Enhanced Scalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
12.2 Seamless Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
12.3 Advanced Security Measures . . . . . . . . . . . . . . . . . . . . . . . . . . 33
12.4 User Experience Improvements . . . . . . . . . . . . . . . . . . . . . . . . . 33
12.5 Predictive Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
12.6 Mobile Accessibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
13 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
List of Figures
1 ER Diagram of CRUD database . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Relationship between Employee and Department . . . . . . . . . . . . . . . 11
3 Relationship between Employee and Designation . . . . . . . . . . . . . . . . 12
4 Relationship between Employee and Person . . . . . . . . . . . . . . . . . . 12
5 Relationship between Group and Supervisor . . . . . . . . . . . . . . . . . . 13
6 Relationship between Group and Department . . . . . . . . . . . . . . . . . 13
7 ER Diagram of Analysis Database . . . . . . . . . . . . . . . . . . . . . . . 15
8 Relationship between Evaluation and Metrics . . . . . . . . . . . . . . . . . 16
9 Relationship between Group Evaluation and Metrics . . . . . . . . . . . . . . 16
10 Relationship between Metrics and Area of Evaluation . . . . . . . . . . . . . 16
11 Relationship between Weightage and Lookup Table . . . . . . . . . . . . . . 17
12 Relationship between Weightage and Metrics . . . . . . . . . . . . . . . . . 17
13 ER Diagram of ETL Database . . . . . . . . . . . . . . . . . . . . . . . . . 18
14 Database Design of CRUD Database . . . . . . . . . . . . . . . . . . . . . . 19
15 Database Design of CRUD Database . . . . . . . . . . . . . . . . . . . . . . 19
16 Database Design after ETL process . . . . . . . . . . . . . . . . . . . . . . 20
17 DFD of CRUD Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
18 DFD of Analysis Database . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
19 Web page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
20 Web page Add Supervisor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
21 Web page Create Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
22 Web page Group Employee . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
23 Power BI showing Employee Details . . . . . . . . . . . . . . . . . . . . . . 25
24 Power BI showing Employee Records . . . . . . . . . . . . . . . . . . . . . . 25
25 Power BI showing Employee Rating . . . . . . . . . . . . . . . . . . . . . . 26
26 Power BI to filter Employee Details . . . . . . . . . . . . . . . . . . . . . . 26
27 WinForm of Employee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
28 WinForm to create group . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
29 WinForm of Employee Evaluation . . . . . . . . . . . . . . . . . . . . . . . 28
30 WinForm of Employee Details . . . . . . . . . . . . . . . . . . . . . . . . . 28
1 Introduction
1.1 Project Overview
The Employee Performance Evaluation (EPE) project aims to revolutionize the process of
managing and assessing employee performance within an organization. By leveraging modern
technology and best practices in performance management, the EPE system offers a com-
prehensive solution for enhancing productivity, accountability, and employee development.
2 Technology Stack
The development of the Employee Performance Evaluation (EPE) system leveraged a variety
of tools and technologies to ensure robustness, scalability, and maintainability. The following
are the key tools and technologies utilized:
2.5 Power BI
Microsoft’s Power BI played a pivotal role in streamlining the process of analysis using graph-
ical tools and charts. With its powerful data visualization and analysis capabilities, Power
BI enabled the creation of interactive reports and dashboards from various data sources,
facilitating data-driven decision-making within the organization.
2.7 SSIS
SSIS, renowned for its powerful data integration and ETL (Extract, Transform, Load) capa-
bilities, was employed to manage, transform, and transfer data between various systems and
databases efficiently. By ensuring data integrity and consistency, SSIS played a crucial role
in optimizing data workflows within the EPE system.
2.8 Pandas
Pandas, a Python library, was utilized for data cleaning within the database. Offering high-
performance data manipulation and analysis tools, Pandas proved to be instrumental in clean-
ing and preprocessing data, ensuring data quality and reliability within the EPE system.
4 Database Overview
4.1 CRUD Database
The CRUD (Create, Read, Update, Delete) database serves as the operational backbone
of the Employee Performance Evaluation (EPE) system. It facilitates the management of
transactional data related to employee information, department details, group assignments,
metric definitions, and evaluation records.
• Lookup Table: A lookup table storing values categorized for various attributes within
the system.
• Person: Stores personal information of individuals.
• Supervisor: Maps employees to their supervisors.
• Employee - Designation:
– Participation: Mandatory for Employee, Optional for Designation.
– Every employee must have a designation, but a designation may not necessarily be
assigned to any employee.
However, it’s possible that certain designations defined in the lookup table are not
currently assigned to any employee. This could occur due to changes in organizational
structure, job vacancies, or newly created roles that have not yet been filled.
• Employee - Person:
– Participation: Mandatory for Employee and Person.
– Each employee’s personal information must be stored, and every personal record
must be associated with an employee.
• Group - Supervisor:
– Participation: Optional for Group, Mandatory for Supervisor.
– A group may or may not have a supervisor, but every supervisor must be associated
with a group.
• Group - Department:
– Participation: Mandatory for Group, Mandatory for Department.
– Every group must belong to a department, and every department must have at
least one group.
• Business Rule: Data stored in the Analysis database must be accurate, complete, and
up to date to ensure the reliability of analytical insights and reporting.
• Explanation: Maintaining data accuracy and currency is essential for generating mean-
ingful analytics and reports. It ensures that decisions made based on the analysis are
well-informed and aligned with the current state of the organization.
Metric Aggregation:
• Business Rule: Aggregated metrics stored in the Analysis database should be calculated
consistently and accurately to provide reliable insights into organizational performance.
• Explanation: Consistency in metric aggregation methodologies ensures that analytical
insights are comparable over time and across different areas of the organization. It
enhances the credibility of the analysis results and supports data-driven decision-making
processes.
Dashboard Configuration :
• Business Rule: Dashboard configurations must be customizable to meet the diverse
analytical needs of users while maintaining usability and accessibility.
• Explanation: Customizable dashboards empower users to tailor the presentation of
analytical insights according to their preferences and specific requirements. It enhances
user experience and facilitates effective data interpretation and decision-making.
• Weightage - Metrics:
– Participation: Mandatory for Weightage, Mandatory for Metrics.
– Each weightage entry must be associated with a metric, and every metric must
have weightage specified.
5 Database Diagrams
5.1 CRUD-Database
5.2 CRUD-Analysis
7 Evaluation Mechanism
Here are the steps involved in evaluating employee performance:
1. Main Page
2. Add Supervisor
3. Group
4. Group Employee
8.2 Power BI
Integration with Power BI will allow users to access comprehensive data visualizations and
analytics, providing insights into employee performance trends, departmental metrics, and
organizational benchmarks. The interactive dashboards created using Power BI will enable
stakeholders to make informed decisions based on real-time data.
1. Employee Details
2. Employee records
3. Employee Rating
8.3 WinForms
Additionally, the EPE system will incorporate WinForms-based interfaces for desktop ap-
plications, offering a more tailored experience for specific tasks such as data entry, report
generation, and administrative functions. This integration will cater to users who prefer
desktop-based interactions or require offline access to certain functionalities.
1. Add Employee
2. Create Group.
3. Employee Evaluation.
4. Employee Details.
9 Dependency
9.1 Functional Dependency
Functional dependency refers to the relationship between attributes within the database ta-
bles. In the Employee Performance Evaluation (EPE) system, there is no strict functional
dependency where one attribute uniquely determines another within the same table.
10 Relationship Strength
10.1 Strong Relationship
In the Employee Performance Evaluation (EPE) database, strong relationships are prevalent
among various entities, ensuring data integrity and coherence throughout the system. Here’s
how these strong relationships manifest within the database:
• This relationship is strong because the existence and identification of an employee record
do not depend on the presence of any other entity.
– The Groups entity is a strong entity as it can stand on its own without depending
on other entities for identification.
11 Limitations
11.1 Scalability
The current system may face challenges in scaling to accommodate a growing number of
users and increasing data volume. As the organization expands, there may be limitations in
handling large-scale performance evaluations and data analytics.
11.6 Compatibility
• Compatibility issues may arise when integrating with other systems or software compo-
nents, especially if they use different data formats or communication protocols.
• Ensuring seamless interoperability between the database and external systems may re-
quire additional effort and resources.
12 Future Goals
12.1 Enhanced Scalability
Implementing scalable architecture and infrastructure to support the growth of the organiza-
tion and accommodate increasing user and data demands.
13 Conclusion
The evaluation mechanism outlined above provides a systematic approach to assess employee
performance within the Employee Performance Evaluation (EPE) system. By following these
steps, organizations can effectively analyze employee contributions, align performance with
organizational goals, and identify areas for improvement. Through comprehensive evaluation
processes, the EPE system facilitates data-driven decision-making, fosters employee develop-
ment, and supports the overall success of the organization.