• No results found

A WEB-BASED EDUCATIONAL SYSTEM FOR LEARNING DATA STRUCTURES

Valentina S. Dyankovaa

1

, Stoyan N. Kapralovb

2

, Milko I. Yankovc

3

and Yumit N. Ismailovd

4

1,3,4University of Shumen, “Universitetska” str., 115 Bulgaria, Shumen, 9700

1[email protected], 3[email protected], 4[email protected]

2Technical University of Gabrovo, “Hadji Dimitar” str., 4 Bulgaria, Gabrovo, 5300

[email protected] Abstract—This article presents DSLearning – a web-based

learning system, developed by the authors, for teaching the concepts of the Data Structures field. Oriented towards increasing the independent work of students, the integration of the concepts in a dynamic, self-developing system, allows for students to focus their attention on the logical definitions of the terms. This allows freedom, with regard to the choice of formalization, and determines the adaptability of attained knowledge to the technology used for software realization. In teaching the concepts of data structures, a series of assignments is used. The web-based environment focuses on providing helpful questions and tasks of lower difficulty, in the cases when students give a wrong answer. This process is managed via a developed structural task model. It is used as a basis for the decomposition of a task to auxiliary tasks of lower difficulty. The application of the DSLearning system fosters active independent work and self-paced learning during the formation of skills for modeling real objects and processes.

Index Terms—improving classroom teaching; interactive learning environments; programming and programming languages;

teaching/learning strategies

I. INTRODUCTION

In accordance with the ACM curricula (CS2013) [2], the study of fundamental concepts/terms of data structures and the skills, necessary for their use in modeling real-world tasks, are a part of the subject matter of the Fundamental Data Structures (knowledge area Software Development Fundamentals) and Fundamental Data Structures and Algorithms (knowledge area Algorithms and Complexity) courses. The CS2013 curriculum, in regards to the time needed for introduction of new material in a traditional lecture, assumes “students to spend a significant amount of additional time outside of class” [2]. A way of acquiring extracurricular skills and knowledge by the students is using free, publicly-available educational resources. The main guidelines on using such resources, related to the topic of Data Structures education, can be systematized in the following ways:

- Publication of text materials: systems of this type contain information on the data structures being studied. Examples of such systems are presented in [8], [18].

- Use of graphics and multimedia for visualization of the organization of the elements of a data structure and the basic operations with such elements [4]. For instance, in [18] there is a description of the possible ways of experimenting with a data structure, while in [7] there are visualizations of specific data structures and the operations performed on them.

- Algorithm visualization: systems of this type are described in [7], [17], [24]. A key for them is to offer a good, dynamic students and be automatically validated in conditions similar to a real testing environment.

- Knowledge testing. In such systems there is an emphasis on the quantitative grading of the students’ answers.

It is apparent that openly available educational resources have their limits in terms of capabilities for guiding the learning process and their adaptability based on the students’ answers. In [17] there is an accent on the need for “self-balancing behavior”

on part of the students. Such findings provide a natural focus on the creation and realization of a Data Structures educational model, in the context of a reflective approach in an open educational environment. Learning of data structures requires the development of the students’ ability to discover logical relationships among the data structures with the goal of formalization, adaptation of algorithms to a particular problem, logical thinking within the terms of a specific system for the formalization of knowledge.

The solutions presented in this paper, on the topic of developing a web-based system, which incorporates a learning process, can be summarized in the following three ways:

1) Organization of the learning process in the context of

“Characteristics of Graduates” given in CS2013 [2]: system-level perspective, problem-solving skills, appreciation of the interplay between theory and practice.

2) Choice and definition of a basic learning element, which enables the technological realization of the learning process.

Developing a model for such basic learning element makes possible the decomposition of knowledge into learning elements of lower complexity, decreasing the difficulty for the students, and creating the capability for self-testing. The latter follows one of the major suggestions of professor Bergin for active learning

“provide exercises of different difficulty levels” [13].

3) Choice of strategy for defining a system of learning elements, which purposefully influences the students to acquire a certain knowledge element. In this system, every learning element plays a particular role with regard to the complex goal –

