7,332 research outputs found
Bringing Back-in-Time Debugging Down to the Database
With back-in-time debuggers, developers can explore what happened before
observable failures by following infection chains back to their root causes.
While there are several such debuggers for object-oriented programming
languages, we do not know of any back-in-time capabilities at the
database-level. Thus, if failures are caused by SQL scripts or stored
procedures, developers have difficulties in understanding their unexpected
behavior.
In this paper, we present an approach for bringing back-in-time debugging
down to the SAP HANA in-memory database. Our TARDISP debugger allows developers
to step queries backwards and inspecting the database at previous and arbitrary
points in time. With the help of a SQL extension, we can express queries
covering a period of execution time within a debugging session and handle large
amounts of data with low overhead on performance and memory. The entire
approach has been evaluated within a development project at SAP and shows
promising results with respect to the gathered developer feedback.Comment: 24th IEEE International Conference on Software Analysis, Evolution,
and Reengineerin
Graph Algorithm Animation with Grrr
We discuss geometric positioning, highlighting of visited nodes and user defined highlighting that form the algorithm animation facilities in the Grrr graph rewriting programming language. The main purpose of animation was initially for the debugging and profiling of Grrr code, but recently it has been extended for the purpose of teaching algorithms to undergraduate students. The animation is restricted to graph based algorithms such as graph drawing, list manipulation or more traditional graph theory. The visual nature of the Grrr system allows much animation to be gained for free, with no extra user effort beyond the coding of the algorithm, but we also discuss user defined animations, where custom algorithm visualisations can be explicitly defined for teaching and demonstration purposes
Hiding in Plain Sight: Identifying Computational Thinking in the Ontario Elementary School Curriculum
Given a growing digital economy with complex problems, demands are being made for education to address computational thinking (CT) – an approach to problem solving that draws on the tenets of computer science. We conducted a comprehensive content analysis of the Ontario elementary school curriculum documents for 44 CT-related terms to examine the extent to which CT may already be considered within the curriculum. The quantitative analysis strategy provided frequencies of terms, and a qualitative analysis provided information about how and where terms were being used. As predicted, results showed that while CT terms appeared mostly in Mathematics, and concepts and perspectives were more frequently cited than practices, related terms appeared across almost all disciplines and grades. Findings suggest that CT is already a relevant consideration for educators in terms of concepts and perspectives; however, CT practices should be more widely incorporated to promote 21st century skills across disciplines. Future research would benefit from continued examination of the implementation and assessment of CT and its related concepts, practices, and perspectives
- …