Question

Project Description In this project, you will design and implement a database for keeping track of...

Project Description

In this project, you will design and implement a database for keeping track of information for an online “SOCIAL NETWORK” system (e.g. a simplified version of Facebook!). You will first design an EER schema diagram for this database application. Then, you will map the EER schema into a relational database schema and implement it on ORACLE or MySQL or some other relational DBMS. Finally, you will load some data into your database (via user Interface) and create some queries and update transactions.

Part 1

Assume that the following requirements were collected for this application:

1. The database keeps track of PROFILEs, PAGEs, POSTs (Text, Audio, Video, Photo), COMMENTs, LIKEs, MESSAGEs, and etc.

2. Each PROFILE (Account) has a unique PROFILE_ID (assume this is a unique integer generated by the system for each new account, such as 1, 2, 3, ...), a First Name (string MAX 100 characters), a Last Name (string MAX 100 characters), a Mobile No. (a string of 12 characters such as “817-333-6000”), an Email (a UNIQUE string of MAX 100 characters), a User Name (a UNIQUE string of between 8-12 characters), a Password (a string of between 8-12 characters), Created Date (Datetime), and etc.

3. Each PAGE has a PAGE_ID (a unique number for each page–assume it is a number 1001,1002, 1003, ...), Page Name, Description, Category (a word or two to best describe each page), Members (registered profiles e.g. likes), Views, Admin(s), Image(e.g. a header/logo for each page).

4. The database will keep track of the current (active) PAGES as well as active PROFILES. For each PAGE, the information will include the specific POSTs and PROFILEs as well as the COMMENTS for each POST, Created Date, and likes, etc.

5. The database also will keep track of the MESSAGES between different PROFILES (Accounts). For each Message, the information will include the Sender, Receiver, Message, CreatedDate, etc.

You will first design an EER schema diagram based upon the SOCIAL NETWORK database requirements specified above and create an EER schema diagram and documentation report describing your design choices. You should also explicitly state any assumptions you made that were not part of the requirements listed above. As part of this assignment, you should identify any missing or incomplete requirements, and explicitly state them in your documentation

Part 2

The second part of the assignment will be to map the EER schema design to a relational database schema and create the tables corresponding to the relational schema using the ORACLE DBMS (or MySQL). You will add to your report a listing of the CREATE TABLE statements. Specify as many constraints (key, referential integrity) as you can in the relational schema. You should state the choices you made during the EER-to-relational mapping, and the reasons for your choices.

Part 3

The third part of the project is to load some data into the database and apply certain update transactions and retrieval queries. You will create your own data. Include at least 20 accounts, and (at least) 10 pages, and (at least) 10 posts in each page.

The followings are the tasks for the third part of the project:

1. Load some initial data (as discussed above) into the database tables that you created in Part 2 of the assignment. You can either write a loading program, or use SQL/PLUS (insert command), or use SQL/FORMS or any other method you are familiar with. Your data should be kept in files so that it can easily be reloaded during debugging. The data format should be designed by you. (Note: You can also use the transactions created by you in item 3 below to load some of the data).

2. Write queries to retrieve and print all the data you entered. Try to print the data so that it is easy to understand (for example, print appropriate headings, such as: Accounts, Pages, Posts, Messages, etc.).

3. Write the following database update transactions using either PRO*Cor JAVA/JDBC or PHP or some other programming language or scripting language.

3.1 The first transaction is to add information about a new PROFILE (ACCOUNT).

3.2 The second transaction is to add all the information about a new PAGE.

3.3 The third transaction is to create a new POST (this must find an available account and page).

3.4 The fourth transaction is to show the details of a page (by PAGE_ID).

3.5 The fifth transaction is to return a list of posts by specific account (AccountID) in different pages.

3.6 The sixth transaction is to return the total posts/comments in of each page by all accounts(users) on specific date (e.g. PostDate).

3.7 The seventh transaction is to update information of pages (e.g. update the Page name(s) or description of page(s)).

3.8 The eighth transaction is to delete a PROFILE (What if a Profile is the Admin of at least one page?!)

4. Each transaction should have a user-friendly interface to enter the information needed by the transaction. This can either be a Web-based interface (recommended), a command line interface, or a forms interface.

5. Test your transactions by adding a few new Accounts, Pages, and Posts.

1. Parts 1 and 2: This should include for Part1 the EERdiagrams for your designs as well as documentation describing any assumptions you made, and the reasons for your design choices. Draw the EER diagrams using the notation in the textbook. You can also use UML class diagrams notation. You can use any drawing tool for drawing your diagrams. For part 2, what you turn in should include your relational schema diagram design and your CREATE table statements, and documentation describing your EER-to-relational mapping choices.

2. Part 3 : This will include a demo demonstrating that your implementation works, as well as screenshots demonstrating your transactions.

0 0
Add a comment Improve this question Transcribed image text
Answer #1

EER digaram i.e.Enhanced entity-relationship (EER) diagrams are basically expanded version of Entity Relationship diagrams. EER models eases the process for designing databases. Databases can be planned more thoroughly with the help of advanced features of EER models, delving into the properties and constraints with more precision.

Basically, EER diagram contains all the elements of an ER digaram along with addition concepts like :

  • Relationship inheritances or Attributes
  • Category or Types
  • Generalization and Specialization
  • Subclasses and superclasses

Ultimately, an EER diagram is like drawing an ER diagram by including elements that help to depict aggregation, generalization, and specialization.