“your job is not to give the students information. Your real job is to show them ways to build new information structures for the problems of their days.”[13].

www.ijtra.com Volume 2, Issue 5 (Sep-Oct 2014), PP. 126-132 II. STRUCTURE OF THE TEACHING PROCESS

The DSLearning system (www.dslearning.eu) is developed by the authors (Fig. 1). It is conceived as a learning system with a feedback loop, utilizing non-linear algorithms, and organizing the students’ learning process in accordance with the illustration on Fig. 2.

The impact (1) on the students by the system is achieved through entry questions. The students’ response (2) reflects the degree of understanding of the learning material. The response is

formalized in an appropriate way and is input into the error analyzer (3). Depending on the accepted evaluation criteria for the students’ knowledge, a corresponding influence (4) on part of the system is determined. It is interpreted via a suitable information model, which is presented to the students in terms of a particular problem scenario. In addition, some slides may reflect the ‘ ’ emoticon. The main purpose of this is to enable students to receive help from the system – a direction on continuing the reasoning process, a control answer, or simply a visualization of the task at hand.

DSLearning comprises of components, in accordance with the requirements laid out in the Instructional-Design Theory [3]:

clear information, thoughtful practice, informative feedback, and strong intrinsic or extrinsic motivation. This determines the following model of learning activity in the system: goal, motive, independent work, result.

The management of information flows, in the learning of data structures through DSLearning, is in accordance with the system-level perspective [2]. Beginning with its essence, the concept is later developed in subsequent levels of more in-depth knowledge, i.e. it is defined at yet another, higher level of organization. Each level is characterized by a system of knowledge and a way of formalization of such knowledge. In accordance with the Patterns for Experiential Learning [14], DSLearning realizes three levels of input of data structure terms, thus allowing for monitoring of the students’ progress.

The first level of knowledge organization follows the classical definition of a term as a system of properties, which defines a

the group of properties, which can be isolated as primary, thus determining all others. These properties are identified into the following three groups:

Properties for generalized volume – type of elements and dynamics (i.e. can their number be changed).

Properties for characterization of the relationships – specific elements (are all elements equal, or are there different tiers), specific fields (are certain element properties defining for the treatment), linearity, connection (whether the elements are equal or linked and what information is carried by the link).

Properties for permissible actions – determine the range of possible operations.

Defining the concepts of data structures in DSLearning, through their common and key properties, focuses the attention of students on the important characteristics invariant with regard to programming language. In this sense, the system integrates the CS2013 requirement for shifting the emphasis from writing a code to a logical interpretation of concepts (problem-solving skills [2]).

The understanding of logically related fundamental concepts, integrated in a self-developing system, allows for the accumulation of facts for each new concept to occur in connection to the rest, and aims for the setting of new goals. This leads to awareness and generalization of the knowledge through the creation of internal, previously-generalized models of the concepts in data structures. In this sense, the system organizes learning activities based on constructive feedback, unified by the idea of electronic education [16], [12], [27].

In the second level of knowledge organization, software knowledge are formed. The learning environment offers problem-solving scenarios, developing the students’ abilities to discover unknown properties of the data structures, which may be essential for the solution of a particular problem, capabilities for broadening the functionality of a given data structure, in (Familiarity, Usage, Assessment), as per CS2013, associated with the expected results from the students’ education.

III. A SELECTION OF BASIC TEACHING ELEMENT The selection of a tool for the realization of the described organization of the teaching process is realized, in accordance with the pedagogical pattern of prof. Joseph Bergin: “How do you begin the design of a new course?” – “Therefore, first decide on what the students will do in the course. Design the student tasks.”[11]. The tasks in DSLearning are systematized based on their structural development as the level of difficulty increases.

The number of unknown components is assumed to be the objective criterion of difficulty. In this context, the authors have developed a structural model of a data structure task. The correct choice of a suitable structure requires in-depth analysis of the

Fig. 2 Management of the Learning Process Fig. 1. The DSLearning system

www.ijtra.com Volume 2, Issue 5 (Sep-Oct 2014), PP. 126-132 mathematical task model of L.M. Freedman [19]. In it, the

