We identify typical problems in the interactions of people with current software-based systems. In particular we observe the need to expend significant on-going effort to adapt these systems to reflect changes in the world about them, the need for people to adapt their working practices to fit in with these systems, and the inflexibility of these systems when faced with unusual circumstances or the need for change. We believe that these problems follow, at least in part, from these systems being developed and evolved using mechanisms each based on one Inquiry System only. This basis leads to assumptions being embedded in the mechanisms’ analysis outputs, and in system designs and implementations. We suggest that the problems noted may be mitigated by the use of a dialectical approach to Inquiry System selection for software development, based on the work of Hegel, which places in opposition different models of a situation based on different Inquiry Systems. We claim that such a mechanism has the potential to make explicit some of the assumptions which would otherwise be embedded implicitly in the delivered system without being questioned. We outline a research programme intended to test this hypothesis, and suggest other research directions.