1)Each lecturer that teaches at the college has an ID, a name, an email address, a phone number, and teaches one or more courses
2)Each student has an ID, a name, an email address, a phone number, and a degree such as freshman, sophomore, junior, senior, postgraduate…etc
3)Each Librarian has an ID, phone number, a name, a shift, and salary.
4)Each Book has an ISBN, a name, content, and a section. Components of section are section name, and section shelf.
5)A book can be borrowed by one or more lecturers, while a lecturer can borrow one or more books.
6)A book can be read by one or more users, a user can read one or more books.
7)A librarian can issue one or more books, while a book can be issued by only one librarian.
8)A writer has an ORCID, a name, an email, a phone number, and a type such as author, scientist, researcher…etc.
9)A book can be written by one or more writers, and a writer can write one or more books.
10)A PC has an IP-address and a password.
11)A PC can be accessed by one or more lecturers, while a lecturer may access as many pcs as he likes per day.
12)A student can access only one PC, and a PC may be accessed by only one student.
13)Librarian can assign as many PCs as he can per day, and a PC can be assigned by only one Librarian.
14)A publishing house has a publisher-id, a name, a phone number, and an email-address.
15)A book can be published by one or more publishing houses, a publishing house can publish one or more books.
While we were viewing our ERD, we noticed that there are common attributes between 2 entities, the students and the lecturers… So… We used the Generalization method. We created a new entity called users as a Super class, where a user must be either a lecturer or a student but not both.