Regarding the mentioned case of SOCIAL NETWORD System, below diagram would help to provide a basic idea of EER model:

Social netsovin aite Usta Name 순maij Mobila No Dat Password Status CAchue) Aduin ember e-Nan PosT Cemments lave os Con

Assumptions made :

1. Profile or account as the main entity, Admin and Members are entities dependent on Profile (User).

2. Page is the entity that is linked to Post.

3. Post can be of several types like audio, video , text, messages, comments, images etc. All these entites are represented as dependent entity of Post , linked via Post Id Attribute.

4. Entities are shown in square boxes , attributes with eclipes while relationships are depicted using diamond boxes.

Add a comment
Know the answer?
Add Answer to:
Project Description In this project, you will design and implement a database for keeping track of...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Written Assignment#1: Preliminary Database Design Preliminary Database Design The purpose of this project is to give...

    Written Assignment#1: Preliminary Database Design Preliminary Database Design The purpose of this project is to give you some experience in database design. We will explore both theoretical and practical aspects of the database design steps. Once you master it well, it is a simple matter of translating the theoretical concepts you developed into the terms of a concrete DBMS to implement the database. Conceptual/Logical Database Design You must choose some facet of real life that you feel needs to be...

  • DATABASE SYSTEMS Project INDIVIDUAL WORK DELIVERABLE #: SUBMISSION DATE No Group Work Allowed Apr...

    DATABASE SYSTEMS Project INDIVIDUAL WORK DELIVERABLE #: SUBMISSION DATE No Group Work Allowed April 8 Introduction to Coursework You have been approached by a University for the design and implementation of a relational database system that will provide information on the courses it offers, the academic departments that run the courses, the academic staff and the enrolled students. The system will be used mainly by the students and the academic staff. The requirement collection and analysis phase of the database...

  • Description Design a database that contains 3-5 related tables to model a scenario of your intere...

    Description Design a database that contains 3-5 related tables to model a scenario of your interest. You should be somewhat familiar with the scenario that you choose to make informed design decisions. For example, if you want to design a database for a small business, you need to know the business logistic in the company. Other examples for your database are a database for a bookstore, a gym (e.g., YMCA), or a small organization. Do step 1 Step 1: Write...

  • For this course project, you will use various database management and programming techniques to design and...

    For this course project, you will use various database management and programming techniques to design and develop an online sales and distribution system for a fictitious organization. There are two phases—you will complete the first phase this week and the second phase in W5 Assignment 2. Rationale The focus of the project is to develop your database programming skills. This project will help you get a fair idea of the sales and distribution system in any organization that has a...

  • This project will create a GUI to access data held in a MySQL database. You will design a GUI usi...

    This project will create a GUI to access data held in a MySQL database. You will design a GUI using Swing components that will allow you to add a record, delete a record, update a record and display all current records int he database. The design is your choice. Extra credit will be given for the ability to search for a specific record by a key value. You will need to provide details of the database domain, table and record...

  • DATABASES You are required to design and implement a relational database to help the local community...

    DATABASES You are required to design and implement a relational database to help the local community center better serve the residents in your neighborhood. Database Specifications: In your preliminary analysis, you have determined the following basic facts about the community center and the services it provides to the residents in the neighborhood: - The community center serves multiple areas which fall into different zip codes.  - The community center provides collaborative family based care services. An immediate family is...

  • Garden Glory Project Questions The following Garden Glory database design is used in Chapter 3: OWNER...

    Garden Glory Project Questions The following Garden Glory database design is used in Chapter 3: OWNER (OwnerID, OwnerName, OwnerEmail, OwnerType) PROPERTY (PropertyID, PropertyName, Street, City, State, Zip, OwnerID) EMPLOYEE (EmployeeID, LastName, FirstName, CellPhone, ExperienceLevel) SERVICE (PropertyID, EmployeeID, SeviceDate, HoursWorked) The referential integrity constraints are: OwnerID in PROPERTY must exist in OwnerID in OWNER PropertyID in SERVICE must exist in PropertyID in PROPERTY EmployeeID in SERVICE must exist in EmployeeID in EMPLOYEE Garden Glory has modified the EMPLOYEE table by adding...

  • First, draw an EER that models the given requirements. You will play with the Bank Database...

    First, draw an EER that models the given requirements. You will play with the Bank Database in this homework. Please download and execute the bank.sql from Canvas to create this database in your MySQL system. Please submit the results as a zip file with a name <yourname>-bank.zip. Consider modeling a bank: . The bank keeps personal information of each customer including name, sex, address, phone number, social security number, and date of birth. . Each customer owns one or more...

  • Create web pages for your database using PHP. You should have one page that will return...

    Create web pages for your database using PHP. You should have one page that will return all the information from the database. You should create additional pages that will allow you to do various queries of your database. You should be able to retrieve and insert data; also include functionality to delete data from your database. Create an html form that will allow you to enter in new information for the database. The information should be handled by a PHP...

  • You are the lead human–computer interaction (HCI) engineer on a major design project for an organization...

    You are the lead human–computer interaction (HCI) engineer on a major design project for an organization of your choice. Employees or customers will use this new system and user interface (UI) design to perform data entry for the organization. The UI will need to provide the required input and output to characterize the type of data collected by the organization. Choose an organization, such as a business, nonprofit group, government, or another organization. Provide a description of your chosen organization,...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT