• Tidak ada hasil yang ditemukan

Equivalence of Problems in Problem Based e- Learning of Database

N/A
N/A
Protected

Academic year: 2023

Membagikan "Equivalence of Problems in Problem Based e- Learning of Database"

Copied!
102
0
0

Teks penuh

Latiful Hoque, Professor, Department of Computer Science and Engineering, Bangladesh University of Engineering and Technology, Dhaka. Mohammad Eunus Ali, Associate Professor, Department of Computer Science and Engineering, Bangladesh University of Engineering and Technology, Ph.D. Tanzima Hashem, Assistant Professor, Department of Computer Science and Engineering, Bangladesh University of Engineering and Technology and Dr.

  • Background
  • Problem Definition
  • Objectives
  • Overview of the Thesis
  • Organization of the Thesis

We proposed a complexity model to determine the equivalence of problems using the complexity values ​​of different problems. In Chapter 3, we discussed the details of the complexity model and model analysis, the equivalence of the problem, and the mathematical formula to find the value of the complexity of the problem. We calculated the complexity value of different SQL operations to determine the equivalence of problems.

  • What and How do Students Learn in PBL
  • PBL for Software Engineering Course
  • PBL in Software Engineering Classroom
  • PBL for Engineering Education
  • Framework for PBL Environments
  • e-Learning System for Problem-based Education
  • Problem Design in Problem-based Learning
  • Group Effectiveness vs Individuals
  • Constraints for Problem-based Learning
  • Problem-based Learning Tools
    • Multiagents System for PBL
    • Web-based Environment for PBL
    • INDIE
    • SQL-LES
    • ShareFast
    • Problem-based Learning via Web
  • Summary

The development of positive learning skills in engineering students was carried out using the problem-based learning (PBL) methodology of Lacuesta et al. A problem-based learning environment also needs several functions such as problem set creation, problem assignment, and evaluation. In the next chapter, we discussed the system architecture and analysis of our developed complex model for problem-based learning.

Fig. 2.1: System Architecture of SQL-LES
Fig. 2.1: System Architecture of SQL-LES

Complexity Model

Complexity Value

Equivalence of Problem

The € value can change depending on the nature of the problems, how many levels we want to divide the problem into for each domain and what is the difference between the minimum and maximum complexity values. For the easy level of complexity problems, minimal domain knowledge is required to solve SQL problems, and the difference between the lowest and highest complexity values ​​is minimal. Rule: Two problems can be considered equivalent if and only if they are in the same domain and the complexity value is within a certain limit.

Basic SQL Operation

  • Select Statement
  • CREATE Statement
  • INSERT Statement
  • UPDATE Statement
  • DETELE Statement

The most common operation in SQL is the query, which is executed with the declarative SELECT statement. The complexity of SELECT statement increases with the number of used table and sub-query. WHERE clause in SQL statement specifies that query should affect only rows that meet specified criteria.

The Where clause is not a required clause, but can be used to limit the number of rows involved. The SQL GROUP BY clause is used together with the aggregation functions to retrieve data grouped by one or more columns. The HAVING clause in SQL specifies that an SQL SELECT statement must return only rows in which aggregate values ​​meet the specified conditions.

The ORDER BY clause is an optional clause in the SQL SELECT statement and is used to sort the resulting data, and in which direction to sort it. A SQL INSERT statement adds one or more records to a single table in a relational database. In the database structured query language (SQL), the DELETE statement deletes one or more records from a table.

For example, if two tables are linked by a foreign key and the rows in the referenced table are deleted, then it is common that the rows in the referenced table must also be deleted to maintain referential integrity.

Top-down Analysis of SQL Select Statement

  • Tree Structure of SQL Select Statement
  • Level of Used of Database Clauses
  • Complexity Value of Database Clauses with SELECT Statement
  • Complexity Value of SQL SELECT Operation (C P )

Database clauses can use many keywords, functions, expressions, and predicates to make an SQL query more targeted and efficient. The complexity of the used parameter therefore depends on the type and position of use in the SQL statement. In the following figure (Figure 3.4) we have shown the details of the position of using different parameters with different clauses.

Database clauses can use lots of keywords, function, expression and predicate to make the SQL query more targeted and. The complexity of the SQL function depends on the type of function it uses to process data, how many parameters are required for that function, and which clause uses that function. If we consider the functional weight (fw) of Type t is 1, then the functional value will be – Table 3.4: Complexity value of used function.

Multiple tables can be used in an SQL statement, which does not appear to increase the complexity of the problem. Column value (Cv) depends on the number of columns used and the level used. O is another clause like GROUP BY, ORDER BY, cwS, is the column weight with the SELECT clause, cwG, is the column weight with the GROUP BY clause, cwO, is the column weight with the ORDER BY clause, m is the number of columns used with SELECT clause n is the number of columns used with GROUP BY and p is the number of columns used with ORDER BY clause.

Expressions can be found inside any SQL statement, usually in the form of a conditional statement.

Fig. 3.2: Top-down Analysis of Select Statement
Fig. 3.2: Top-down Analysis of Select Statement

Algorithm to Calculate Complexity Value of SQL problem

  • Algorithm to Calculate Complexity Value of Function
  • Algorithm to Calculate Complexity Value of Column
  • Algorithm to Calculate Complexity Value of Table
  • Algorithm for Complexity Value of Predicate
  • Algorithm to Calculate Complexity Value of Expression

First we split the SQL statement into an array and then we searched the array to find out the usage database function. The complexity of Algorithm II to calculate the complexity value for a function is 𝑂(𝑛 + 𝑚), where n is the number of items used in the SQL statement. In the Algorithm III, we calculated the complexity value of columns of an SQL statement.

First, we split the SQL statement into an array, then we searched the array to find the database column use and the name of the article that uses that column. The complexity of Algorithm III to calculate the complexity value for a column is 𝑂(𝑛), where n is the number of items used in the SQL statement. First, we split the SQL statement into an array, and then searched the array to determine the use of the database predicate with the predicate type.

The complexity of algorithm V for calculating the complexity value for a predicate is 𝑂(𝑛 + 𝑚), where n is the number of items used in the SQL statement. In Algorithm VI, we calculated the complexity value of the expression of an SQL statement. First we split the SQL statement into an array, and then we searched the array to find out the usage expression with type.

The complexity of the VI algorithm to calculate the complexity value for a function is 𝑂(𝑛 + 𝑚), where n is the number of clauses used in the SQL statement.

Top-down Analysis of SQL Create Table Statement

  • Tree Structure of SQL Create Statement
  • Complexity Value of Database Clauses with CREATE Statement
  • Complexity Value of SQL CREATE Statement (C P )

The time complexity of the 1st step is O(1), the 2nd step is O(1), the 3rd step to find the used expression from n number of elements is O(n) and the 4th step to calculate the complexity value of m number of expressions is O( m). The level of use of various restrictions is shown in the figure below with a tree structure. The SQL functional value depends on the type of function used to process the data, how many parameters that function requires, which clause uses that function, etc.

Fig. 3.5: Top-down Analysis of Crete Statement
Fig. 3.5: Top-down Analysis of Crete Statement

Top-down Analysis of SQL Insert Statement

  • Tree Structure of SQL Insert Statement
  • Complexity Value of Database Clauses with Insert Statement
  • Complexity Value of SQL Insert Statement (C P )

The complexity value of the Insert statement depends on the number of mentions of the column name, the column value, and the number of rows being inserted at once.

Fig. 3.8: Tree Structure of SQL Insert Statement
Fig. 3.8: Tree Structure of SQL Insert Statement

Top-down Analysis of SQL Update Statement

  • Tree Structure of SQL Update Statement
  • Complexity Value of SQL Update Statement (C P )

Uv is the complexity value of the UPDATE command Cv is the complexity value of the column. To calculate the complexity value of the subquery, we have the formula used to calculate the complexity value of the Select statement. More than one column can be used with the update statement without increasing the complexity value.

To limit the complexity value of Update statement, we used logarithm function with the number of used columns.

Top-down Analysis of SQL Delete Statement

  • Complexity Value of Database Clauses with Delete Statement
  • Complexity Value of SQL Delete Statement (C P )

The complexity value of Delete statement depends on the number of parameters with optional where clause. Dv is the complexity value of the DELETE command tw is the complexity value of the table.

Fig. 3.11: Top-down Analysis of SQL Delete Statement
Fig. 3.11: Top-down Analysis of SQL Delete Statement

Complexity Model on Stored Procedure

Experimental Environment

Complexity Value for Individual Database Item

Evaluation Methodology

Complexity Value of SQL Select Statement

  • Complexity Value of Table in Select Statement
  • Complexity Value of Columns in Select Statement
  • Complexity Value of Functions in Select Statement
  • Complexity Value of Predicates in Select Statement
  • Complexity Value by Increasing Table, Column, Function, Predicate and

The complexity value of SQL problem by varying the number of tables used is shown in the above table. It does not mean that the complexity value of the SQL problem will increase proportionally with the number of table used. The complexity value of SQL problem has a logarithmic increase with the number of table used.

