Project Design

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 1

Bench Application 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.

You might also like