The system models employees within a company to facilitate payroll processing. There are two employee types: engineers and trainees.
Engineers have attributes for ID, name, age, salary, working hours, and grade. Grade encompasses position, tax rate, and pay rate. An engineer's salary can be calculated from working hours, pay rate, and tax rate.
Trainees possess attributes for ID, name, age, salary, university, GPA, and academic year. A trainee's salary may be fixed.
The system provides functions to:
- Add new employees to the payroll
- Calculate an engineer's salary based on their working hours, pay rate, and tax rate
- Generate payroll information for all employees
- Retrieve a trainee's salary
Positions and grades are defined as enumerations to standardize tax rates and pay rates according to job role.
Hope this rewrite helps clarify the key ideas! Let me know if you have any other questions.
Hassan El-tobgy , Farida El-husseiny , Zeina Hesham , Mariam Diaa