2808ICT - Learning Management Database Implementation - IT/Computer Science Assignment Help

Download Solution Order New Solution
Assignment Task

PART A. Database Implementation

1. Database Design

Design the database using the sample data provided in the Appendix as a starting point. Note that the sample data do not reflect the final design.

The sample data do not reflect the table structure in the database, and you will need to revise the structure of the tables. You need to describe and explain your design choices.

The sample data are not complete either. For example, they do not describe the teaching and managing relationships: academic staff teach courses and admin staff manage courses and enrolments. You need to create those data if required. 
2. SQL Implementation 

Create the tables and insert the data using a SQL script, including proper datatypes and integrity constraints. The data must include but not limited to the sample data provided in the Appendix.
3. Database Backup

Suppose frequent backup of the whole database is expensive, which tables of the database should be backed up more frequently than others? 

Implement the backup and recovery using mysqldump (for the whole database and for those tables requiring more frequent backup). Describe how you made the backup and recovery with the commands you used. 

PART B. Users and Privileges

1. Create Users 

Create a sufficient number of users to demonstrate different sets of privileges.A ‘set’ of privileges (or views) are similar privileges (or views) applied to multiple users. For each set of privileges (or views), you need to demonstrate the SQL implementation for at least one user to whom the privileges apply.
2. Assign Table-level Privileges 

Assign at least 5 sets of privileges to the users, including the provided 3 sets below.For eachset of privileges that you propose, you must explain what the privileges are: which group of users need to have what access to which (parts of) tables.Here are 3 sets of privileges asexamples, which you need to include in your implementation:

• Admin staff managing enrollment can modify only enrollment information, and admin staff managing courses can modify only course information
• Both academic staff and students can see information about courses, but students cannot edit it.
• Academic staff can see the names and genders of the students but not their private information like birthdays or phone numbers.
3. Create Viewsand Related Privileges 

Create at least 5 sets of views with at least 2 sets involving joins of two or more tables. For each set of views, explain why and how you implement the views. Assign the views to appropriate users.Here are some 3 sets of views as examples, which you need to include in your implementation:

• Students should only see the grades that belong to themselves (and read only). 
• Academic staffcan only see the enrolment of the courses they teach. 
• Academic staff can only modify grades of the course they teach. 
PART C. SQL Injection Test

To test SQL injection, a very simple web interface is provided for entering student information.You need to download the sqlitest.zip file from the course website and unzip it to obtain the three required files: index.html, unsafe_main.php, safe_main.php.You are not required to fully understand everything in those files, but you will need to use them to access the database you developed. In particular, you willtry to modify the tables with SQL injection.

1. Setup SQL Injection Environment

Step 1. In your VM, create a new directory /var/www/sqlitest, and copy the files index.html,unsafe_main.php, and safe_main.phpin thatdirectory. Set the permissions of the files so that anyone can read and execute them.
Step 2. To access the web interface in your VM with the URL http://www.sqlitest.com, you need to modify the /etc/hosts file in the VM to map URL to the VM’s local IP address(i.e.,127.0.0.1).
To do this, you can edit the /etc/hosts file (using gedit) to append the following line
127.0.0.1 www.sqlitest.com

Also,you need to edit the file /etc/apache2/sites-available/000-default.confin the VM to configure the Apache server. Append the following linesto the file
<VirtualHost *:80>
ServerName http://www.sqlitest.com
DocumentRoot /var/www/sqlitest
</VirtualHost>
Step 3. Restart the Apache server and you should be able to open the following webpage via the URL http://www.sqlitest.com in the browser.

PART D. Advanced Data Management (for 7623ICT students only)
MySQL is a popular choice for information storage and processing, but many other information storage and processing methods exist. Pick any 3 of the following
• MySQL
• Cloud-hosted databases
• NoSQL databases
• Hadoop distributed file system databases
• Graph databases and answer the following questions with respect to your three chosen systems:
1. What are the benefits and drawbacks of each system?
2. For which kinds of data would you choose each system?
3. What security features are available for each system?

 

This 2808ICT IT/Computer Science has been solved by our IT/Computer Science Experts at My Uni Paper. Our Assignment Writing Experts are efficient to provide a fresh solution to this question. We are serving more than 10000+ Students in Australia, UK & US by helping them to score HD in their academics. Our Experts are well trained to follow all marking rubrics & referencing style.

Be it a used or new solution, the quality of the work submitted by our assignment experts remains unhampered. You may continue to expect the same or even better quality with the used and new assignment solution files respectively. There’s one thing to be noticed that you could choose one between the two and acquire an HD either way. You could choose a new assignment solution file to get yourself an exclusive, plagiarism (with free Turnitin file), expert quality assignment or order an old solution file that was considered worthy of the highest distinction.

Get It Done! Today

Country
Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
+

Every Assignment. Every Solution. Instantly. Deadline Ahead? Grab Your Sample Now.