Employee Search for Administrators
1. Functional Specification
1.1 General Information
Feature Name: Employee Search and Drill-Down
Module: Employee Management
Priority: High
1.2 Workflow
Trigger Event: The administrator clicks the Search button for the "Employee Search" on the admin menu
Process Flow:
The administrator enters search criteria (e.g., employee name, ITS section, or role).
The system displays a list of matching employees.
The administrator clicks on a specific employee to view detailed information.
Outcome: The administrator is presented with a detailed view of the employee’s position information, contact details, and emergency contact information.
1.3 Input Requirements
Input Fields:
Search criteria (e.g., name, section, role).
Source:
Input provided by the administrator through the user interface.
1.4 Output Requirements
Output Data:
Search results: Employee name, ID, and department.
Drill-down data: Position, contact, and emergency contact information.
Destination:
Displayed on the administrator’s dashboard.
1.5 Error Handling
Common Errors:
No matching employees found.
Insufficient permissions to access the feature.
Resolutions:
Display a "No Records" message for empty queries.
Redirect unauthorized users to an error page.
2. Technical Specification
2.1 Existing Architecture
Technology Stack:
Front-end: Angular
Back-end: Spring Boot.
Database: Oracle DB.
APIs and Integrations:
Employee Search API (to query employee records).
Employee Details API (to fetch specific employee information).
Staff details are fetched from the HR datamart
Student details are fetched from the SECE system
Data Flow:
Administrator submits search criteria via the UI.
Back-end processes the query and retrieves matching records from the database.
Selected employee details are fetched using an API and displayed.
2.2 Database Details
Schema Overview:
Table:
PERSONNEL
Key Fields:
persid
: Primary Keyroleid
Table:
PERSPOTITION
Key Fields:
pposid
: Primary Keypersid
sectid
2.3 Business Rules
Validation Rules:
Only administrators can access the feature.
Conditional Logic:
If no search criteria is input, return all records.
If multiple matches are found, display them in a list.
If only one match is found, bypass the list and show details directly.
2.4 Performance Metrics
Current Performance:
Search results display in 1-2 seconds under normal load.
Bottlenecks:
Large datasets may cause delayed responses.