ASQLAG - Automated SQL Assignment Grading System for Multiple DBMSs
Manual grading Structure Query Language (SQL) assignment is laborious and time consuming. Particularly, one question may have many SQL statement styles having the same SQL result(s). Moreover, different Database Management Systems (DBMSs) may have different SQL statement syntaxes. This may cause error-prone and students may get feedback too late. Rapid feedback is significant to learning performance. If students and instructors get feedback faster, they will have an opportunity to improve their practice and their teaching, respectively. The researchers have therefore developed an automated SQL assignment grading system using Object-Oriented Design (OOD) technique and Model-View-Controller (MVC) framework. The system consists of two main parts: assignment management and automated SQL grader. Instructors can manage their assignment and student information conveniently anytime and anywhere via internet network. The automated SQL grader is designed to support four DBMSs: MariaDB, MySQL, PostgreSQL, and Microsoft SQL Server. Students can choose one of four supported DBMSs arbitrary to practice their SQL skills and their assignments can be submitted in one of the supported DBMS syntaxes. The automated SQL grader was implemented and tested. The results reveal that grading time compared to manual grading was reduced from many hours to a few seconds per one assignment. Students’ scores served as good indicator for students and instructors to improve their learning and teaching, respectively. The system is expected to run in the next semester to collect more comments and requirements from database instructors. The automated SQL grader can be extended to enable instructors to perform partial marking SQL statement as needed in their specific teaching contexts.
Brown, E. (2014). “Introducing Express”. Web Development with Node and Express. California: O’Reilly, 2-4.
Chauhan, R. 6 reasons why AngularJS should be used for development. (Online). https://www.softwebsolutions.com/resources/why-angularjs-should-be-used-for-development.html, May 1, 2018.
Dennis, A., Wixom, H. B., & Roth, M. R. (2012). “The systems development life cycle”. System Analysis and Design. 5th Edition. New Jersey: Prentice-Hall, 2-18.
Elmasri, R. & Navathe, B. S. (2011). “SQL”. Fundamentals of Database Systems. 6th Edition. Massachusetts: Addison-Wesley, 87-139, 285-294, 501-528.
Jadhav A. M., Sawant, R. B., & Deshmukh A. Single Page Application using AngularJS. IJCSIT. 2015 6(3), 2876-2879.
Kalelkar, M., Churi, P., & Kalelkar, D. Implementation of Model-View-Controller Architecture Pattern for Business Intelligence Architecture. International Journal of Computer Applications. 2014 102(12), 0975 – 8887.
Laudenschlager, D., Jenks, A., Guyer, C., Twizzes, & Petersen T. OUTPUT Clause (Transact-SQL). (Online). https://docs.microsoft.com/en-us/sql/t-sql/queries/output-clause-transact-sql?view=sql-server-2017, May 24, 2018.
Mills, C. Express/Node Introduction. (Online). https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/Introduction, June 20, 2018
Rumbaugh J., Jacobson I., & Booch G. (1999). “Appendix B: Notation Summary”. The Unified Modeling Language Reference Manual: UML. Massachusetts: Addison-Wesley, 519-529.