We analyzed the complexity value of column using value to observe the best approval value. The complexity value of SQL problem increased logarithmically with the number of used columns. We analyzed complexity value of functions by applying different parameter values ​​for those functions.

So the complexity value of other items can increase with the function number.

Fig. 4.1: Comparison of Different Complexity Values of Table  We have used the following formula to calculate complexity value of used table:
Fig. 4.1: Comparison of Different Complexity Values of Table We have used the following formula to calculate complexity value of used table:

Complexity Value of SQL Create Statement

Complexity Value of SQL Insert Statement

Complexity Value of SQL Update Statement

Complexity Value of SQL Delete Statement

Comparing Complexity Value with Existing SQL-LES Systems

Comparison Result with Existing SQL-LES Systems

  • Comparison Result with Existing SQL-LES Systems by Changing Parameter
  • Comparison Result with Existing SQL-LES Systems by Changing Formula
  • Summary of the Comparison Results

Case-1: We calculated complexity value using parameter value collected from first database expert one. In this case, complexity model defines equivalence of problems 76.6% of agreement compared to manually defined equivalence of problems. Case-3: In this case we calculated complexity value using parameter value collected from third database expert.

This case has defined problem equivalence of 75% similarity compared to manually defined problem equivalence. This case determined equivalence of problems 83.3% similarity compared to manually defined equivalence of problems. This model determined equivalence of problems at most 91.6% similarity compared to manually determined equivalence of problems.

In this case, the complexity model defines a problem equivalence of 73.3% similarity compared to the manually determined problem equivalence. This test determined a problem equivalence of 76.6% similarity compared to manually determined problem equivalence. In this case, the complexity model defined problem equivalence has 81.6% similarity compared to the manually defined problem equivalence.

In this case, issue equivalence is defined for 91.6% similarity compared to manually defined issue equivalence.

Table 4.31: Comparing Complexity Value with Existing SQL-LES Systems by Changing  Parameter Values
Table 4.31: Comparing Complexity Value with Existing SQL-LES Systems by Changing Parameter Values

Contributions

Chen, “A problem-based learning approach to teaching an advanced software engineering course,” in Proceedings of the 2010 Second International Workshop on Educational Technology and Computer Science (ETCS), 2010, p. Delaney, “Problem-Based Learning in the Software Engineering Classroom,” in Proceedings of the 22nd Conference on Software Engineering Education and Training, CSEET, 2009, p. Fernandez, “Active learning through problem-based learning methodology in engineering education,” in Proceedings of the 2009 Frontiers in Education Conference, 2009, p.

Qian, “A framework for designing problem-based learning environments,” in Proceedings of 2009, first International Workshop on Education Technology and Computer Science (ETCS), 2009, vol. Qiu and C.K Riesbeck, “Designing web-based interactive learning environments for problem-based learning,” in Proceedings of Fifth IEEE International Conference on Advanced Learning Technologies, ICALT 2005. Liu, “Research and development of e-learning systems for problem-based learning education,” in Proceedings of Education Technology and Computer Science, ETCS, 2009, vol.

Tang, “Constraints Affecting the Implementation of Problem-based Learning (PBL) Strategy in University Courses,” in Proceedings of the First Asia Pacific Conference on Problem Based Learning, 1999, (pp. 49 – 54). Lib1_booking.bid = Lib1_borrower.bid and did in (select did from Lib1_borrower, Lib1_booking, Lib1_book where Lib1_book.bookid = Lib1_booking.bookid and Lib1_booking.bid = Lib1_borrower.bid and title = 'Combinatorial Optimization') group by did. Lib1_book.pid=Lib1_publisher.pid and year of imprint < (select min (year of publication) from Lib1_book where book keywords such as '%Programming%') are ordered by pname desc,title desc.

Lib1_book.pid=Lib1_publisher.pid and pricetaka = (select max(pricetaka) from Lib1_bookcopy where pricetaka < (select max(pricetaka) from Lib1_bookcopy)) sort by.

Gambar

Fig. 2.1: System Architecture of SQL-LES
Fig. 3.1: Top-down Analysis of PBL Problem
Fig. 3.2: Top-down Analysis of Select Statement
Table  has  a  specified  number  of  columns.  Most  of  the  time  user  does  not  need  all  column  value
+7

Referensi

Dokumen terkait

Introdu ction EX A FS and its param eters are often m easured at low tem peratures and well analysed by the harmonic procedure [1] bccausc Ihe anharm onic contributions to atom ic