Ask DBMS Expert


Home >> DBMS

Advanced Relational Database Design and Technology

As a postgraduate student taking CSC8500, you are expected to conducted a research project to demonstrate your understanding of the key concepts and methodology of relational database design that have been covered in the course.

In this project you will need to conduct a task of database design from scratch. You need to specify a particular application scenario where the database is to be designed. For example, you can design a relational database for a university or a company or other organizations. In this project, you need to go through several major milestones in the database design lifecycle as taught in the course (relevant chapter/section in the textbook of the milestones is also noted below).

Please note that the database you design in the project will be subject to several requirements from views, conceptual design, logic design, functional dependencies and normalization. Please read the instructions below carefully for those requirements before designing your database.

1. System definition

You need to describe the scope and boundaries of the database system and the major user views that will be involved.

It is expected that your database should provide at least three different (possibly overlapping) views.

2. Requirements collection and analysis

You need to collect and analyze the information about the part of the enterprise/organisation to be served by your database. Information is gathered for each major user view about the description of the data used or generated and the details of how these data are to be used or generated. Then, such information is analyzed in order to identify the requirements or features to be included in the database systems.

You need to utilize one of the two approaches discussed in Section 10.5 to manage multiple user views.

3. Database design

3.1 - Conceptual database design using ER modeling

ER modeling technique will be used to conduct conceptual design of your database. You need to incorporate into the ER diagram all the entities, relationships and constraints involved in the database.

Please make sure that your database is designed as such so that the following requirements are met for the ER diagram:

  • There should be at least five different entities in the ER diagram;
  • All the three different types of relationships, i.e., 1-to-1, 1-to-many and many-to-many relationships, should exist in the ER diagram.

There may be multiple different ways to draw the ER diagrams. For ease of marking, please stick to the way taught in the course for drawing the ER diagram.

Please use the word drawing tool and other third-party drawing tools for producing the ER diagram.

Please do not draw the diagram by hand.

3.2 - Logic database design

The ER diagram produced in the conceptual design will be transformed to the logical structure, i.e., relational tables, based on the transformation rules covered in the course. Primary key should be highlighted for each of the tables.

Please make sure that your database is designed as such so that the following requirements are met for the transformation:

  • There should be at least five relational tables generated after the transformation;
  • All the three different types of relationships, i.e., 1-to-1, 1-to-many and many-to-many relationships, should exist in the database so that different transformation strategies will be applied accordingly.

You need to state explicitly in each transformation what's type of the relationship it is and the corresponding strategy to be applied for the transformation. Only presenting the transformed relational tables without the detailed transformation explanation will be subject to a significant loss of marks.

Please present the transformed tables in both their full and abbreviated syntax.

3.3 - Normalization

The normalization process should start off with a single big table containing all the possible attributes involved in the database. To carry out normalization, you should first identify all the functional dependencies existing in the database. Please present only the full functional dependencies and try to minimize their LHS and maximize the RHS. Then, identify the candidate keys, primary keys and secondary keys using the functional dependencies.

Please make sure that your database is designed as such so that the following requirements are met for the functional dependencies and the keys:

  • There are at least five full functional dependencies;
  • At least one table has a secondary key.

The normalization will start from 1NF and continue until reaching BCNF. Please note that your database should feature different normalization results for at least 2nd Normal Form (2NF) and 3th Normal Form (3NF).

You should provide detailed explanation for each normalization step to elaborate on how the tables are split and why the higher normalization form level can be satisfied by doing so. Only presenting the normalization results without the detailed transformation explanation will be subject to a significant loss of marks.

4. Database queries

You are supposed to demonstrate your ability in querying the your database created.

