This thesis argues that the urge to build and the adoption of a technocratic disposition have influenced and affected the pursuit and development of a deeper understanding of the discipline of computing and its pedagogy. It proposes the introduction to the discipline of the thre…
Sensor nodes, like many social insect species, exist in harsh environments in large groups, yet possess very limited amount of resources. Lasting for as long as possible, and fulfilling the network purposes are the ultimate goals of sensor networks. However, these goals are inhe…
Many devices are now using wireless communication, either by using base stations or by forming adhoc networks, but this style of mobile platform increases the probability of disconnection because of loss of network access. Replication of shared data is one way to increase data a…
It is a common misconception that all web searches can be answered with a single query. It is true that when users have a clear idea of what they are searching for, they can specify an accurate and efficient query to the search engine and find pertinent results in the first 10 s…
XML addresses several HTML shortcomings, but its underdefined processing impedes the development of adequate generic presentation models for the Web. Such models must define the parsing, validation, transformation and rendering of multi-language XML documents, according to a var…
Our research explores the process by which beginning programmers go about writing programs. We have focused our explorations on what we call compilation behaviour: the programming behaviour a student engages in while repeatedly editing and compiling their programs in an attempt …
Refactoring is the process of improving the design of existing programs without changing their external behaviour. Behaviour preservation guarantees that refactoring does not introduce (nor remove) any bugs. If applied properly, refactoring can make a program easier to understan…
We address a number of limitations of Timed Automata and real-time model-checkers, which undermine the reliability of formal verification. In particular, we focus on the model-checker Uppaal as a representative of this technology. Timelocks and Zeno runs represent anomalous beha…
Haptic technology means the sense of touch can be added to computer applications. Not only can the user see and hear information, but the user can also feel it! Thus, haptics provides new, exciting ways of conveying and interacting with information. In particular, haptics can be…
Ant colony optimisation (ACO) is a metaheuristic to solve optimisation problems inspired by the foraging behaviour of ant colonies. It has been successfully applied to several types of optimisation problems, such as scheduling and routing, and more recently for the discovery of …
Reduced Ordered Binary Decision Diagrams (ROBDDs) provide a dense and memory efficient representation of Boolean functions. When ROBDDs are applied in logic synthesis, the problem arises of detecting both classical and generalised symmetries. State-of-the-art in symmetry detecti…
Novelty detection, the identification of data that is unusual or different in some way, is relevant in a wide number of real-world scenarios, ranging from identifying unusual weather conditions to detecting evidence of damage in mechanical systems. However, utilising novelty det…
This thesis proposes a connection between computational modelling of cognition and cognitive electrophysiology. We extend a previously published neural network model of working memory and temporal attention (Simultaneous Type Serial Token (ST2 ) model ; Bowman & Wyble, 2007) tha…