220 likes | 379 Views
TLAD 2010 - BNCOD 2010 the 27th International Information systems conference. SQL patterns A NEW APPROACH FOR TEACHING SQL. Karen Renaud Huda Al-Shuaily. Introduction. Difficulty with applying fundamental SQL concepts and writing SQL queries is found to be a complex task
E N D
TLAD 2010 - BNCOD 2010 the 27th International Informationsystems conference SQL patternsA NEW APPROACH FOR TEACHING SQL Karen Renaud Huda Al-Shuaily
Introduction • Difficulty with applying fundamental SQL concepts and writing SQL queries is found to be a complex task • Propose a new approach for teaching SQL by using SQL patterns which are based on a checklist approach
Content • Learning SQL: Issues & Difficulties • SQL Patterns: definition, structure, contribution • Pilot Study: purpose, Result • Current work & Future work
Learning Theories Patterns Applying New Knowledge Abstract Knowledge Knowledge Deficiencies Patterns Idea Generation Evaluation Fact Identification SQL problem GORMAN’S TAXONOMY(2002) Solving SQL problem under problem-based learning (PBL) theory
SQL Learning issues • Not having enough knowledge & skills to analyze SQL problems • Exposing students to SQL problems where • the concept is newly introduced and not yet mastered • students can’t find the facts embedded within the SQL problem • Students can’t generate ideas to solve it • Novice SQL writers will not be aware of the deficiencies in their knowledge • The time taken to find the required knowledge
Benefits of Patterns • Help to identify the facts and generate ideas • Provides the lacking knowledge in a convenient format. • Help students to become familiar with common SQL problems and related solutions. • Student’s knowledge and experience will be enhanced
Patterns Patterns originated in the field of building architecture. Christopher Alexander defined the patterns as “Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem (Alexander, 1977 as quoted by Gamma et al. 1995, p. 2) SQL Patterns: Each generic problem type, with its related facts, generated ideas and the required knowledge will be collected together to become a 'pattern’
Pilot study-purpose To focus on • Developing skills in solving complex query • Minimise effort (time, correctness, etc) taken by learner • To highlight the users’ comprehension of the main advantages of using SQL patterns.
Pilot study - Problem Question: Write an SQL statement to find all employees who earn more than the average salary in their department. Display Last name, Salary, Department Id and the Average salary for the department. Sort by Average salary Students provided with : Table description
Pilot study - Problem Students provided with four patterns: “Group Function” pattern “Grouping Rows” pattern “Sub Queries” pattern. “Querying from one table twice” pattern
Pilot study - Assessment The study results were analyzed in light of a pre task, post task questionnaire and participants solution . • A pre-task questionnaire : provide insight on students level of knowledge and experience in SQL. • A post-task questionnaire : feedback about using SQL patterns • The participant’s solutions (with/without patterns) were analyzed as follows: skills in exploring the problem and identifying the related facts, the correctness of the SQL query, and the ability to match the given patterns to the given SQL problem.
Pilot study - findings • Difficulties in exploring the problem and identifying the related facts • Could not solve the problem without the given patterns • Claimed that it was hard to remember how to solve the query • Could not produce a 100% correct solution after giving them the patterns
Pilot study - findings • Common participant errors include • missing the linkage clause from self-join table query • not including the non-aggregated attributes in the GROUP BY clause although the given patterns included such information
Current and Future work We intend to embark on further research in order to • Examine students’ attitudes towards learning SQL • Finding the other related issues in learning SQL. • Identifying the most difficult concepts in SQL • Refining SQL patterns and obtaining more empirical evidence of their efficacy in learning SQL • Finding a tool that supports learning SQL.
Summary • Issues with teaching and learning SQL • Novice struggles with solving SQL queries • Proposed SQL patterns as a solution to overcome some of the discussed issues. • Presented a preliminarily study of using SQL patterns in solving SQL problem. • Future research needed to investigate the contribution of SQL patterns in novice learning SQL.