Create an ERD using any tool for the scenario below using the specifications listed in class. State
Question:
Create an ERD using any tool for the scenario below using the specifications listed in class. State any assumptions you make.
SR Consulting (SRC) is a firm that creates custom software for its clients. When a client comes to SRC about a job, the managers at SRC determine the staffing needs in terms of the number of consultants needed and the required skills of the consultants. They then locate the available consultants with the necessary skills and assign them to the project. One of the consultants is assigned to be the project manager. When the project is completed the project manager evaluates all of the other consultants who worked on the project, and all of the project consultants evaluate the project manager. A project can be subdivided into multiple projects.
The data items needed for the SRC database include:
- Consultant information including name, address, city, state, zip code, phone number, and email address.
- Descriptions of employee skills.
- Client information including the client name, client contact name, and contact phone number.
- Project information including the project name, client associated with the project, associated subprojects, the project manager, and required skill sets.
- Dates that a consultant started and finished working on a specific project and total hours that the consultant spent working on the project.
- Consultant evaluation information including the date the evaluation was completed, who performed the evaluation, and the evaluation score and comment.
In addition to the above, the following five business rules must be considered:
- A consultant can have one or more skills. If they have a particular skill, a record must be kept regarding whether they have a certification in that skill.
- There are many skills that are needed, some of which no consultants have.
- A consultant can be assigned to multiple projects at one time. There are “down times” in which a consultant might not be assigned to a project.
- A single project may require many different skills.
- A client has at least one project but may have many projects. A project, however, is associated with a single client.