2. Chapter 2: SQL Learnability
2.4 SQL Instructional Materials Review
2.4.2 SQL Teaching Tools
There is various software packages available that were developed specifically for supporting novices learning in CS and few are focused on practicing SQL query skills.
According to Brusilovsky et al. [72], SQL tools can be roughly classified into two categories: tools that support students learning of basic SQL concepts and tools that support learning-by-doing.
This section presents a cross-disciplinary review of these tools. The systems or tools evaluation was conducted from learning taxonomy discussed in section 2.2 (Figure 2.3), and from practice perspective (Figure 2.10). The following are the list of some of the tools that have been used for students learning and assessment on SQL skills: - winRDBI [73] - eSQL [10] - SQL-Tutor [3] - AsseSQL[74, 75] - SQLator [12],
- Automated tutor for a database skills training environment [76] - SQLify [77]
- SQL Exploratorium [72]
In 2006, Raadt et al. conducted a review for some of the above tools. The main purpose of their review was to evaluate the tools that were used in both SQL
58
teaching and assessment. Therefore, the review conducted by de Raadt et al. [77] focused on the following tools: SQLator [12] and AsseSQL [74, 75].
This research, on the other hand, focuses on SQL learning rather than SQL assessments. The main elements that need to be highlighted are:
- Materials support learning SQL knowledge: the rate of presenting declarative knowledge.
- Materials or examples show how query is applied. The procedural knowledge rate is measured.
- Tutorials that guide students toward solving problems: the rate of presenting “practice”.
- Other source of information such as feedbacks and guides that aim to help students to build wisdom or creativity knowledge. For example, providing learners with an explanation about the error they get while solving problems and guide them to solve it.
This particular review focused on the following tools: SQL-Tutor [3], eSQL [10], Automated tutor for a database skills training environment [76], AsseSQL [74, 75], SQLator [12], SQLify [77] and SQL Exploratorium [72] as presented in Figure 2.15. Other tools are excluded because they are not relevant to this research review purpose.
59
Each tool is reviewed by the researcher in terms of the knowledge delivered by the system based on CS learning taxonomy (Figure 2.3). The summary of the review is presented in Table 2.2 below.
Table 2.2: Tools Review Rating (1-5)
Note: 1 is poor knowledge, 5 is effective knowledge), zero values means are not available.
The tools were rated using Likert Scale from poor knowledge (1) to effective knowledge (5). Each tool was examined in the four type of knowledge (Figure 2.3): declarative (SQL syntax and semantic knowledge), procedural (comprehension), practice (composition, debugging) and creating. In addition, the practice knowledge is examined based on the problem solving model (Figure 2.10). For example, to what extent does the tool support problem solving stages? The results of the tool analysis are reported in Figure 2.15.
Tool name Decl ar at iv e Knowl ed ge “Le ar n in g” Rat e Pr oced u ral kn owl ed ge “compre h en si on ” Rat e Pr act ice sk ill s “compo si ti on ” Rat e Bui ld in g s ki ll s d eb u gg in g Rat e M od ifi cat ion Rat e 1 eSQL 4 5 0 0 None 2 SQL-Tutor 2 3 4 3 3 AsseSQL 4 5 5 5 4 SQLator 2 1 5 4 5 Automated tutor 0 5 5 4 6 SQLify 0 0 4 4 7 SQL Exploratoriu m 0 0 4 5
60
Figure 2.15: Tools review Result
The following is a detailed summer of the review:
The tool Features Limitation
eSQL [10]
1-provide procedural knowledge (How)
2-Aid students in understanding SQL queries 3-A Help Mode feature is developed
1-eSQL database tables were designed in assumption that never exceeds thirty or forty rows. 2-eSQL executes a limited number of SQL statements: CREATE DROP, ALTER, DELETE, INSERT, and SELECT.
SQL-Tutor [3]
1-Provides declarative knowledge. 2-Focuses on “Practice” skills through problem solving and meta-learning 3-Supports building skills “why” or meta-learning by supporting self-explanation on the basis of error messages and correct solutions.
1-SQL-Tutor visualizes the database schema only and does not visualize the way a query is executed as eSQL does. Therefore, it does not provide learner with the procedural knowledge.
2-The system is limited to SELECT statement of SQL and other SQL concepts are not covered.
61 AsseSQL
[75, 76]
The tool provides students with a selection of SQL problems and model answers.
Thus, procedural knowledge can be achieved through the engagement
with the tool.
it motivates students to practice using a mock test.
Provides feedback, but this is limited to the correctness of the solution provided by the student. No comments or suggestions for improvement are provided. The tool focus is on the assessments rather than learning.
SQLator [12]
1-Provides “practice” skills through a number of sample databases. 2- Each database defines a business scenario and contains hundreds of English statements describing the
query requirements.
3-Focuses on building skills through providing intelligent feedback
The tool does not provide the declarative or procedural knowledge
Automated tutor for a database skills training environment [77]
1-Focus is on training rather than knowledge acquisition. Thus, it provides students with
“Practice” skills.
2-Supports building skills “why” through feedback and guidance elements.
1-Focuses on training and development of skills rather than on knowledge.
2- Its execution is limited to SQL SELECT statement.
SQLify [78]
1-Provides a procedural knowledge through the visualization of query processing
2-Provides students with lists of questions to solve; hence, it supports “practice” or problem solving skills. 3- supports building skills through providing feedback to students in an automated and semi-automated fashion.
4-Employs peer-review to enhance learning outcomes for students.
Previous knowledge about SQL facts such as syntax is required before
using the tool.
It does not help students to learn
about SQL.
62
7- SQL
Exploratorium [73]
1-offering centralized access to all three kinds of learning content: WebEx interactive examples, SQL- Knot problems, and SQL-Lab. 2- provides procedural knowledge from WebEx interactive examples tool and supports “Practice” through the use of SQL-Knot problems tool. 3-High skills “why” is possible to be achieved from using SQL-Knot tool that generates questions that require a student to write an SQL query for a sample database, evaluates the correctness of the student’s answer, and provides the student with feedback.
The tool does not guide students or recommend relevant examples or readings after a failure attempt to solve a problem.
From the above discussion and the results shown in Figure 2.15, it is clear that the tools have different purpose and structure. Some of the tools focus on delivering SQL concepts and learning how the related queries are executed through examples and tutorials. They support students learning through interactive examples, demonstrating the basic concepts of SQL. These examples are often created based on multimedia technology [72].The other type of tools support learning-by-doing: offering students SQL problems and evaluating their solutions [3, 11, 12, 76]. Recently, new tools were developed to support both learning and practicing such as SQL Exploratorium [72]. One can conclude that, in terms of the knowledge provided by the tools, different tools provide different knowledge. However, for a tool that aims to help learning SQL, the tool should provide learners with all kinds of knowledge. Students skills and abilities to solve query need to be delivered to students efficiently. Some of the tools such as AsseSQL and SQLator use heuristic methods to evaluate queries entered by students. This involves executing the submitted query on a test database, and comparing the output with that of the query included in the definition of the problem. It is possible for students to sheat by creating simple queries that produce the desired output for the given database instance, which cannot be generalized to all instances of the database. Thus, learners cannot build abstract knowledge and therefore knowledge transfer is not possible to achieve. Moreover, many of these tools do not guide students to solve questions
63
through the desired stage (Figure 2.15). Therefore, a problem solving strategy is not supported by the tools and students may solve the question by trial and error. Feedback on students’ errors is essential to improve students understanding and ability to solve other questions in similar contexts and then later in different contexts. Thus, students high skills “why” can be achieved. Unfortunately, some of these tools do not provide adequate feedback on students’ errors nor guidance in how the question should be solved.
2.4.3 Summary
To reflect on the above SQL instructional materials, it can be confirmed that teaching materials must be considered an important factor affecting students learning SQL concepts and skills. The teaching approach and material should aim to help learners to apply different types of knowledge such as: declarative knowledge and procedural knowledge [78]; conditional knowledge [79]; and the syntactic, conceptual and strategic knowledge [60, 80]. Any instructional material should support students in performing all the task types (Figure 2.2) as suggested by Bower et al. [42]. Unfortunately, some of the tools, such as those introduced in [76] and [3], were intended as a practice environment and assumes that students have previously been exposed to the concepts of database management in lectures.
The objective of any instructional materials should support students through all problem solving tasks (from problem statements formulation to query output evaluation) in learning and solving SQL query as was illustrated in SQL problem solving model (Figure 2.10). One could argue that the above reviewed teaching or learning materials are not designed from learner’s perspective. One example is how to keep students motivated while learning or using the tool. In addition, they do not consider the related cognitive activities that learners need to perform to achieve the intended learning goals. Furthermore, a search into the nature of the learnt materials need to be considered and to ensure that a clear
64
understanding of the SQL learning aspects from different dimensions. Chapter 5 discussed these dimensions.
It is possible to say that proposing new instructional material should aim to help learners in developing knowledge, skills, and expertise so that learning performance can be enhanced. Hence, the newly designed materials need to consider the highlighted issues discussed in this section and the cognitive aspects that were discussed in section 2.2. The following aspects emerge from the discussion as being important:
1- Emphasize both teaching process and content. 2- Focus on developing problem solving skills.
3- Ensuring the ability of transfer so it might avoid trial and error strategy in writing SQL queries.
4- Facilitate searching for the required knowledge by organizing the material using scaffolding techniques.
These four features can be achieved through a well-designed instructional design that takes into consideration the above findings, the characteristics of learners and the nature of the SQL language. To do that, it is essential first to look at other research that examines the usability or the learnability of SQL. Many studies look at the human and cognitive factors that affect using or learning SQL. The next section gives an overview of review studies that involved the consideration of the causes that affect learning and using SQL.