functional dependencies among objects in the task are contained as separate structural elements. Freedman’s model is adapted by the authors for the purposes of DSLearning, as the data structures task comprises of a system with the following elements:

Objective (C) – what should be reached as a result?

Subject matter field (P) – the objects as described by the exercise - consists of an input field (I), output field (O), as well as potential sets of other objects M (I  O  P). The output field is related to the objective – this is, in fact, a concrete action in terms of the required data formatting and the used output stream.

Relation (F) – the relationship between the objects in the task.

Included here are the relations which connect input data F1(I), relations connecting output data F2(O), relations of dependency of output data on the input data F3(O), as well as relations between other objects in the subject matter F4(M). These relations can be defined through reasoning or predicates. The conjunction of these relations is defined by the component F.

The basis (B) – theoretical basis for formalization of the task at hand, in terms of data structures, in relation to a given knowledge system.

The purposeful management of education through tasks ([22], [23]) requires a selection of such tasks with an increasing level of difficulty. Each unknown component of the problem requires of the students to transfer the acquired knowledge and skills to a new situation, modeled through the particular task.

The unknown components of a DSLearning exercise are established through questions, which allow for: a single correct answer (Radio Button); a variable number of correct answers (Check Box); a selection of an option from a predetermined list of templates (List Box); an option for the arbitrary completion of parts of the complete task solution.

Example 1: Question 36/38 of lesson stack (Fig. 3)

The objective C is the addition of a new element as a bottom of a stack. The subject matter field B consists of the set of integers and stacks, whose elements are integers as well. The relation F consists of the correlation “element over stack”, i.e. the participating objects are connected via links, which define them as elements of a given stack. This also results in the objects’

acceptable applications. The basis B consists of a sequence of operators that realize the, given in the exercise, algorithm. In this task, the unknown component is the basis B, which is set as a sequence of list boxes.

Typical for DSLearning is the ability to change the pace of the learning process, based on the students’ responses (Action 4 on Fig.2). This is accomplished through the use of logical relationships among the known and unknown components, to reconstruct the exercise types, based on the number and type of unknowns. The justification of the classification of problems, based on the number of unknowns, may be summarized as follows:

- Objective evaluation of the exercises’ difficulty level, according to the type and number of their unknown components.

The conclusions of this assessment are used for organization of the exercises in a complete system, used in the DSLearning curriculum for learning data structures. It is assumed that a task

with more unknown components is harder to solve than a task with less unknown components.

- Analysis of the information, provided by the known structural elements, and the possibilities for its application in completing particular practical exercises.

- Analysis of the logical correlation between unknown and known structural elements of a task and the possibilities for its adaptive interpretation, according to the particular situation.

The purposeful use of the transformation for decomposition of exercises in DSLearning requires theevaluation to be conducted under the following conditions:

a) The objective of the exercise is always known.

b) The unknown component of the exercise is a component, for which there is no information, or one which has unknown sub-components.

c) The type of a given exercise is determined by the type of unknown components of this exercise. Let K be the set of unknown components in an exercise.

d) A mandatory characteristic of each exercise type is their difficulty. The elements of the set K determine the difficulty parameters of the specific task.

e) The set K uniquely defines the set Q, comprised of relations MN among the components of an exercise in the following way: Q = {MN: NϵK  Mϵ{C, P, F, B}\K}.

Every logical link MN, within the set Q, has specific for its nature methods of scientific knowledge. They outline the specific way of determining the unknown component N through the known component M. In this context, the form of links MN, in set Q, defines the direction of the thinking process when solving an exercise. This is a basis for selection of an appropriate informational model, in DSLearning, of management action of the system, in the case of a wrong answer given by students (Action 4, Fig. 2). For instance, the link CBϵQ (a known objective C and unknown basis B) requires the application of analogy or concretization of a known approach. This implies that the students execute a transfer of their knowledge and skills to a new task situation, determined by the exercise objective C. In this instance, DSLearning furnishes students with an animated or static graphic depiction of a similar task’s solution.

www.ijtra.com Volume 2, Issue 5 (Sep-Oct 2014), PP. 126-132 Example 2: For the exercise from Example 1, the sets K and Q

