1 |
General and automatic visualizationsManuel, Darrel Trevor Desmond January 1998 (has links)
No description available.
|
2 |
Program Visualization: An Exploration of Graph Based Visualizations to Assist in Student Learning and Programmatic EvaluationWoods, Taylor 01 June 2015 (has links) (PDF)
As computer science students develop more complex programs at the end of their first year of course work, comprehending the complex and varied interactions of program execution, potential control flow and data relationships become more and more difficult. Additionally, for instructors when evaluating student's programs, a simplified view of more complex (longer) programs is desirable. This thesis explores algorithms to create a tool for students that provides a simplified view of these concepts via visualization. The tool created for this thesis provides interactive visual representations of student programs. This allows for a simplified representation of the entire program along with depth exploration options to examine potential control flow and data access/mutations.
The following is an exploration of program visualization, with a focus on usability in an educational setting. Two main approaches will be discussed. The first attempts to visualize the call graph of a running program by showing what methods call what other methods, and the frequency in which they are invoked. The second shows all potential paths through a non-running program, by viewing the program on a per-method level. This approach also includes information about how methods interact with data.
As a test case this thesis focuses on a spell check program which builds a binary search tree dictionary then searches it for input strings and provides correction suggestions if the input is not found in the dictionary. We present an evaluation of our tool via creating visualizations of four different student implementations of this program. These visualizations are then analyzed by computer science faculty to identify common threads throughout all submissions, as well as areas where individual students struggled or excelled. Additionally visualizations are used as a tool in a lecture instructing students about binary search trees. The students provide feedback as to the effectiveness of the visualizations and their comprehension of the material. We conclude that program visualization is a difficult task, especially when students are unused to visualizing control flow. Results indicate potential for use as both a student and instructor tool, though further research is required to identify optimal usage.
|
3 |
HDPV: Highly Interactive, Faithful, In-Vivo Runtime State Visualization for Software ProgramsSundararaman, Jaishankar 04 August 2008 (has links)
Program Visualization systems use graphics and animation to represent the behavior of software programs. These systems represent different aspects of the program such as source code, control flow, data structures, runtime state of the program. Representing the actual runtime state of the program finds its use in a variety of applications including program understanding, visual debugging, and pedagogy. However, existing state-of-the-art program visualization systems are limited in : (1) not providing sufficient interactive capabilities to the user; (2) not faithfully representing the runtime state of the program; (3) not allowing users to apply different layout strategies to the visualization; (4) being tied to a specific programming language.
To address these limitations, this thesis presents HDPV, a program state visualization system that visualizes any C, C++, or Java program. HDPV is based on a canonical state model that represents the memory layout of the program as a graph of memory blocks. It decouples the visualization of the program from the actual programming language in which it is written, thereby making the system language independent. HDPV supports a host of interactive features that allow the user to selectively explore different parts of the program's runtime state. Novel layout strategies support customization through user interaction. We provide a list of use-cases to show that HDPV can be applied to a wide variety of applications including - but not limited to - understanding programs that use basic concepts in computer science, demonstrating algorithm implementations, and debugging software programs. / Master of Science
|
4 |
Uma ferramenta para o ensino de inteligência artificial usando jogos de computador / A Tool for Artificial Intelligence Teaching Using Computer GamesSilva, Filipe Correa Lima da 16 January 2008 (has links)
A queda do interesse por parte de novos universitários, para cursos de ciência da computação em várias universidades do mundo [55, 68], é um sinal para começarmos a pensar se um dos motivos dessa queda tem relação com a forma pela qual o ensino de computação está sendo conduzido. Nessa linha, perguntamos se existem maneiras de tornar o ensino de computação mais interativo e motivante para os alunos da nova geração, os quais cresceram no meio de uma das categorias mais complexas de software existentes hoje: os jogos de computador [10]. Esses softwares ficam cada vez mais interativos, complexos e ricos em detalhe com o passar do tempo. Conforme será exposto, por meio do estudo de algumas iniciativas de pesquisadores nesse sentido, o ensino de ciência da computação pode se tornar mais interessante e rico com a utilização de jogos de computador como recurso didático, para capturar a atenção dessa nova geração de estudantes. Com base nesse resultado, vamos focar nossa contribuição no ensino de lógica em cadeiras de Inteligência Artificial (IA), uma área de concentração da Ciência da Computação. Apresentamos uma ferramenta que chamamos de Odin, para construir e visualizar especificações executáveis de IA, por meio da linguagem PROLOG, em ambientes tridimensionais de jogos de computador. Entendemos que essa ferramenta pode ser utilizada como um recurso didático em cursos de lógica para alunos em nível de graduação. Como principal benefício, o aluno tem a possibilidade de explorar, observar e interagir com os resultados de seu trabalho. Essa possibilidade de visualização é o que parece reter a atenção do aluno, de acordo com pesquisadores na área. Disponibilizamos dois cenários de uso: O labirinto e o Mundo de Wumpus, dois cenários que juntos podem ser utilizados para cobrir uma boa parte da carga didática de um curso de lógica para graduação. Outros cenários podem ser desenvolvidos posteriormente por meio de extensão do framework composto por classes C++. A ferramenta foi utilizada em duas cadeiras de inteligência artificial no Instituto de Matemática e Estatística, da Universidade de são Paulo. Consideramos que a recepção da ferramenta por parte dos alunos foi positiva. / The interest in Computer Science related courses is dropping considerably as reported by various universities around the world. Among the factors that are causing this scenario to take place, one could certainly be the way Computer Science courses are being taught. With that in mind, we have asked if there are ways to teach Computer Science in a more engaging and interactive manner, so as to appeal to the new generation of students that grew in constant touch with one of the most complex and sophisticated categories of existing software, the interactive 3D computer games. This category of software is growing more intricate, complex and rich in detail day by day. And students seem to love it. The literature review presented in the course of this work will show that the use of computer games in teaching, especially in computer science courses, can be an effective way of providing an engaging, interactive and visually rich learning environment for students of the new generation. With this basis, our key contributions focus on the teaching of logic in Artificial Intelligence(AI) related courses, an important area within the Computer Science Curriculum. We propose a tool called Odin, for building executable specifications of AI, using the PROLOG language, in the form of interactive 3D computer games. We understand that this tool can be used as a didactic resource for undergraduate logic courses. The main benefit is that it enables the student to explore, observe and interact with the result of his own designs, which is what seems to capture the students attention, according to researchers in the field. We provide two scenarios: the labyrinth problem and the Wumpus World problem. Scenarios that combined can cover a large part of an undergraduate logic course Syllabus. The tool is extensible so that more scenarios can be added, by extending the framework composed of C++ classes. The tool was used in two graduate AI courses, in the Statistic and Mathematics Institute of the University of S~ao Paulo. We consider that the reception of the tool by the students was positive.
|
5 |
Uma ferramenta para o ensino de inteligência artificial usando jogos de computador / A Tool for Artificial Intelligence Teaching Using Computer GamesFilipe Correa Lima da Silva 16 January 2008 (has links)
A queda do interesse por parte de novos universitários, para cursos de ciência da computação em várias universidades do mundo [55, 68], é um sinal para começarmos a pensar se um dos motivos dessa queda tem relação com a forma pela qual o ensino de computação está sendo conduzido. Nessa linha, perguntamos se existem maneiras de tornar o ensino de computação mais interativo e motivante para os alunos da nova geração, os quais cresceram no meio de uma das categorias mais complexas de software existentes hoje: os jogos de computador [10]. Esses softwares ficam cada vez mais interativos, complexos e ricos em detalhe com o passar do tempo. Conforme será exposto, por meio do estudo de algumas iniciativas de pesquisadores nesse sentido, o ensino de ciência da computação pode se tornar mais interessante e rico com a utilização de jogos de computador como recurso didático, para capturar a atenção dessa nova geração de estudantes. Com base nesse resultado, vamos focar nossa contribuição no ensino de lógica em cadeiras de Inteligência Artificial (IA), uma área de concentração da Ciência da Computação. Apresentamos uma ferramenta que chamamos de Odin, para construir e visualizar especificações executáveis de IA, por meio da linguagem PROLOG, em ambientes tridimensionais de jogos de computador. Entendemos que essa ferramenta pode ser utilizada como um recurso didático em cursos de lógica para alunos em nível de graduação. Como principal benefício, o aluno tem a possibilidade de explorar, observar e interagir com os resultados de seu trabalho. Essa possibilidade de visualização é o que parece reter a atenção do aluno, de acordo com pesquisadores na área. Disponibilizamos dois cenários de uso: O labirinto e o Mundo de Wumpus, dois cenários que juntos podem ser utilizados para cobrir uma boa parte da carga didática de um curso de lógica para graduação. Outros cenários podem ser desenvolvidos posteriormente por meio de extensão do framework composto por classes C++. A ferramenta foi utilizada em duas cadeiras de inteligência artificial no Instituto de Matemática e Estatística, da Universidade de são Paulo. Consideramos que a recepção da ferramenta por parte dos alunos foi positiva. / The interest in Computer Science related courses is dropping considerably as reported by various universities around the world. Among the factors that are causing this scenario to take place, one could certainly be the way Computer Science courses are being taught. With that in mind, we have asked if there are ways to teach Computer Science in a more engaging and interactive manner, so as to appeal to the new generation of students that grew in constant touch with one of the most complex and sophisticated categories of existing software, the interactive 3D computer games. This category of software is growing more intricate, complex and rich in detail day by day. And students seem to love it. The literature review presented in the course of this work will show that the use of computer games in teaching, especially in computer science courses, can be an effective way of providing an engaging, interactive and visually rich learning environment for students of the new generation. With this basis, our key contributions focus on the teaching of logic in Artificial Intelligence(AI) related courses, an important area within the Computer Science Curriculum. We propose a tool called Odin, for building executable specifications of AI, using the PROLOG language, in the form of interactive 3D computer games. We understand that this tool can be used as a didactic resource for undergraduate logic courses. The main benefit is that it enables the student to explore, observe and interact with the result of his own designs, which is what seems to capture the students attention, according to researchers in the field. We provide two scenarios: the labyrinth problem and the Wumpus World problem. Scenarios that combined can cover a large part of an undergraduate logic course Syllabus. The tool is extensible so that more scenarios can be added, by extending the framework composed of C++ classes. The tool was used in two graduate AI courses, in the Statistic and Mathematics Institute of the University of S~ao Paulo. We consider that the reception of the tool by the students was positive.
|
6 |
vizSlice: An Approach for Understanding Slicing Data via VisualizationKaczka Jennings, Rachel Ania 28 April 2017 (has links)
No description available.
|
7 |
Visual Enhancements for Code Examples to Support the Knowledge Exchange Between ProgrammersWendt, Maximilian January 2016 (has links)
Software development is an endless problem-solving activity and programmers regularly use online media channels to ask each other for advice. In particular, socially enabled media channels like the question & answer website Stack Overflow changed how programmers communicate and coordinate, and how they produce and consume content on the Web. Nowadays, a vast body of software development knowledge is documented in form of code examples. But acquiring the knowledge by reading code and logically reason about how they work makes non-trivial examples hard to understand. The aim of this work is to develop visual enhancements that support programmers in the knowledge exchange with code examples. Through a design science research approach using interaction design methods visualizations were developed and evaluated that allow programmers to see the execution and simultaneously inspect the state in order to gain a better understanding of how the underlying system of the code example works. Professional programmers participated in a workshop and found the visualizations to be helpful in the comprehension process.
|
8 |
Enhancing comprehension in open distance learning computer programming education with visualizationSchoeman, Martha Anna 10 1900 (has links)
This thesis describes a research project aimed at improving the tracing skills of first-year programming students enrolled for an introductory C++ course at an open distance learning institution by means of a tutorial in the form of a program visualization tool to teach the students to draw variable diagrams. The research was based on the findings from the BRACElet project (Clear, Whalley, Robbins, Philpott, Eckerdal, Laakso & Lister, 2011). A design-based research methodology was followed.
To guide the process of developing the tutorial, a framework of 26 guidelines for developing and using visualization tools to teach programming was synthesized from the literature on computing education research CER, educational psychology and computer graphics. Guidelines were supplemented with reasons or explanations for their recommendation and considerations to be taken into account when using a guideline. The framework was enhanced by lessons learnt during the development and testing of the tutorial.
The tutorial was tested and refined during two implementation cycles. Both cycles included quantitative and qualitative investigations. All students registered for the introductory module received the tool with their study material. For the quantitative investigations, students completed a questionnaire after using the tutorial. Through the questionnaire biographical data was acquired, the manner in which students used the tutorial and how they experienced using it. The responses to the questionnaires were statistically analysed in combination with respondents’ final marks. The statistical modelling indicated that the students’ biographical properties (a combination of level of programming experience, marks obtained for Mathematics and English in matric and first-time registration for COS1511 or not), had the biggest impact on their final marks by far.
During the qualitative investigations students were eye tracked in a Human-Computer Interaction laboratory. The gaze replays in both cycles revealed that students’ reading skills impacted largely on their success, connecting with the findings from the quantitative investigations.
Reflections on why the tutorial did not achieve its purpose; and why poor reading skills may have such a strong effect on learning to program, contribute some theoretical understanding as to how novices learn to program. / Computer Science / D. Phil. (Computer Science)
|
9 |
User Interface for ARTable and Microsoft Hololens / User Interface for ARTable and Microsoft HololensBambušek, Daniel January 2018 (has links)
Tato práce se zaměřuje na použitelnost brýlí Microsoft HoloLens pro rozšířenou realitu v prototypu pracoviště pro spolupráci člověka s robotem - "ARTable". Použití brýlí je demonstrováno vytvořeným uživatelským rozhraním, které pomáhá uživatelům lépe a rychleji porozumět systému ARTable. Umožňuje prostorově vizualizovat naučené programy, aniž by bylo nutné spouštět samotného robota. Uživatel je veden 3D animací jednotlivých programů a hlasem zařízení, což mu pomůže získat jasnou představu o tom, co by se stalo, pokud by program spustil přímo na robotovi. Implementované řešení také umožňuje interaktivně provést uživatele celým procesem programování robota. Použití brýlí umožňuje mimo jiné zobrazit cenné prostorové informace, například vidění robota, tedy zvýraznit ty objekty, které jsou robotem detekovány.
|
Page generated in 0.1147 seconds