A new paper by David King and Chris Kimble of York Univerisity explores the philisophical assumptions about reality behind common software design methods. The paper, titled "Uncovering epistemological and ontological assumptions of software designers" (PDF format), explains that object-oriented design is not based on a rationalist epistemology but, instead, argues that knowledge is the result of observation. OO design further relies on the assumption that once a description is derived by observing reality, the two somehow remain synchronised, allowing a programmer to learn new things about reality by studying his description of it! A "holistic" design method also described seems to be the only method denying the equivalence of both the programmer's mental model to reality and the programmer's code to his mental model. This seems most likely to me but the paper points out embedded software applications in which an almost exact match between model and reality exists. A simplified slide-presentation (PDF format) of the paper is also available. Okay, it's not specifically robotics related, but I found it very entertaining.