are: K={B}; Q={CB,PB,FB}. CBϵQ and therefore the reasoning done is deemed valid. In case of a wrong answer, DSLearning makes a transition to an equivalent, related to the objective, exercise with particular data and a particular operator (Fig. 4).

Students are required to determine the result of the operator’s action for the objects provided on the drawing. The answer to the

control question “Will the elements of stack s be moved to stack sp?” determines the ability of the students to apply the particular algorithmic scheme for the specific data. If the students give a wrong answer here as well, they receive secondary information (Fig. 5) in determining the result of each simple step of the algorithmic scheme.

IV. ACHOICE OF STRATEGY FOR DEFINING A SYSTEM OF LEARNING ELEMENTS

The exercises integrated in DSLearning allow the decomposition of functions of the Data Structures education process, the definition of relationships among the functional subsystems, the division of the management and informational flows, and the realization of an interactive overview of the teaching process by using the activity approach [6], [9].

The exercises for each concept in DSLearning are divided into two groups – accumulation of knowledge of the logical structure of the concept and accumulation of knowledge of the concept as a software object. Each one of these modules examines the concept as a concrete object with inherent, for the corresponding point of view, properties. Students have to assimilate the required knowledge and skills for the adequate use of these properties in modeling of real processes. This requires for the exercises to

naturally implement the properties in a suitable sequence. The purposeful management of this process is achieved in the following way: It is assumed that for the internalization of given knowledge the students perform a given action d. Each action includes a set of operations o1, o2 …, on, performed in a particular order and in accordance with given rules. Each action is directed towards an object H(d), which has properties c1, c2,…,ck. The properties of the object, at which the action is directed, are defined as parameters of the action. Therefore, the parameterization of the action is a basis for the selection of the operations comprising the object. The conformity between an exercise and an operation can be defined via the scheme on Figure 6, where z1, z2,…,zk are the tasks, through which the operations o1, o2 …,ok are realized. The completion of operation oi aims determining the parameter ci of action d, i.e. learning about the property ci.

The correspondence of an operation oi to its realizing exercise zi can be defined via the following algorithm A:

A1. Defined is the parameter of action d, which varies with operation oi. Let this be property ci of H(d).

A2. The property ci is interpreted in terms of the accepted exercise model in the following way: task zi is considered, whose goal is the definition of the property ci with given (already identified) properties c1, c2, …, ci-1.

A3. For the thus defined exercise zi, the set of unknown structural elements K(zi) is defined.

A4. The elements of the set K(zi) determine the set of correlations among known and unknown components Q(zi).

The interpretation of the objects’ properties, of the concept to be learned through the described algorithm A, is a basis for defining the series of exercises in each of the two groups. During the execution of a given operation oi, the students possess knowledge Z. With the execution of operation oi, the goal is to define the parameter ci of the action d, i.e. assimilation of knowledge Z(ci) for the property ci. This means that after completing operation oi, the student possesses knowledge Z=ZZ(ci). With the inclusion of knowledge from the „zone of proximal development“ [21] in Z’, an active learning process with a constructive approach is realized: “To improve his skills, the exercise must be located at the upper limit of the participant's current skill level”[13]. The thus systematized problems are focused on „empowering the student through active learning“[13].

V. RESEARCH

The criteria and indicators for measuring the effectiveness of the DSLearning system’s use are:

K1 – operations with the idiosyncratic properties of the concepts. Indicators: an interpretation of the behavior of an object via the values of the existence criteria (P11); a derivation of new properties of the concept (P12); a perception of properties as inherent to the logical definition of the concept, but not of its

Fig. 6 Defining a Task with an Operation Fig. 4. A problem concretization example

www.ijtra.com Volume 2, Issue 5 (Sep-Oct 2014), PP. 126-132 K2 – a choice of concept for modeling a real process (without

a software realization). Indicators: identification of a concept based on sufficient properties (P21); finding of specific manifestations of the studied concept in a real process (P22);

ability to consider real processes as systems, characterized by objects and their interrelations (P23); option for algorithmic

ability to consider real processes as systems, characterized by objects and their interrelations (P23); option for algorithmic