Professional Documents
Culture Documents
Project Design
Project Design
Project Design
Objects
1. Two objects namely Employee and Skills will act as entities for the Bench application.
2. The Employee entity will have following:
Name
ID
Grade
Location
Skills
3. The Skills entity will have following properties:
ID
Skill
4. Employee entity will be mapped to the Skills entity with a ManyToMany relationship.
APIs
1. Employee controller class will offer following APIs:
Get Employee: Will get all the Employees available on bench.
Post Employee: Will allow a user to add Employee details to the bench database.
Get Employee by Skill: Will allow user to get a list of employees having the required skills
Delete Employee: Will allow the user to delete the Employee details from the bench
database, when the employee is tagged to a project.
Update Employee: Will allow to user to update the Employee details like Location, Skills
and Grade.
2. Skill controller class will offer following APIs:
Get skills: Will get all the skills available in the database.
Post skills: Will allow user to add new skills to the database.
Tables
1. A total of three tables will be created in the database: Employee, Skills and EMP-SKILLS.
2. Employee table will hold data of Employee.
3. Skill Table will hold Skill and its ID.
4. EMP-SKILLS will have two columns joining Employee ID and the Skills the employee has.