├── project ├── phase 1 │ ├── submission │ │ └── submission-file-example │ └── README.md ├── phase 2 │ ├── submission │ │ └── submission-file-example │ └── README.md ├── phase 3 │ ├── submission │ │ └── submission-file-example │ └── README.md ├── images │ ├── rfp.png │ ├── folder.png │ ├── project-timeline-1.png │ └── project-timeline-2.png ├── submission │ ├── phase1.md │ ├── phase2.md │ └── phase3.md └── project_overview.md ├── lab ├── submission │ ├── submissions │ │ ├── lab1 │ │ │ └── submission-file-example │ │ ├── lab2 │ │ │ └── submission-file-example │ │ ├── lab3 │ │ │ └── submission-file-example │ │ └── lab4 │ │ │ └── submission-file-example │ ├── lab-exercise3.md │ ├── lab-exercise4.md │ ├── lab-exercise1.md │ └── lab-exercise2.md ├── Student notes │ ├── DDL │ │ ├── DFo_6_3_sg.pdf │ │ └── obl Sports.ddl │ ├── DML1 │ │ └── DFo_6_4_sg.pdf │ ├── DML2 │ │ ├── DFo_6_6_sg.pdf │ │ ├── DFo_6_7_sg.pdf │ │ └── DFo_6_8_sg.pdf │ └── DML3 │ │ └── DFo_6_9_sg.pdf └── Lab project │ ├── DDL │ ├── SQL1-DDL (DFo_6_3_Project).pdf │ └── obl Sports.ddl │ ├── DML1 │ ├── SQL2-DML1 PART 1 (DFo_6_4_1_Project).pdf │ ├── SQL2-DML1 PART 2 (DFo_6_4_2_Project).pdf │ └── sports data.sql │ ├── DML2 │ ├── SQL3-DML2 PART 1 (DFo_6_6_1_Project).pdf │ ├── SQL3-DML2 PART 2 (DFo_6_6_2_Project).pdf │ ├── SQL3-DML2 PART 3 (DFo_6_7_1_Project).pdf │ ├── SQL3-DML2 PART 4 (DFo_6_7_2_Project).pdf │ ├── SQL3-DML2 PART 5 (DFo_6_8_1_Project).pdf │ └── SQL3-DML2 PART 6 (DFo_6_8_2_Project).pdf │ └── DML3 │ ├── SQL4-DML3 PART 1 (DFo_6_9_1_Project).pdf │ └── SQL4-DML3 PART 2 (DFo_6_9_2_Project).pdf ├── README.md └── CI.md /project/phase 1/submission/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /project/phase 2/submission/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /project/phase 3/submission/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /lab/submission/submissions/lab1/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /lab/submission/submissions/lab2/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /lab/submission/submissions/lab3/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /lab/submission/submissions/lab4/submission-file-example: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /project/images/rfp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/project/images/rfp.png -------------------------------------------------------------------------------- /project/images/folder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/project/images/folder.png -------------------------------------------------------------------------------- /lab/Student notes/DDL/DFo_6_3_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DDL/DFo_6_3_sg.pdf -------------------------------------------------------------------------------- /lab/Student notes/DML1/DFo_6_4_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DML1/DFo_6_4_sg.pdf -------------------------------------------------------------------------------- /lab/Student notes/DML2/DFo_6_6_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DML2/DFo_6_6_sg.pdf -------------------------------------------------------------------------------- /lab/Student notes/DML2/DFo_6_7_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DML2/DFo_6_7_sg.pdf -------------------------------------------------------------------------------- /lab/Student notes/DML2/DFo_6_8_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DML2/DFo_6_8_sg.pdf -------------------------------------------------------------------------------- /lab/Student notes/DML3/DFo_6_9_sg.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Student notes/DML3/DFo_6_9_sg.pdf -------------------------------------------------------------------------------- /project/images/project-timeline-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/project/images/project-timeline-1.png -------------------------------------------------------------------------------- /project/images/project-timeline-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/project/images/project-timeline-2.png -------------------------------------------------------------------------------- /lab/Lab project/DDL/SQL1-DDL (DFo_6_3_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DDL/SQL1-DDL (DFo_6_3_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML1/SQL2-DML1 PART 1 (DFo_6_4_1_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML1/SQL2-DML1 PART 1 (DFo_6_4_1_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML1/SQL2-DML1 PART 2 (DFo_6_4_2_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML1/SQL2-DML1 PART 2 (DFo_6_4_2_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 1 (DFo_6_6_1_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 1 (DFo_6_6_1_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 2 (DFo_6_6_2_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 2 (DFo_6_6_2_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 3 (DFo_6_7_1_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 3 (DFo_6_7_1_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 4 (DFo_6_7_2_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 4 (DFo_6_7_2_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 5 (DFo_6_8_1_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 5 (DFo_6_8_1_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML2/SQL3-DML2 PART 6 (DFo_6_8_2_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML2/SQL3-DML2 PART 6 (DFo_6_8_2_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML3/SQL4-DML3 PART 1 (DFo_6_9_1_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML3/SQL4-DML3 PART 1 (DFo_6_9_1_Project).pdf -------------------------------------------------------------------------------- /lab/Lab project/DML3/SQL4-DML3 PART 2 (DFo_6_9_2_Project).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IzyanIzzatiK/SECD2523-Database/HEAD/lab/Lab project/DML3/SQL4-DML3 PART 2 (DFo_6_9_2_Project).pdf -------------------------------------------------------------------------------- /project/submission/phase1.md: -------------------------------------------------------------------------------- 1 | # Submission of Project Phase 1 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /project/submission/phase2.md: -------------------------------------------------------------------------------- 1 | # Submission of Project Phase 2 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /project/submission/phase3.md: -------------------------------------------------------------------------------- 1 | # Submission of Project Phase 3 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /lab/submission/lab-exercise3.md: -------------------------------------------------------------------------------- 1 | # Submission of Lab Exercise 3 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /lab/submission/lab-exercise4.md: -------------------------------------------------------------------------------- 1 | # Submission of Lab Exercise 4 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /lab/submission/lab-exercise1.md: -------------------------------------------------------------------------------- 1 | # Submission of Lab Exercise 1 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /lab/submission/lab-exercise2.md: -------------------------------------------------------------------------------- 1 | # Submission of Lab Exercise 2 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 |
No.GroupTimelineFolder
1Hello World
2Pirate King
3Power Ranger
29 | -------------------------------------------------------------------------------- /project/project_overview.md: -------------------------------------------------------------------------------- 1 | # PROJECT OVERVIEW
(DATABASE 20232024 – SEM 1) 2 | 3 | - [DESCRIPTION](#description)
4 | - [PROPOSED SYSTEM REQUIREMENT](#proposed-system-requirement)
5 | - [PROJECT SUBMISSION TIMELINE](#project-submission-timeline) 6 | 7 | ## ** HIGHLY RECOMMENDED to do the project in the same group & case study with SECD2613 (SAD) ** 8 | 9 | ### DESCRIPTION 10 | - Form a group of 4 members (or a maximum of 5 members, only if allowed by lecturers). 11 | Your team must identify ONE system as a case study to be proposed for your team’s project. The system domain must be related to the xxx {lecturer to choose}. 12 | 13 | --- 14 | 15 | The proposed case study should be either a new system or an enhancement of the currently available system. The proposed case study can also be derived from two situations:

16 | a) Manual or not fully computerized/automated systems yet,
17 | b) Existing computerized/automated systems that are having problems. 18 | 19 | --- 20 | 21 | ### PROPOSED SYSTEM REQUIREMENT 22 | Based on the requirements of the stakeholders, each group is required to propose a database system. 23 | 24 | The proposed system must follow the requirements below: 25 | 1. Fulfilled the project requirement. 26 | Please refer to the DB project phases description for further instruction on the report and evaluation for each phase. The evaluation for the project will be based on the course project rubric. 27 | 2. The proposed system must have at least FOUR (4) modules. 28 | Each student in the group will be responsible for designing at least ONE module. This includes the analysis and design task of designing the module (Data Flow Diagram (DFD) and Entity Relation (ER) design). The module must be designed with consideration of the group’s proposed system. Each module should be able to be combined/merged to produce the main DFD (for the proposed system) and global data model (for the database) – refer figure below. 29 | 3. Students will do a demo of the project in the Final Phase. 30 | Students would need to demo: 31 | A relational database schema, working query (DML) based on the DDL design of the project and related to the interface (from SAD). 32 | 33 | --- 34 | 35 | 36 | ### PROJECT SUBMISSION TIMELINE 37 | *This is just a suggested timeline, please refer to your section lecturers for further instruction

38 | ![project timeline 1](images/project-timeline-1.png)

39 | ![project timeline 2](images/project-timeline-2.png) 40 | -------------------------------------------------------------------------------- /lab/Lab project/DDL/obl Sports.ddl: -------------------------------------------------------------------------------- 1 | CREATE TABLE inventory_list ( 2 | id VARCHAR2(11) NOT NULL, 3 | cost NUMBER(7,2) NOT NULL, 4 | units NUMBER(4) NOT NULL, 5 | CONSTRAINT inventory_list_pk PRIMARY KEY ( id ) 6 | ); 7 | 8 | 9 | CREATE TABLE items ( 10 | itm_number VARCHAR2(10) NOT NULL, 11 | name VARCHAR2(20) NOT NULL, 12 | description VARCHAR2(50) NOT NULL, 13 | category VARCHAR2(25) NOT NULL, 14 | color VARCHAR2(15), 15 | "Size" CHAR(1), 16 | ilt_id VARCHAR2(11) NOT NULL, 17 | CONSTRAINT item_pk PRIMARY KEY ( itm_number ) 18 | ); 19 | 20 | 21 | CREATE TABLE price_history ( 22 | start_date DATE NOT NULL, 23 | start_time DATE NOT NULL, 24 | price NUMBER(7,2) NOT NULL, 25 | end_date DATE, 26 | end_time DATE, 27 | itm_number VARCHAR2(10) NOT NULL, 28 | CONSTRAINT price_history_pk PRIMARY KEY ( itm_number, start_date, start_time ), 29 | CONSTRAINT price_history_items_fk FOREIGN KEY ( itm_number ) REFERENCES items ( itm_number ) 30 | 31 | ); 32 | 33 | 34 | CREATE TABLE sales_representatives ( 35 | id VARCHAR2(4) NOT NULL, 36 | email VARCHAR2(50) NOT NULL, 37 | first_name VARCHAR2(20) NOT NULL, 38 | last_name VARCHAR2(30) NOT NULL, 39 | phone_number VARCHAR2(11) NOT NULL, 40 | commission_rate NUMBER(2) NOT NULL, 41 | supervisor_id VARCHAR2(4) NOT NULL, 42 | CONSTRAINT sales_representative_pk PRIMARY KEY ( id ), 43 | CONSTRAINT sre_email_uk UNIQUE (email) 44 | ); 45 | 46 | 47 | CREATE TABLE sales_rep_addresses ( 48 | id VARCHAR2(4) NOT NULL, 49 | address_line_1 VARCHAR2(30) NOT NULL, 50 | address_line_2 VARCHAR2(30), 51 | city VARCHAR2(15) NOT NULL, 52 | zip_code VARCHAR2(7) NOT NULL, 53 | CONSTRAINT sales_rep_address_pk PRIMARY KEY ( id ) 54 | ); 55 | 56 | 57 | CREATE TABLE teams ( 58 | id VARCHAR2(4) NOT NULL, 59 | name VARCHAR2(20) NOT NULL, 60 | number_of_players NUMBER(2) NOT NULL, 61 | discount NUMBER(2), 62 | CONSTRAINT team_pk PRIMARY KEY ( id ) 63 | ); 64 | 65 | 66 | CREATE TABLE customers ( 67 | ctr_number VARCHAR2(6) NOT NULL, 68 | email VARCHAR2(50) NOT NULL, 69 | first_name VARCHAR2(20) NOT NULL, 70 | last_name VARCHAR2(30) NOT NULL, 71 | phone_number VARCHAR2(11) NOT NULL, 72 | current_balance NUMBER(6,2) NOT NULL, 73 | sre_id VARCHAR2(4), 74 | tem_id VARCHAR2(4), 75 | loyalty_card_number VARCHAR2(6), 76 | CONSTRAINT customer_pk PRIMARY KEY ( ctr_number ), 77 | CONSTRAINT ctr_email_uk UNIQUE (email), 78 | CONSTRAINT ctr_lcn_uk UNIQUE (loyalty_card_number) 79 | ); 80 | 81 | 82 | 83 | CREATE TABLE customers_addresses ( 84 | id VARCHAR2(8) NOT NULL, 85 | address_line_1 VARCHAR2(30) NOT NULL, 86 | address_line_2 VARCHAR2(30), 87 | city VARCHAR2(15) NOT NULL, 88 | zip_code VARCHAR2(7) NOT NULL, 89 | ctr_number VARCHAR2(6) NOT NULL, 90 | CONSTRAINT customer_address_pk PRIMARY KEY ( id ) 91 | ); 92 | 93 | 94 | CREATE TABLE orders ( 95 | id VARCHAR2(9) NOT NULL, 96 | odr_date DATE NOT NULL, 97 | odr_time DATE NOT NULL, 98 | number_of_units NUMBER(2) NOT NULL, 99 | ctr_number VARCHAR2(6) NOT NULL, 100 | CONSTRAINT orders_pk PRIMARY KEY ( id ) 101 | ); 102 | 103 | 104 | CREATE TABLE ordered_items ( 105 | quantity_ordered NUMBER(3) NOT NULL, 106 | quantity_shipped NUMBER(3) NOT NULL, 107 | itm_number VARCHAR2(10) NOT NULL, 108 | odr_id VARCHAR2(9) NOT NULL, 109 | CONSTRAINT ordered_item_pk PRIMARY KEY ( itm_number,odr_id ) 110 | ); 111 | 112 | 113 | 114 | ALTER TABLE customers_addresses ADD CONSTRAINT customer_address_customer_fk FOREIGN KEY ( ctr_number ) 115 | REFERENCES customers ( ctr_number ); 116 | 117 | ALTER TABLE customers ADD CONSTRAINT customer_sales_rep_fk FOREIGN KEY ( sre_id ) 118 | REFERENCES sales_representatives ( id ); 119 | 120 | ALTER TABLE customers ADD CONSTRAINT customer_team_fk FOREIGN KEY ( tem_id ) 121 | REFERENCES teams ( id ); 122 | 123 | ALTER TABLE items ADD CONSTRAINT item_inventory_list_fk FOREIGN KEY ( ilt_id ) 124 | REFERENCES inventory_list ( id ); 125 | 126 | ALTER TABLE orders ADD CONSTRAINT order_customer_fk FOREIGN KEY ( ctr_number ) 127 | REFERENCES customers ( ctr_number ); 128 | 129 | ALTER TABLE ordered_items ADD CONSTRAINT ordered_item_item_fk FOREIGN KEY ( itm_number ) 130 | REFERENCES items ( itm_number ); 131 | 132 | ALTER TABLE ordered_items ADD CONSTRAINT ordered_item_order_fk FOREIGN KEY ( odr_id ) 133 | REFERENCES orders ( id ); 134 | 135 | 136 | ALTER TABLE sales_rep_addresses ADD CONSTRAINT sales_rep_add_sales_rep_fk FOREIGN KEY ( id ) 137 | REFERENCES sales_representatives ( id ); 138 | 139 | ALTER TABLE sales_representatives ADD CONSTRAINT sales_rep_sales_rep_fk FOREIGN KEY ( supervisor_id ) REFERENCES sales_representatives ( id ); 140 | 141 | CREATE OR REPLACE TRIGGER fkntm_orders BEFORE 142 | UPDATE OF ctr_number ON orders 143 | BEGIN 144 | raise_application_error( 145 | -20225, 146 | 'Non Transferable FK constraint on table orders is violated' 147 | ); 148 | END; 149 | / 150 | -------------------------------------------------------------------------------- /lab/Student notes/DDL/obl Sports.ddl: -------------------------------------------------------------------------------- 1 | CREATE TABLE inventory_list ( 2 | id VARCHAR2(11) NOT NULL, 3 | cost NUMBER(7,2) NOT NULL, 4 | units NUMBER(4) NOT NULL, 5 | CONSTRAINT inventory_list_pk PRIMARY KEY ( id ) 6 | ); 7 | 8 | 9 | CREATE TABLE items ( 10 | itm_number VARCHAR2(10) NOT NULL, 11 | name VARCHAR2(20) NOT NULL, 12 | description VARCHAR2(50) NOT NULL, 13 | category VARCHAR2(25) NOT NULL, 14 | color VARCHAR2(15), 15 | "Size" CHAR(1), 16 | ilt_id VARCHAR2(11) NOT NULL, 17 | CONSTRAINT item_pk PRIMARY KEY ( itm_number ) 18 | ); 19 | 20 | 21 | CREATE TABLE price_history ( 22 | start_date DATE NOT NULL, 23 | start_time DATE NOT NULL, 24 | price NUMBER(7,2) NOT NULL, 25 | end_date DATE, 26 | end_time DATE, 27 | itm_number VARCHAR2(10) NOT NULL, 28 | CONSTRAINT price_history_pk PRIMARY KEY ( itm_number, start_date, start_time ), 29 | CONSTRAINT price_history_items_fk FOREIGN KEY ( itm_number ) REFERENCES items ( itm_number ) 30 | 31 | ); 32 | 33 | 34 | CREATE TABLE sales_representatives ( 35 | id VARCHAR2(4) NOT NULL, 36 | email VARCHAR2(50) NOT NULL, 37 | first_name VARCHAR2(20) NOT NULL, 38 | last_name VARCHAR2(30) NOT NULL, 39 | phone_number VARCHAR2(11) NOT NULL, 40 | commission_rate NUMBER(2) NOT NULL, 41 | supervisor_id VARCHAR2(4) NOT NULL, 42 | CONSTRAINT sales_representative_pk PRIMARY KEY ( id ), 43 | CONSTRAINT sre_email_uk UNIQUE (email) 44 | ); 45 | 46 | 47 | CREATE TABLE sales_rep_addresses ( 48 | id VARCHAR2(4) NOT NULL, 49 | address_line_1 VARCHAR2(30) NOT NULL, 50 | address_line_2 VARCHAR2(30), 51 | city VARCHAR2(15) NOT NULL, 52 | zip_code VARCHAR2(7) NOT NULL, 53 | CONSTRAINT sales_rep_address_pk PRIMARY KEY ( id ) 54 | ); 55 | 56 | 57 | CREATE TABLE teams ( 58 | id VARCHAR2(4) NOT NULL, 59 | name VARCHAR2(20) NOT NULL, 60 | number_of_players NUMBER(2) NOT NULL, 61 | discount NUMBER(2), 62 | CONSTRAINT team_pk PRIMARY KEY ( id ) 63 | ); 64 | 65 | 66 | CREATE TABLE customers ( 67 | ctr_number VARCHAR2(6) NOT NULL, 68 | email VARCHAR2(50) NOT NULL, 69 | first_name VARCHAR2(20) NOT NULL, 70 | last_name VARCHAR2(30) NOT NULL, 71 | phone_number VARCHAR2(11) NOT NULL, 72 | current_balance NUMBER(6,2) NOT NULL, 73 | sre_id VARCHAR2(4), 74 | tem_id VARCHAR2(4), 75 | loyalty_card_number VARCHAR2(6), 76 | CONSTRAINT customer_pk PRIMARY KEY ( ctr_number ), 77 | CONSTRAINT ctr_email_uk UNIQUE (email), 78 | CONSTRAINT ctr_lcn_uk UNIQUE (loyalty_card_number) 79 | ); 80 | 81 | 82 | 83 | CREATE TABLE customers_addresses ( 84 | id VARCHAR2(8) NOT NULL, 85 | address_line_1 VARCHAR2(30) NOT NULL, 86 | address_line_2 VARCHAR2(30), 87 | city VARCHAR2(15) NOT NULL, 88 | zip_code VARCHAR2(7) NOT NULL, 89 | ctr_number VARCHAR2(6) NOT NULL, 90 | CONSTRAINT customer_address_pk PRIMARY KEY ( id ) 91 | ); 92 | 93 | 94 | CREATE TABLE orders ( 95 | id VARCHAR2(9) NOT NULL, 96 | odr_date DATE NOT NULL, 97 | odr_time DATE NOT NULL, 98 | number_of_units NUMBER(2) NOT NULL, 99 | ctr_number VARCHAR2(6) NOT NULL, 100 | CONSTRAINT orders_pk PRIMARY KEY ( id ) 101 | ); 102 | 103 | 104 | CREATE TABLE ordered_items ( 105 | quantity_ordered NUMBER(3) NOT NULL, 106 | quantity_shipped NUMBER(3) NOT NULL, 107 | itm_number VARCHAR2(10) NOT NULL, 108 | odr_id VARCHAR2(9) NOT NULL, 109 | CONSTRAINT ordered_item_pk PRIMARY KEY ( itm_number,odr_id ) 110 | ); 111 | 112 | 113 | 114 | ALTER TABLE customers_addresses ADD CONSTRAINT customer_address_customer_fk FOREIGN KEY ( ctr_number ) 115 | REFERENCES customers ( ctr_number ); 116 | 117 | ALTER TABLE customers ADD CONSTRAINT customer_sales_rep_fk FOREIGN KEY ( sre_id ) 118 | REFERENCES sales_representatives ( id ); 119 | 120 | ALTER TABLE customers ADD CONSTRAINT customer_team_fk FOREIGN KEY ( tem_id ) 121 | REFERENCES teams ( id ); 122 | 123 | ALTER TABLE items ADD CONSTRAINT item_inventory_list_fk FOREIGN KEY ( ilt_id ) 124 | REFERENCES inventory_list ( id ); 125 | 126 | ALTER TABLE orders ADD CONSTRAINT order_customer_fk FOREIGN KEY ( ctr_number ) 127 | REFERENCES customers ( ctr_number ); 128 | 129 | ALTER TABLE ordered_items ADD CONSTRAINT ordered_item_item_fk FOREIGN KEY ( itm_number ) 130 | REFERENCES items ( itm_number ); 131 | 132 | ALTER TABLE ordered_items ADD CONSTRAINT ordered_item_order_fk FOREIGN KEY ( odr_id ) 133 | REFERENCES orders ( id ); 134 | 135 | 136 | ALTER TABLE sales_rep_addresses ADD CONSTRAINT sales_rep_add_sales_rep_fk FOREIGN KEY ( id ) 137 | REFERENCES sales_representatives ( id ); 138 | 139 | ALTER TABLE sales_representatives ADD CONSTRAINT sales_rep_sales_rep_fk FOREIGN KEY ( supervisor_id ) REFERENCES sales_representatives ( id ); 140 | 141 | CREATE OR REPLACE TRIGGER fkntm_orders BEFORE 142 | UPDATE OF ctr_number ON orders 143 | BEGIN 144 | raise_application_error( 145 | -20225, 146 | 'Non Transferable FK constraint on table orders is violated' 147 | ); 148 | END; 149 | / 150 | -------------------------------------------------------------------------------- /project/phase 2/README.md: -------------------------------------------------------------------------------- 1 | # Project Phase 2 2 | ## Semester 1 2023/2024 3 | 4 | 5 | - [P2 Guidlines](#p2-guidelines) 6 | - [P2 Database Conceptual Design](#p2-database-conceptual-design) 7 | - [P2 Rubrics](#p2-rubric) 8 | - [1. Reporting](#1-reporting-2) 9 | - [2. ERD Design Process ](#2erd-design-process-3) 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
SubjectSubject : Database (SECD2523)
Section
TaskPhase 2 (P2) – Database Conceptual Design (ERD) (5%)
DueWEEK 10 (10 Dec – 16 Dec 23)
26 | 27 | --- 28 | 29 | ## P2 Guidelines 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 48 | 58 | 59 |
NoTaskDeliverables (Items in Database)
1. 40 |
    41 |
  • Based on the requirements in P1, identify the entities and attributes of each entity.
  • 42 |
  • Determine all possible relationships between entities.
  • 43 |
  • Determine the multiplicities for each relationship.
  • 44 |
  • Create a conceptual ERD to represent the information above.
  • 45 |
  • Include enhanced ERD features wherever possible.
  • 46 |
  • Produce the data dictionary for the created conceptual design
  • 47 |
49 | DB conceptual design 50 |
    51 |
  1. Proposed business rule
  2. 52 |
  3. Proposed data & transactional
  4. 53 |
  5. Conceptual ERD (minimum 5 tables)
  6. 54 |
  7. Enhanced ERD (EERD)
  8. 55 |
56 | Data dictionary 57 |
60 | 61 | 62 | 63 | --- 64 | 65 | 66 | ## P2 Database Conceptual Design 67 | Prepare a Database conceptual design as below: 68 | - 1.0 Introduction 69 | - 2.0 DFD (to-be) 70 | - 3.0 Data & Transaction requirement 71 | - 3.1 Proposed business rule 72 | - 3.2 Proposed data & transactional 73 | - 4.0 Database conceptual design 74 | - 4.1 Conceptual ERD 75 | - 4.2 Enhanced ERD (EERD) 76 | - 5.0 Data dictionary 77 | - 6.0 Summary 78 | 79 | --- 80 | 81 | ## P2 Rubric 82 | 83 | ### 1. Reporting (2%) 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Document the whole process of designing the ERDDocumented ALL reports on the construction of the database design. Shows FULL understanding of the requirement based on the case study.Documented MAJOR reports on the construction of the database design. Shows a GOOD understanding of the requirement based on the case study.Documented MINIMAL reports on the construction of the database design. Shows MINIMAL understanding of the requirement based on the case study.LITTLE evidence that the documents are based on the given case study.
101 | 102 | ### 2. ERD Design Process (3%) 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Produces the necessary primary keys (PK) and/or foreign keys (FK)Correctly choose ALL the PKs and FKs, with regard to the naming conventionCorrectly choose MOST of the PKs and FKs, with regard to the naming convention.Correctly choose SOME of the PKs and FKs, with regard to the naming convention.WRONGLY choose the PKs and FKs.
Relates the entities and determines the multiplicity of each relationship using UML notationCorrectly interpreted ALL business rules with a CLEAR idea on the entities and multiplicity of relationship involved in the design using UML notations. Correctly interpreted MOST of the business rules with a GOOD idea on the entities and multiplicity of relationships involved in the design using UML notations.INACCURATELY interpreted the business rules with the WRONG idea on the entities and multiplicity of relationships involved in the design using UML notations. UNABLE to interpret the business rules with NO IDEA on the entities and multiplicity of relationships involved in the design using UML notations.
Illustrates the database design in a complete ERD using UML notationA COMPLETE populated the tables with CORRECT data elements as outlined in the ERD design.Populated the tables with MAJORITY data elements as outlined in the ERD design - with MINIMAL errors.Populated the tables with MINIMAL data elements as outlined in the ERD design - with MINIMAL errors.Populated the tables with MINIMAL data elements as outlined in the ERD design - with NUMEROUS errors.
Identifies all the basic concepts in ERD (entity, attribute, relationship)COMPLETE understand the basic concepts in ERDALMOST complete understanding of the basic concepts in ERD.Exhibit MINIMAL understanding of the basic concepts in ERD.UNABLE to show understanding of the basic concepts of ERD.
Represents the main entities and attributes based on the given case studyCompletely and accurately use of names, definition in entities and attributes – ALL table names are appropriately used in regard of its data elementsSome MINOR inaccurate use of names, definition in entities and attributes - MOST table name is not clear in regard of its data elementsINACCURATE the use of names, definition in entities and attributes - table name DID NOT correlate with its data elementsWRONG the use of names, definitions in entities and attributes. Shows NO understanding in identifying the tables based on the case study.
148 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Stars Badge 2 | Forks Badge 3 | Pull Requests Badge 4 | Issues Badge 5 | GitHub contributors 6 | ![Visitors](https://api.visitorbadge.io/api/visitors?path=https%3A%2F%2Fgithub.com%2FIzyanIzzatiK%2SECD2523-Database&labelColor=%23d9e3f0&countColor=%23697689&style=flat) 7 | 8 | # Welcome to Database subject! 9 | 10 | ![](https://bs-uploads.toptal.io/blackfish-uploads/components/seo/content/og_image_file/og_image/1282569/0712-Bad_Practices_in_Database_Design_-_Are_You_Making_These_Mistakes_Dan_Social-754bc73011e057dc76e55a44a954e0c3.png) 11 | 12 | # Table of Content 13 | 14 | ## **_Course Information_** 15 | - [Course Synopsis](CI.md#course-synopsis) 16 | - [CLO/PLO/T&L](CI.md#mapping-of-the-course-learning-outcomes-clo-to-the-programme-learning-outcomes-plo-teaching--learning-tl-methods-and-assessment-methods) 17 | - [Details on Innovative T&L practices](CI.md#details-on-innovative-tl-practices) 18 | - [Transferable skills](CI.md#transferable-skills-generic-skills-learned-in-course-of-study-which-can-be-useful-and-utilised-in-other-settings) 19 | - [Student learning time (SLT) details](CI.md#student-learning-time-slt-details) 20 | - [Special requirements](CI.md#special-requirements-to-deliver-the-course-eg-software-nursery-computer-lab-simulation-room) 21 | - [Learning Resources](CI.md#learning-resources) 22 | - [Main references](CI.md#main-references) 23 | - [Additional references](CI.md#additional-references) 24 | - [Online](CI.md#online) 25 | - [Academic Honesty and Plagiarism](CI.md#academic-honesty-and-plagiarism-below-is-just-a-sample) 26 | - [Disclaimer](CI.md#disclaimer)
27 | 28 | --- 29 | 30 | ## **_Lab_** 31 | ### **_Lab Notes_** 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 |
No.ModuleFile
1SQL 1: DDL
2SQL 2: DML 1
3SQL 3: DML 2
4SQL 4: DML 3
59 | 60 | ### **_Lab Exercises_** 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 |
No.ModuleFile
1SQL 1: DDL
2SQL 2: DML 1
3SQL 3: DML 2
4SQL 4: DML 3
88 | 89 | ### **_Lab Exercises Submission_** 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 |
No.Lab ExercisesFile
1Lab Exercise 1
2Lab Exercise 2
3Lab Exercise 3
4Lab Exercise 4
117 | 118 | --- 119 | 120 | ## **_Project_** 121 | ### [Project Overview](project/project_overview.md) 122 | ### **_Project Phases_** 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 |
PhasesDescriptionLinks
1Phase 1
2Phase 2
3Phase 3
145 | 146 | ### **_Project Submission_** 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 |
No.PhasesFile
1Phase 1
2Phase 2
3Phase 3
169 | -------------------------------------------------------------------------------- /lab/Lab project/DML1/sports data.sql: -------------------------------------------------------------------------------- 1 | INSERT INTO inventory_list (id, cost, units) 2 | VALUES('il010230124', 2.5, 100); 3 | 4 | INSERT INTO inventory_list (id, cost, units) 5 | VALUES('il010230125', 7.99, 250); 6 | 7 | INSERT INTO inventory_list (id, cost, units) 8 | VALUES('il010230126', 5.24, 87); 9 | 10 | INSERT INTO inventory_list (id, cost, units) 11 | VALUES('il010230127', 18.95, 65); 12 | 13 | INSERT INTO inventory_list (id, cost, units) 14 | VALUES('il010230128', 97.46, 8); 15 | 16 | 17 | INSERT INTO items (itm_number, name, description, category, color, "Size", ilt_id ) 18 | VALUES('im01101044', 'gloves', 'catcher mitt', 'clothing', 'brown', 'm', 'il010230124'); 19 | 20 | INSERT INTO items (itm_number, name, description, category, color, "Size", ilt_id ) 21 | VALUES('im01101045', 'under shirt', 'top worn under the game top', 'clothing', 'white', 's', 'il010230125'); 22 | 23 | INSERT INTO items (itm_number, name, description, category, color, "Size", ilt_id ) 24 | VALUES('im01101046', 'socks', 'team socks with emblem', 'clothing', 'range', 'l', 'il010230126'); 25 | 26 | INSERT INTO items (itm_number, name, description, category, color, "Size", ilt_id ) 27 | VALUES('im01101047', 'game top', 'team shirt with emblem', 'clothing', 'range', 'm', 'il010230127'); 28 | 29 | INSERT INTO items (itm_number, name, description, category, ilt_id ) 30 | VALUES('im01101048', 'premium bat', 'high quaity basball bat', 'equipment', 'il010230128'); 31 | 32 | INSERT INTO price_history (start_date, start_time, price, itm_number) 33 | VALUES(TO_DATE('17-Jun-2017', 'DD-MM-YYYY'), TO_DATE('17-Jun-2016 09:00:00', 'DD-MM-YYYY hh24:mi:ss'), 4.99, 'im01101044'); 34 | 35 | INSERT INTO price_history (start_date, start_time, price, end_date, end_time, itm_number) 36 | VALUES(TO_DATE('25-Nov-2016', 'DD-MM-YYYY'), TO_DATE('25-Nov-2016 09:00:00', 'DD-MM-YYYY hh24:mi:ss'), 14.99, TO_DATE('25-Jan-2017', 'DD-MM-YYYY'), TO_DATE('25-Jan-2017 17:00:00', 'DD-MM-YYYY hh24:mi:ss'),'im01101045'); 37 | 38 | INSERT INTO price_history (start_date, start_time, price, end_date, end_time, itm_number) 39 | VALUES(TO_DATE('25-Jan-2017', 'DD-MM-YYYY'), TO_DATE('25-Jan-2017 17:01:00', 'DD-MM-YYYY hh24:mi:ss'), 8.99, TO_DATE('25-Jan-2017', 'DD-MM-YYYY'), TO_DATE('25-Jan-2017 19:00:00', 'DD-MM-YYYY hh24:mi:ss'),'im01101045'); 40 | 41 | INSERT INTO price_history (start_date, start_time, price, itm_number) 42 | VALUES(TO_DATE('26-Jan-2017', 'DD-MM-YYYY'), TO_DATE('26-Jan-2017 09:00:00', 'DD-MM-YYYY hh24:mi:ss'), 15.99, 'im01101045'); 43 | 44 | INSERT INTO price_history (start_date, start_time, price, itm_number) 45 | VALUES(TO_DATE('12-Feb-2017', 'DD-MM-YYYY'), TO_DATE('12-Feb-2017 12:30:00', 'DD-MM-YYYY hh24:mi:ss'), 7.99, 'im01101046'); 46 | 47 | INSERT INTO price_history (start_date, start_time, price, itm_number) 48 | VALUES(TO_DATE('25-Apr-2017', 'DD-MM-YYYY'), TO_DATE('25-Apr-2017 10:10:10', 'DD-MM-YYYY hh24:mi:ss'), 24.99, 'im01101047'); 49 | 50 | INSERT INTO price_history (start_date, start_time, price, itm_number) 51 | VALUES(TO_DATE('31-May-2017', 'DD-MM-YYYY'), TO_DATE('31-May-2017 16:35:30', 'DD-MM-YYYY hh24:mi:ss'), 149.00, 'im01101048'); 52 | 53 | INSERT INTO sales_representatives (id, email, first_name, last_name, phone_number, commission_rate, supervisor_id) 54 | VALUES('sr01', 'chray@obl.com', 'Charles', 'Raymond', '0134598761', 10, 'sr01'); 55 | 56 | INSERT INTO sales_representatives (id, email, first_name, last_name, phone_number, commission_rate, supervisor_id) 57 | VALUES('sr02', 'vwright@obl.com', 'Victoria', 'Wright', '0134598762', 5, 'sr01'); 58 | 59 | INSERT INTO sales_representatives (id, email, first_name, last_name, phone_number, commission_rate, supervisor_id) 60 | VALUES('sr03', 'bspeed@obl.com', 'Barry', 'Speed', '0134598763', 5, 'sr01'); 61 | 62 | INSERT INTO sales_rep_addresses (id, address_line_1, address_line_2, city, zip_code ) 63 | VALUES('sr01', '12 Cherry Lane', 'Denton', 'Detroit', 'DT48211'); 64 | 65 | INSERT INTO sales_rep_addresses (id, address_line_1, address_line_2, city, zip_code ) 66 | VALUES('sr02', '87 Blossom Hill', 'Uptown', 'Detroit', 'DT52314'); 67 | 68 | INSERT INTO sales_rep_addresses (id, address_line_1, address_line_2, city, zip_code ) 69 | VALUES('sr03', '12 Junction Row', 'Skinflats', 'Detroit', 'DT52564'); 70 | 71 | INSERT INTO teams (id, name, number_of_players, discount) 72 | VALUES('t001', 'Rockets', 25, 10); 73 | 74 | INSERT INTO teams (id, name, number_of_players, discount) 75 | VALUES('t002', 'Celtics', 42, 20); 76 | 77 | INSERT INTO teams (id, name, number_of_players, discount) 78 | VALUES('t003', 'Rovers', 8, null); 79 | 80 | INSERT INTO customers (ctr_number, email, first_name, last_name, phone_number, current_balance, sre_id, tem_id, loyalty_card_number) 81 | VALUES('c00001', 'bob.thornberry@heatmail.com', 'Robert', 'Thornberry', '01234567898', 150.00, 'sr01', 't001', null); 82 | 83 | INSERT INTO customers (ctr_number, email, first_name, last_name, phone_number, current_balance, loyalty_card_number) 84 | VALUES('c00012', 'Jjones@freemail.com', 'Jennifer', 'Jones', '01505214598', 0.00, 'lc1015'); 85 | 86 | INSERT INTO customers (ctr_number, email, first_name, last_name, phone_number, current_balance, sre_id, tem_id) 87 | VALUES('c00101', 'unknown@here.com', 'John', 'Doe', '03216547808', 987.50, 'sr01', 't002'); 88 | 89 | INSERT INTO customers (ctr_number, email, first_name, last_name, phone_number, current_balance, loyalty_card_number) 90 | VALUES('c00103', 'MurciaA@globaltech.com', 'Andrew', 'Murcia', '07715246890', 85.00, 'lc2341'); 91 | 92 | INSERT INTO customers (ctr_number, email, first_name, last_name, phone_number, current_balance, sre_id, tem_id) 93 | VALUES('c01986', 'margal87@delphiview.com', 'Maria', 'Galant', '01442736589', 125.65 94 | , 'sr03', 't003'); 95 | 96 | INSERT INTO customers_addresses (id, address_line_1, address_line_2, city, zip_code, ctr_number) 97 | VALUES('ca0101', '83 Barrhill Drive', null, 'Liverpool', 'LP79HJK', 'c00001'); 98 | 99 | INSERT INTO customers_addresses (id, address_line_1, address_line_2, city, zip_code, ctr_number) 100 | VALUES('ca0102', '17 Gartsquare Road', 'Starford', 'Liverpool', 'LP89JHK', 'c00001'); 101 | 102 | INSERT INTO customers_addresses (id, address_line_1, address_line_2, city, zip_code, ctr_number) 103 | VALUES('ca0103', '54 Ropehill Crescent', 'Georgetown', 'Star', 'ST45AGV', 'c00101'); 104 | 105 | INSERT INTO customers_addresses (id, address_line_1, address_line_2, city, zip_code, ctr_number) 106 | VALUES('ca0104', '36 Watercress Lane', null, 'Jump', 'JP23YTH', 'c01986'); 107 | 108 | INSERT INTO customers_addresses (id, address_line_1, address_line_2, city, zip_code, ctr_number) 109 | VALUES('ca0105', '63 Acacia Drive', 'Skins', 'Liverpool', 'LP83JHR', 'c00001'); 110 | 111 | INSERT INTO orders (id, odr_date, odr_time, number_of_units, ctr_number) 112 | VALUES('or0101250', TO_DATE('17-Apr-2017', 'DD-MM-YYYY'), TO_DATE('17-Apr-2017 08:32:30', 'DD-MM-YYYY hh24:mi:ss'), 10, 'c00001'); 113 | 114 | INSERT INTO orders (id, odr_date, odr_time, number_of_units, ctr_number) 115 | VALUES('or0101350', TO_DATE('24-May-2017', 'DD-MM-YYYY'), TO_DATE('24-May-2017 10:30:35 116 | ', 'DD-MM-YYYY hh24:mi:ss'), 5, 'c00001'); 117 | 118 | INSERT INTO orders (id, odr_date, odr_time, number_of_units, ctr_number) 119 | VALUES('or0101425', TO_DATE('28-May-2017', 'DD-MM-YYYY'), TO_DATE('28-May-2017 12:30:00 120 | ', 'DD-MM-YYYY hh24:mi:ss'), 18, 'c00103'); 121 | 122 | INSERT INTO orders (id, odr_date, odr_time, number_of_units, ctr_number) 123 | VALUES('or0101681', TO_DATE('02-Jun-2017', 'DD-MM-YYYY'), TO_DATE('02-Jun-2017 14:55:30 124 | ', 'DD-MM-YYYY hh24:mi:ss'), 10, 'c00001'); 125 | 126 | INSERT INTO orders (id, odr_date, odr_time, number_of_units, ctr_number) 127 | VALUES('or0101750', TO_DATE('18-Jun-2017', 'DD-MM-YYYY'), TO_DATE('18-Jun-2017 09:05:00 128 | ', 'DD-MM-YYYY hh24:mi:ss'), 1, 'c01986'); 129 | 130 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 131 | VALUES(5, 5, 'or0101250', 'im01101044'); 132 | 133 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 134 | VALUES(5, 5, 'or0101250', 'im01101046'); 135 | 136 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 137 | VALUES(5, 5, 'or0101350', 'im01101044'); 138 | 139 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 140 | VALUES(18, 18, 'or0101425', 'im01101047'); 141 | 142 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 143 | VALUES(10, 10, 'or0101681', 'im01101047'); 144 | 145 | INSERT INTO ordered_items (quantity_ordered, quantity_shipped, odr_id, itm_number) 146 | VALUES(1, 1, 'or0101750', 'im01101048'); 147 | -------------------------------------------------------------------------------- /project/phase 1/README.md: -------------------------------------------------------------------------------- 1 | # Project Phase 1 2 | ## Semester 1 2023/2024 3 | 4 | 5 | - [P1 Guidlines](#p1-guidelines) 6 | - [P1 Proposal Item](#p1-proposal-item) 7 | - [P1 Rubrics](#p1-rubrics) 8 | - [1. Project Proposal](#1-project-proposal) 9 | - [2. Database Requirements](#2-database-requirements) 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
SubjectSubject : Database (SECD2523)
Section
TaskPhase 1 (P1) – Project Proposal & Database Requirement (5%)
DueWEEK 6 (12 Nov – 18 Nov 23)
26 | 27 | --- 28 | 29 | ## P1 Guidelines 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 46 | 55 | 56 | 57 | 64 | 70 | 71 | 72 | 80 | 84 | 85 | 86 | 87 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 |
NoTaskNo Task Deliverables (Items in Proposal)
1 40 | Conduct problem background 41 |
    42 |
  • Organizational background study
  • 43 |
  • Benefits from the systems/contribution
  • 44 |
45 |
47 |
    48 |
  • Overview of project
  • 49 |
  • Problem Statement
  • 50 |
  • Proposed Solutions
  • 51 |
  • Objectives
  • 52 |
  • Scope
  • 53 |
54 |
2 58 | System boundaries 59 |
    60 |
  • What will be included
  • 61 |
  • What will not be included
  • 62 |
63 |
65 |
    66 |
  • Boundaries of database application
  • 67 |
  • Major user views
  • 68 |
69 |
3 73 | Project Plan 74 |
    75 |
  • Time to produce the systems
  • 76 |
  • Who will produce it
  • 77 |
  • A deadline (expected completion date)
  • 78 |
79 |
    81 |
  • WBS
  • 82 |
  • Gantt Chart
  • 83 |
4Gather more details on the user views by describing in detail the data CURRENTLY held in the database and how they are used. 88 | A report containing the following: 89 |
    90 |
  • Current OR proposed business rule (based on business process in SAD)
  • 91 |
  • Data requirements for each information that is stored in the database.
  • 92 |
  • Transaction requirements which contain data entry, data update/delete, and data queries.
  • 93 |
94 |
5Gather general requirements for the database system by describing any CURRENT features included in the database system (e.g.: performance requirements, levels of security required).
6Describe how to manage user views of the CURRENT database system
103 | 104 | --- 105 | 106 | ## P1 Proposal Item 107 | 108 | Prepare a proposal with the items below: 109 | 110 | - 1.0 Introduction 111 | - 2.0 Background Study 112 | - 3.0 Problem Statement 113 | - 4.0 Proposed Solutions (include feasibility study) 114 | - 5.0 Objectives 115 | - 6.0 Scope 116 | - 7.0 Project Planning 117 | - 7.1 Human Resource 118 | - 7.2 Work Breakdown Structure (WBS) 119 | - 7.3 Gantt Chart 120 | - 8.0 Requirement Analysis (based from AS-IS analysis) 121 | - 8.1 Current business process (scenarios, workflow) 122 | - 9.0 Transaction requirement (data entry, data update/delete, data queries) 123 | - 10.0 Benefit and Summary of Proposed System 124 | - 11.0 Summary 125 | 126 | --- 127 | 128 | ## P1 Rubrics 129 | 130 | ### 1. Project Proposal 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 180 | 183 | 186 | 189 | 190 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Explains Issues and Clear Content OrganizationCLEARLY identifies and summarizes main issues and successfully explains why/how they are problems or questions; and identifies embedded or implicit issues, addressing their relationshipSUCCESSFULLY identifies and summarizes the main issues, but does not explain why/how they are problems or create questions.IDENTIFIES main issues but does not summarize or explain them clearly or sufficiently FAILS to identify, summarize, or explain the main problem or questions. 146 | Represents the issues inaccurately or inappropriately. 147 |
The method of an organization is WELL-SUITED to the assignment; clear intro, body, and conclusion with effective transitions.Organization SUPPORTS assignment and purpose; sequence of ideas could be improved SOME SIGNS of logical organization. May have abrupt or illogical shifts and ineffective flows of ideas POORLY organized OR demonstrates serious problems with the progression of ideas; a written form of speech
Content Development & WritingContent is somewhat ACCURATE AND CLEAR; offers SOLID AND ACCURATE reasoning; contains appropriate details and/or examplesContent is somewhat ACCURATE AND FAIRLY CLEAR; offers SOLID BUT LESS ACCURATE reasoning; contains some appropriate details and/or examplesContent is somewhat VAGUE OR only LOOSELY RELATED to the writing task; at times may be OFF TOPIC OR TOO BROAD with limited supportContent UNCLEAR; LAPSES IN COHERENCE OR NO RELATION to writing task; offers simplistic, undeveloped support for ideas.
Written works has NO MAJOR ERRORS in word selection and use, sentence structure, spelling, punctuation and capitalization.Written works is RELATIVELY FREE OF ERRORS in word selection and use, sentence structure, spelling, punctuation and capitalization Written work has SEVERAL MAJOR ERRORS in word selection and use, sentence structure, spelling, punctuation and capitalization Written work has SERIOUS AND PERSISTENT ERRORS in word selection and use, sentence structure, spelling, punctuation and capitalization
Complete System boundariesCOMPLETE description of scope and boundaries of database application and the major user views. Able to ACCURATELY identify all user views for the proposed database application. PARTIAL description of scope and boundaries of database application and the major user views. Able to identify all user views for the proposed database application with MINIMAL ERRORS. MINIMAL description of scope and boundaries of database application and the major user views. Able to identify all user views for the proposed database application with MAJOR ERRORS.NO description of scope and boundaries of database application and the major user views. UNABLE to identify all user views for the proposed database application.
Complete Project PlanComplete, precise, and clear task description. 178 | Time allocation for each task is HIGHLY ACCEPTABLE. 179 | The task description is FAIRLY COMPLETE AND CLEAR. 181 | Time allocation for each task is ACCEPTABLE. 182 | The task description is vague and unclear. 184 | Time allocation for each task is FAIRLY ACCEPTABLE. 185 | Unclear and incomplete task description. 187 | Time allocation for each task is UNLOGIC and UNACCEPTABLE. 188 |
191 | 192 | ### 2. Database Requirements 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Identify the database requirement based on the case study.Correctly interpreted ALL business rules with a CLEAR idea on the entity, attribute, and relationship.Correctly interpreted MOST of the business rules with GOOD ideas on the entity, attribute, and relationship.INACCURATELY interpreted the business rules with WRONG ideas on the entity, attribute, and relationship.UNABLE to interpret the business rules with NO IDEA entity, attribute, and relationship.
Produce data requirements for information storedACCURATE use of names in entities, attributes, relationships, and user view – ALL data types are appropriately used in regard to its requirement.Some MINOR errors in the use of names in entities, attributes, relationships, and user view – FEW data types are not clear/suitable with its requirement.INACCURATE use of names in entities, attributes, relationships, and user view – the data type DID NOT correlate with its requirement.WRONG use of names in entities, attributes, relationships, and user view. Shows NO understanding in identifying the data type used in regard to its requirement.
Produce a set of transaction requirements for the current/manual system based on the case study. GOOD understanding of the business rules and able to produce ACCURATE and SUITABLE set of transaction requirements.PARTIAL understanding of the business rules and having MINIMAL ERROR in producing a set of transaction requirements.INCORRECTLY understand the business rules and produce an INACCURATE set of transaction requirements.FAIL to understand the business rule and produce WRONG set of transaction requirements.
223 | 224 | -------------------------------------------------------------------------------- /project/phase 3/README.md: -------------------------------------------------------------------------------- 1 | # Project Phase 3 2 | ## Semester 1 2023/2024 3 | 4 | - [P3 Guidelines](#p3-guidelines) 5 | - [P3 Database Logical Design](#p3-database-logical-design) 6 | - [P3 Rubrics](#p3-rubrics) 7 | - [1. Reporting](#1-reporting) 8 | - [A. Overall](#a-overall-2) 9 | - [B. Database Logical Design – ERD & Normalization](#bdatabase-logical-design--erd--normalization-6) 10 | - [C. Interface](#cinterface-2) 11 | - [2. Demonstrations](#2demonstrations-10) 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 25 | 26 | 27 | 28 |
SubjectSubject : Database (SECD2523)
Section
TaskPhase 3 (P3) – Database Logical Design & SQL (20%)/td> 24 |
DueWEEK 14 (07 Jan – 13 Jan 24)
29 | 30 | --- 31 | 32 | ## P3 Guidelines 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 51 | 65 | 66 |
NoTaskDeliverables (Items in Database)
1. 43 |
    44 |
  • Transform the conceptual ERD in P2 into logical ERD. (e.g.: by removing non-relational features e.g.: *:* relationships, complex relationships, etc.)
  • 45 |
  • Derive relations schema from the logical ERD produced above.
  • 46 |
  • Perform normalization up till BCNF (if-any) to these relations.
  • 47 |
  • Draw the final logical ERD.
  • 48 |
  • Update the data dictionary based on the normalized relations produced from above.
  • 49 |
  • Validate logical ERD with the system’s transaction requirements using interface design.
  • 50 |
52 | A report containing the following: 53 |
    54 |
  • Logical ERD (global data model)
  • 55 |
  • Relational database schemas (normalized table)
  • 56 |
  • Data dictionary for the normalized logical design
  • 57 |
  • Interface design (mapped to the proposed SQL statement)
  • 58 |
  • Proposed SQL statement (refer to rubric)
  • 59 |
60 | Demonstration: 61 |
    62 |
  • Individual demonstration for SQL statement.
  • 63 |
64 |
67 | 68 | 69 | 70 | --- 71 | 72 | ## P3 Database Logical Design 73 | Prepare a Database conceptual design as below: 74 | 75 | - 1.0 Introduction 76 | - 2.0 Overview of project 77 | - 3.0 Database conceptual design 78 | - 3.1 Updated business rule 79 | - 3.2 Conceptual ERD 80 | - 4.0 DB logical design 81 | - 4.1 Logical ERD 82 | - 4.2 Updated Data Dictionary 83 | - 4.3 Normalization 84 | - 5.0 Relational DB Schemas (after normalization) 85 | - 6.0 SQL Statements (DDL & DML) 86 | - 7.0 Summary 87 | 88 | --- 89 | 90 | ## P3 Rubrics 91 | ### 1. Reporting 92 | #### A. Overall (2%) 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Document the whole process of designing the ERDDocumented ALL reports on the construction of the database design. Shows FULL understanding of the requirements based on the case study.Documented MAJOR reports on the construction of the database design. Shows a GOOD understanding of the requirements based on the case study.Documented MINIMAL reports on the construction of the database design. Shows MINIMAL understanding of the requirements based on the case study.LITTLE evidence that the documents are based on the given case study.
SQL documentationThe student provides THOROUGH documentation for their SQL code, including comments explaining the purpose of the code, any complex logic, and the structure of the database.The student provides ADEQUATE documentation for their SQL code, but it may lack some details or clarity in explaining complex logicThe student provides MINIMAL documentation for their SQL code, making it challenging to understand the purpose and logicThe student provides NO documentation for their SQL code, making it nearly impossible to understand the purpose and logic
116 | 117 | #### B. Database Logical Design – ERD & Normalization (6%) 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Follow the instructions to draw the logical ERD and derive the relationsCOMPLETE understanding of how to draw ERD and derive relationsExhibits a GOOD understanding of how to draw ERD and derive relationsExhibits MINIMAL understanding of how to draw ERD and derive relations.UNABLE to follow the instructions on how to draw ERD and fails to derive relations.
Identifies all the basic concepts in normalization (relational schema)COMPLETE understanding of the basic concepts in ERDExhibit a GOOD understanding of the basic concepts in ERD.Exhibit a MINIMAL understanding of the basic concepts in ERD.UNABLE to show understanding of the basic concepts of ERD.
Represents the dependency diagram (and relational schema) based on the given case studyCOMPLETELY and ACCURATELY use of names, definitions in entities, and attributes - table name is appropriately used in regard to its data elementsSome MINOR inaccurate use of names, definition in entities and attributes - FEW table name is not clear in regard to its data elementsINACCURATE the use of names, definitions in entities, and attributes - table name DID NOT correlate with its data elementsWRONG the use of names, definitions in entities and attributes. Shows NO understanding in identifying the tables based on the case study.
Differentiates the keys in the dependency diagramCOMPLETE understanding of the dependencies and normal-form levelsExhibit a GOOD understanding of the dependencies and normal-form levelsExhibit a MINIMAL understanding of the dependencies and normal-form levelsUNABLE to differentiate the dependencies and normal-form levels
Label the necessary transitive and partial dependenciesCorrectly choose ALL of the PKs and FKs, with regard to the naming conventionCorrectly choose MOST of the PKs and FKs, in regard to the naming convention.INCORRECTLY choose the PKs and FKs.WRONGLY choose the PKs and FKs.
Illustrates the normalization steps - from 1NF --> 2 NF --> 3NF -->BCNF (if applicable)A COMPLETE populated the tables with CORRECT data elements as outlined in the ERD design.Populated the tables with ALL data elements as outlined in the ERD design - with MINIMAL errors.Populated the tables with MINIMAL data elements as outlined in the ERD design - with MINIMAL errors.Populated the tables with MINIMAL data elements as outlined in the ERD design - with NUMEROUS errors.
169 | 170 | #### C. Interface (2%) 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 183 | 187 | 191 | 195 | 196 | 197 | 198 | 201 | 205 | 206 | 207 | 208 | 209 | 210 | 214 | 218 | 222 | 226 | 227 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Appropriateness to target user Prototype uses terms and symbols APPROPRIATE to target user. Look and feel APPROPRIATE to the target user.

Usability APPROPRIATE to target user. 182 |
Prototype designed for a WELL-DEFINED target user. 184 |

185 | Usability is APPROPRIATE to the target user. 186 |
Prototype designed WITHOUT well-defined target user in mind. 188 |

189 | SOME usability is NOT appropriate for the target user. 190 |
Prototype designed WITHOUT well-defined target user in mind. 192 |

193 | MOST usability is NOT appropriate for the target user. 194 |
Prototype's Interaction Usability The user interface uses a SIMPLE and NATURAL interaction style. 199 |

200 | INTUITIVE, EASY to learn and use.
The user interface uses a SIMPLE interaction style. 202 |

203 | EASY to use once you learn it. 204 |
SOME user interface is COMPLICATED and HARD to use. HARD to figure out how to even get started using the prototype.
Mapping SQL statements to the appropriate functionsDemonstrates an EXCEPTIONAL ability to map SQL statements to appropriate functions, showing MASTERY in this skill. 211 |

212 | CONSISTENTLY and INNOVATIVELY maps SQL statements to appropriate functions, optimizing performance and accuracy. 213 |
CONSISTENTLY and ACCURATELY maps SQL statements to the appropriate functions. 215 |

216 | CONSISTENTLY maps SQL statements to appropriate functions. 217 |
ABLE to map SQL statements to APPROPRIATE functions but still needs IMPROVEMENT. 219 |

220 | INCONSISTENTLY maps SQL statements to appropriate functions. 221 |
Demonstrates a BASIC understanding of SQL statements and functions but STRUGGLES to map them effectively. 223 |

224 | UNABLE to efficiently map SQL statements to appropriate functions. 225 |
228 | 229 | ### 2. Demonstrations (10%) 230 | ### SQL (DDL+DML) 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 253 | 261 | 271 | 278 | 279 |
CriteriaHigh (4)Average (3)Low (2)Unsatisfied (1)
Appropriateness and Accuracy of Design The student has created an EXCELLENT Database design that includes ALL or the 243 | MAJORITY (above 90%) of the following 244 | characteristics: 245 |
    246 |
  • • At least 20 records have been added to the Database
  • 247 |
  • Appropriate Queries that include at LEAST 248 | FIVE (5) DML skills
  • 249 |
  • Appropriate Report structure
  • 250 | 251 |
252 |
The student has created a GOOD Database design that includes MOST (above 50%) of the following characteristics: 254 |
    255 |
  • At least 20 records have been added to the Database
  • 256 |
  • Appropriate Queries that include at LEAST FIVE (5) DML skills
  • 257 |
  • Appropriate Report structure
  • 258 | 259 |
260 |
The student has created an ACCEPTABLE Database design that includes SOME of the following characteristics: 262 |
    263 |
  • At least 20 records have been added to the Database
  • 264 |
  • Appropriate Queries that include at LEAST FIVE (5) DML skills
  • 265 |
  • Appropriate Report structure
  • 266 |
267 | OR 268 |

269 | there are misconceptions/mistakes within the data, query, or reports that significantly alter their appropriateness of them. 270 |
The student has created a SIMPLISTIC Database design that includes some of the following characteristics either superficially or is missing major components. The database is NOT suitable for the intended purpose.: 272 |
    273 |
  • At least 20 records have been added to the Database
  • 274 |
  • Appropriate Queries that include at LEAST TWO DML skills
  • 275 |
  • Appropriate Report structure including.
  • 276 |
277 |
280 | -------------------------------------------------------------------------------- /CI.md: -------------------------------------------------------------------------------- 1 | # Course Information 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 |
School/Faculty:Faculty of Computing
Program name:SECD2523
Course code:SECD2523
Course name:Database
Credit hours:3
Academic Session/Semester: 20232024/01
Pre/co requisite (course name and code, if applicable):None
34 | 35 | --- 36 | 37 | - [Course Synopsis](#course-synopsis) 38 | - [CLO/PLO/T&L](#mapping-of-the-course-learning-outcomes-clo-to-the-programme-learning-outcomes-plo-teaching--learning-tl-methods-and-assessment-methods) 39 | - [Details on Innovative T&L practices](#details-on-innovative-tl-practices) 40 | - [Transferable skills](#transferable-skills-generic-skills-learned-in-course-of-study-which-can-be-useful-and-utilised-in-other-settings) 41 | - [Student learning time (SLT) details](#student-learning-time-slt-details) 42 | - [Special requirements](#special-requirements-to-deliver-the-course-eg-software-nursery-computer-lab-simulation-room) 43 | - [Learning Resources](#learning-resources) 44 | - [Main references](#main-references) 45 | - [Additional references](#additional-references) 46 | - [Online](#online) 47 | - [Academic Honesty and Plagiarism](#academic-honesty-and-plagiarism-below-is-just-a-sample) 48 | - [Disclaimer](#disclaimer) 49 | 50 | --- 51 | 52 | ## Course Synopsis 53 | 54 |
55 | This course introduces students to the concept of database system and how it is used in daily human life and profession. The focus of the course is to equip students with the knowledge and skills on important steps and techniques used in developing a database, especially in the conceptual and logical database design phase. Among topics covered are database environment, database design, entity relationship diagram, normalization, and structured query language (SQL). Students will be taught to use a database management system (DBMS). Students are required to design and develop the database component of an information system using the learned techniques, DBMS and a development tool. At the end of the course, students should be able to apply the knowledge of designing and developing a good database system. 56 |
57 |

58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 |
Course coordinator (if applicable)Dr. Izyan Izzati Kamsani
Course lecturer(s)NameOfficeContact no.E-mail
01SECBHDr Haslina binti Hashim
02SECRHDr Izyan Izzati binti Kamsani
03
05SECJHDr Haslina binti Hashim
06Dr Izyan Izzati binti Kamsani
07Dr Nur Eilliyah @ Wong Yee Leng
08Dr. Noor Hidayah binti Zakaria
09SECVHDr Sharin Hazlin binti Huspi
10Pn Rozilawati binti Dollah @ Md Zain
137 | 138 | --- 139 | 140 | ### Mapping of the Course Learning Outcomes (CLO) to the Programme Learning Outcomes (PLO), Teaching & Learning (T&L) methods and Assessment methods: 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 |
No.CLOPLO (Code)*Taxonomies and **generic skillsT&L methods***Assessment methods
CLO1Apply the fundamental database (DB) principles in DB system lifecycle.PLO1 (KW) 20%C3Lecture, KWL Chart, Think-pair-share.Weekly task (10%)
Mid-Term Exam (5%)
Final Exam (5%) 158 |
CLO2Develop a logical database design using entity-relationship diagram (ERD) and normalization techniques.PLO2 (AP) 35%C5Lecture, KWL Chart, Think-pair-share, cooperative learning, problem-solving, PoBLMid-Term (10%)
Final Exam (15%)
Project Report (10%) 167 |
CLO3Construct Structured Query Language (SQL) statements for database manipulation using a database management system (DBMS).PLO3 (PS) 35% C5Lecture, Lab work, PoBLLab Exercise (10%)
Final Exam - SQL (10%)
Mid-Term Exam (5%)
Project Report (10%) 176 |
CLO4Develop the database component for a database application solution using learned designing techniques, DB language, DBMS, and development tools.PLO5 (TH) 10% TH3PoBLProject Report (10%)
Refer *Taxonomies of Learning and **UTM’s Graduate Attributes, where applicable for measurement of outcomes achievement
191 | 192 | --- 193 | ### Details on Innovative T&L practices: 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 |
No.TypeImplementation
1. Active learningConducted through in-class activities
2. Project-based learningConducted in a group project assignment. Students, in a group of 3 or 4, are required to develop a database application system for a selected company. Students are required to go through the database system development methodology starting from determining the database requirements until developing the database application system. Students shall apply all relevant knowledge acquired throughout the semester on the project. Students are assessed on their ability to deliver a creative database design solution that will be able fulfill the requirements identified.
211 | 212 | --- 213 | 214 | ### Transferable skills (generic skills learned in course of study which can be useful and utilised in other settings): 215 | - Team working 216 | - Written communication 217 | --- 218 | 219 | ### Student learning time (SLT) details: 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 |
Distribution of Student Learning Time (SLT) Course OutlineGuided Learning (Face to Face)Guided Learning (Non-Face to Face)Independent Learning (Non-Face to Face)SLT
CLOLTPO
CLO 1447.515.5h
CLO 24851835h
CLO 3444513.530.5h
CLO 41041024h
Total SLT128221452105h
291 | 292 | 293 | 294 |
295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 305 | 306 | 307 | 308 | 309 | 310 | 312 | 313 | 314 | 315 | 316 | 317 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 332 | 333 | 334 | 335 | 336 | 337 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 |
Continuous AssessmentPLOPercentageTotal SLT
1 304 | Weekly taskPLO 1 CLO1103.5h
2 311 | Lab ExercisesPLO3 CLO3106h
3 318 | ProjectPLO2 CLO2
PLO3 CLO3
PLO4 CLO4
10
10
10
As in CLO 2, 3, 4
AssessmentPercentageTotal SLT
1 331 | Final ExamPLO1 CLO1
PLO2 CLO2
PLO3 CLO3
5 (MCQ)
15 (Structured)
10 (SQL)
3h
2 338 | Lab ExercisesPLO1 CLO1
PLO2 CLO2
PLO3 CLO3
5 (MCQ)
10 (Structured)
5 (SQL)
2.5h
Grand Total100
349 | L: Lecture, T: Tutorial, P: Practical, O: Others 350 | 351 | --- 352 | 353 | 354 | ### Special requirements to deliver the course (e.g.: software, nursery, computer lab, simulation room): 355 | - Computer lab that is equipped with Database Management System (DBMS) software, ERD software designer tool, application program software 356 | 357 | --- 358 | 359 | ### Learning resources: 360 |

Main references

361 | - Connolly, T., Begg, C. Database Systems: A Practical Approach to Design, Implementation, and Management. 6th Edition, Pearson Education International, 2015. 362 | 363 |

Additional references

364 | - Coronel, C., Morris, S. Database Systems: Design, Implementation, and Management. 13th Edition, Course Technology-Cengage Learning, 2019. 365 | 366 |

Online

367 | - http://elearning.utm.my 368 | 369 | 370 | ### Academic honesty and plagiarism: (Below is just a sample) 371 | Assignments are individual tasks and NOT group activities (UNLESS EXPLICITLY INDICATED AS GROUP ACTIVITIES) 372 | Copying of work (texts, simulation results etc.) from other students/groups or from other sources is not allowed. Brief quotations are allowed and then only if indicated as such. Existing texts should be reformulated with your own words used to explain what you have read. It is not acceptable to retype existing texts and just acknowledge the source as a reference. Be warned: students who submit copied work will obtain a mark of zero for the assignment and disciplinary steps may be taken by the Faculty. It is also unacceptable to do somebody else’s work, to lend your work to them or to make your work available to them to copy. 373 | 374 | ### Disclaimer: 375 | All teaching and learning materials associated with this course are for personal use only. The materials are intended for educational purposes only. Reproduction of the materials in any form for any purposes other than what it is intended for is prohibited. 376 | While every effort has been made to ensure the accuracy of the information supplied herein, Universiti Teknologi Malaysia cannot be held responsible for any errors or omissions. 377 | 378 | --------------------------------------------------------------------------------