Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević...
-
Upload
leo-norman-bailey -
Category
Documents
-
view
224 -
download
4
Transcript of Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević...
![Page 1: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/1.jpg)
Teaching Database Courses Teaching Database Courses Using Educational System ADVICEUsing Educational System ADVICE
Miloš Cvetanović , Zaharije RadivojevićSchool of Electrical Engineering, Belgrade University
12th Workshop “Software Engineering Education and Reverse Engineering”
Opatija, Croatia03-08 September 2012
![Page 2: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/2.jpg)
12th Workshop SEE and RE 2/17
AgendaAgenda
• Course description• Structure of ADVICE• Implementation details• Laboratory exercises and usage of ADVICE• Assessment• Conclusions
![Page 3: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/3.jpg)
12th Workshop SEE and RE 3/17
Database courseDatabase course
• Type: Mandatory course• Starts: 3 semester SE, 5 semester CE
(of 8 semesters for bachelor studies)• Prerequisites: -• Class hours: 2+2+1• Format:
– Midterm 20– Laboratory 20– Final 60
• SE 60 students, CE 110 students
![Page 4: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/4.jpg)
12th Workshop SEE and RE 4/17
Course SyllabusCourse Syllabus
• Database systems• Data modeling• Relational databases• Database query languages• Relational database design• Transaction processing
![Page 5: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/5.jpg)
12th Workshop SEE and RE 5/17
Creating a tool for laboratory Creating a tool for laboratory exercisesexercises• Conceptual Design• SQL DDL• SQL DML• Formal Query Languages• Normalization
![Page 6: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/6.jpg)
12th Workshop SEE and RE 6/17
Creating a tool for laboratory Creating a tool for laboratory exercisesexercises
![Page 7: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/7.jpg)
12th Workshop SEE and RE 7/17
ADVICEADVICE
• ADVICE (Automated Database Verification with Interactive Counter Example)
• Tool for laboratory exercises• Modular structure• Teaching support• Interactive tutoring
![Page 8: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/8.jpg)
12th Workshop SEE and RE 8/17
ADVICE modulesADVICE modules
• Core modules• login• users• defining problems • additional test
• Additional modules• SQL DDL• SQL DML• relational algebra• relational calculus• conceptual modeling• normalization
![Page 9: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/9.jpg)
12th Workshop SEE and RE 9/17
Typical appearance of ADVICETypical appearance of ADVICE
![Page 10: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/10.jpg)
12th Workshop SEE and RE 10/17
Model verification algorithmModel verification algorithm
match(answer, solution){
schema1 = toSchema(answer);
schema2 = toSchema(solution);
reduce(schema1);
reduce(schema2);
for each (newSchema1, newSchema2)
in eliminate(schema1, schema2){
for each renamedSchema1
in rename(newSchema1, newSchema2){
if(compare(renamedSchema1, newSchema2)){
return success;
}
}
} return failure;
}
![Page 11: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/11.jpg)
12th Workshop SEE and RE 11/17
Model verification exampleModel verification example
“An entity is missing: Journey”
![Page 12: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/12.jpg)
DbInstance1=create(initScript)DbInstance2=create(initScript)
Is Query?
Is SQL?
transform(answer)transform(solution)
result1=execute(answer)result2=execute(solution)
result1=execute(selectAll)result2=execute(selectAll)
Is DDL?
match=pairColumns(result1,result2)
compareRows(result1,result2,match)
modify(testScript,DbInstance1)modify(testScript,DbInstance2)
modify(answer,DbInstance1)modify(solution,DbInstance2)
yes
yes
yes
no
no
no
IN
TR
ES
PC
CR
MD
MT
EA
12th Workshop SEE and RE 12/17
Query verification algorithmQuery verification algorithm
![Page 13: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/13.jpg)
12th Workshop SEE and RE 13/17
Query verification exampleQuery verification example
SELECT J.Distance, T.ModelFROM Journey J, Truck T WHERE T.IDTru=J.IDTru AND (SELECT COUNT(*) FROM Drives D WHERE D.IDJou=J.IDJou)=2;
SELECT J.Distance, T.Model FROM Journey J, Truck T WHERE T.IDTru=J.IDTru AND (SELECT COUNT(*) FROM Drives D WHERE D.IDJou=J.IDJou)>=2;
“You have 1 row(s) less. Missing row: (157,MAN)”
![Page 14: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/14.jpg)
12th Workshop SEE and RE 14/17
Query visualizationQuery visualization
![Page 15: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/15.jpg)
• main effect – year factor is significant (F(2, 721)=5.1286, p=0.00614) ,
difference between the years. – group factor is significant (F(1, 721)=90.489, p=0.0000),
difference between groups. – Interaction is not significant (F(2, 721)=0.90318, p=0.40574),
difference between groups is not dependent on the year.
12th Workshop SEE and RE 15/17
AssessmentAssessment
0.00%
10.00%
20.00%
30.00%
40.00%
2005 22.97% 35.14% 20.27% 12.16% 6.76% 2.70%
2006
2007
2008
5 6 7 8 9 100.00%
10.00%
20.00%
30.00%
40.00%
2006 23.46% 31.56% 23.74% 13.41% 5.03% 2.79%
2007
2008
5 6 7 8 9 10
![Page 16: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/16.jpg)
• Tool for support in laboratory exercises in databases related courses
• Modular and extendable structure• Interactive iterative verification with query visualization• Possibility for vertical integration into database course
12th Workshop SEE and RE 16/17
ConclusionConclusion
![Page 17: Teaching Database Courses Using Educational System ADVICE Miloš Cvetanović, Zaharije Radivojević School of Electrical Engineering, Belgrade University.](https://reader030.fdocuments.us/reader030/viewer/2022032611/56649e7b5503460f94b7ccd0/html5/thumbnails/17.jpg)
Thank you!Thank you!
Radivojevic Zaharije