You need to generate at least five different SQL queries against your database, one of which should be used to update the content of the database and the others be used to retrieve information that should cover all the operations of selection, projection, join of up to three different tables, views and outer join (either left, right or full). It is not required that a single SQL query covers all the required operations though. You need to provide explanations on the purpose (i.e., what's the information to be retrieved) by each query.

There must be at least one query where you can provide two possible SQL statement solutions that produce the same correct results. Please present both solutions to this query.

Besides generating SQL queries, please write out the corresponding relational algebra and relational calculus (tuple or domain-based at your choice) statements for the SQL queries that retrieve information from the database (namely, data manipulation SQL).

Please use the XAMPP system that we used in the practicum of this course to test your SQL queries.

Screen snapshots of the query results are supposed to provide to prove the correctness of the query results. The screen snapshots should be included in the project report.

5. Implementation of the database system and video demonstration

A fully functional database system is expected to implemented based on the database that you have designed in this project. The system can be standalone or web-based using a two-tier or three-tier database system architecture. This system should feature necessary user-friendly interface for users to interact with the database, enabling them to submit SQL queries against the database and view the results. The interface will allow users to both update the content of the database and retrieve information from it. You can choose appropriate programming languages and database platforms for the implementation. Please note that the choice of programming languages and database platforms is up to you and, because of the possible variety of choices made by students, the technical support from examiners is minimum.

To facilitate the evaluation of your database system implemented, you need to make and submit a short (3-5 min.) video clip as a demonstration to show how your system is executed and working. This video demonstration is important as it provides a good opportunity for training your skills in presenting your good work to others and significantly facilitate the evaluation of your project by the marker. Your video should cover the whole operation of your system, from the start of the system until finishing going through all the major functions/features that are developed.

You can use ANY existing on-screen activity capturing softwares to produce this video. One of the good candidates is Camtasia Studio or Camtasia Mac (www.techsmith.com/Camtasia). This software is not free though but you can download a trial version for producing your video.

Your video shouldn't be fancy and doesn't need to have any (sophisticated) editing. A simple recording of running your system is sufficient. It is required to record voice in the video at the same time for any explanations you may want to provide. Please export the video using the lowest resolution in order to keep its size minimum.

Please submit the video in some commonly-used formats such as MP4 or AVI. You can submit the video together with other documentations and source code of your project to Studydesk or you can upload your video to some other websites such as YouTube and provide a link in your submission.

DBMS, Programming

  • Category:- DBMS
  • Reference No.:- M92322728

Have any Question?


Related Questions in DBMS

Data mining assignment -in this assignment you are asked to

Data Mining Assignment - In this assignment you are asked to explore the use of neural networks for classification and numeric prediction. You are also asked to carry out a data mining investigation on a real-world data ...

Sql query assignment -for this assignment you are to write

SQL Query Assignment - For this assignment you are to write your answers in a word document. This assignment is in three parts: Part A (reporting queries), Part B (query performance), Part C (query design). For this assi ...

The groceries datasetimagine 10000 receipts sitting on your

The groceries Dataset Imagine 10000 receipts sitting on your table. Each receipt represents a transaction with items that were purchased. The receipt is a representation of stuff that went into a customer's basket. That ...

You are in a real estate business renting apartments to

You are in a real estate business renting apartments to customers. Your job is to define an appropriate schema using SQL DDL in MySQL. The relations are Property(Id, Address, NumberOfUnits), Unit(ApartmentNumber, Propert ...

Objectivethe objective of this lab is to be familiar with a

OBJECTIVE: The objective of this lab is to be familiar with a process in big data modeling. You're required to produce three big data models using the MS PowerPoint software. This tool is available on UMUC Virtual Deskto ...

The relation memberstudentid organizationid roleid stores

The relation Member(StudentId, OrganizationId, RoleId) stores the membership information of student joining organization. For example, ('S1', 'O2', 'R3') indicates that student with Id 'S1' joined the organization with i ...

Relational database exerciseyou have been assigned to a new

Relational Database Exercise: You have been assigned to a new development team. A client is requesting a relational database system to manage their present store with the anticipation of adding more stores in the future. ...

Relational database design a given the following business

Relational Database Design A) Given the following business rules, identify entity types, attributes (at least two attributes for each entity, including the primary key) and relationships, and then draw an Entity-Relation ...

We can represent a data set as a collection of object nodes

We can represent a data set as a collection of object nodes and a collection of attribute nodes, where there is a link between each object and each attribute, and where the weight of that link is the value of the object ...

Data model development and implementationpurpose of the

Data model development and implementation Purpose of the assessment (with ULO Mapping) The purpose of this assignment is to develop data models and map Database System into a standard development environment to gain unde ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As