Data structures and algorithms are important foundation topics in computer science education. However, they are often complex and hard to understand. As a result, educational tools, such as algorithm visualization systems, are always needed to help students better learn and understand algorithms. The focus on graphics and sound instead of pedagogical aspects in the design of current algorithm visualization systems undermines effectiveness in teaching algorithms. In addition, most algorithm visualization systems lack features that encourage student engagement. This research addresses some required issues in creating algorithm visualization techniques by integrating learning theories and models in algorithm learning and by visualizing algorithms using computer games to fully engage students in the algorithm learning process. A new algorithm visualization and learning approach, namely Algorithm Visualization using Serious Games (AVuSG), has been introduced. It visualizes algorithms using educational or serious games to benefit from their popularity and engagement to motivate students who are learning algorithms. Moreover, it facilitates the students' assessment using the winning-losing criteria of computer games without the need for external questions. The conceptual framework of AVuSG visualizes the algorithm to be learned using three forms of representations: Text, Flowchart, and Computer Game. Moreover, it defines three types of learning processes: Viewing,Playing, and Designing, which learners can use to engage with any of the three forms of the produced algorithm visualizations.
Finally, AVuSG integrates learning theories with game design to introduce three learning models: Bloom Based, Gagne Based, and Constructivist Models, which can be adopted either by students to learn the algorithm or by the instructors to teach the algorithm depending on the learning objectives that they want to achieve.
To demonstrate AVuSG framework, a software system called Serious Algorithm Game Visualizer (Serious-AV) has been developed to provide a viewer and a designer for each algorithm representation form (Text, Flowchart, and Computer Game). Serious-AV is used on two levels: by the user interacting with the visualizations and by the developer creating these visualizations. The user views the algorithm text and flowchart using the Algorithm Text Viewer and the Algorithm Flowchart Viewer, respectively, and plays its game using the Algorithm Game Viewer. On the other hand, the developer uses the three development tools: Algorithm Text Designer, Algorithm Flowchart Designer, and Algorithm Game Designer to create each of those three algorithm representation forms. The Algorithm Game Designer is an integrated development environment tailored to create computer science educational games, namely an Algorithm Game, for the Windows platform to teach about specific algorithms and data structures. To visualize an algorithm, an Algorithm Game must have a game-play that simulates the behavior of the visualized algorithm and graphics to depict the features of its data structure. Several components and editors have been added to the Algorithm Game Designer to automate and simplify the visual development of algorithm games using as little code as possible. First, it is built on top of a game engine called SAVGEngine, which contains several modules that provide the basic functionality to the newly created game in addition to a repository of ready-to-use algorithm game components that can be altered and plugged in to the new game. Moreover, the Algorithm Game Designer includes an Algorithm Game Template to be used as a blueprint in the creation of a new algorithm game by providing basic game classes that implement the algorithm game basic architecture. Furthermore, the Algorithm Game Designer contains five visual editors: Properties, Assets, Screens, Classes, and Graphic Items Editors for creating all game content visually with no code, using a flexible, user-friendly graphical user interface (GUI). Lastly, it takes advantage of current software tools and libraries, such as XNA-GS, and VS Shell-Isolated Mode to simplify game design. At last, several algorithm visualizations, including texts, flowcharts, and algorithm games prototypes, have been developed using the developed systems.
|Advisor:||Chen, Jim X.|
|School:||George Mason University|
|School Location:||United States -- Virginia|
|Source:||DAI-B 71/05, Dissertation Abstracts International|
|Keywords:||Algorithm visualization, Computer games, Game development|
Copyright in each Dissertation and Thesis is retained by the author. All Rights Reserved
The supplemental file or files you are about to download were provided to ProQuest by the author as part of a
dissertation or thesis. The supplemental files are provided "AS IS" without warranty. ProQuest is not responsible for the
content, format or impact on the supplemental file(s) on our system. in some cases, the file type may be unknown or
may be a .exe file. We recommend caution as you open such files.
Copyright of the original materials contained in the supplemental file is retained by the author and your access to the
supplemental files is subject to the ProQuest Terms and Conditions of use.
Depending on the size of the file(s) you are downloading, the system may take some time to download them. Please be