Bruce Robinson
Information Systems Research Centre
University of Salford
Salford M5 4WT UK
Phone / fax: 0161 861 7160
Email: bruce.rob@btinternet.com
Mailing address: Bruce Robinson, 1 Cundiff Road, Manchester M21 8FS


Dialectical thought is a way of understanding the world which focuses centrally on the concepts of change, interconnection, and contradiction. The basic principles of dialectics are explained and their relevance to Information Systems shown by examining the consequences of a dialectical understanding of the process of human conceptualisation for modelling and abstraction processes. This is illustrated by reference to recognised problems in the areas of data modelling and the proving of systems correctness. The modelling process is described as one of dialectical movement which transcends, yet incorporates elements of both realism and social construction. Dialectics is further suggested to be an indispensable element in a critical account of information systems development.


Dialectics is a way of understanding the world which focuses centrally on the concepts of change, interconnection, contradiction and, in the relationship between human subject and an objective reality, on the process of abstraction. Dialectics has hitherto been used in the Information Systems (IS) discipline mainly either as a tool in systems development through which the contradictions inherent in a situation can be exposed (Bjerknes, 1991; Mathiassen & Nielsen, 1989) or as a complement to systems theory (Thomas & Lockett, 1979). However, as Dahlbom and Mathiassen (1993) argue, dialectical approaches have a more fundamental role as a distinct way of thinking about information systems. Firstly, they address certain recognised theoretical and practical issues in IS - we shall here focus on the topics of data modelling and systems correctness, pointing to work from the IS literature that incorporates aspects of dialectics. Secondly, they are both opposed to and transcend the hard-soft, objective-subjective, positivist-interpretivist dichotomies that dominate the field. Finally, they are a major element in a critical theory of information systems (Orlikowski & Baroudi, 1991) as they demonstrate connections between social structures and modes of conceptualisation.


Dialectics is a way of seeing the world that is distinct both from the common sense reasoning we take for granted in our everyday life and from the formalised reasoning found in mathematics and symbolic logic. Advocates of dialectics believe that we acquire a richer and more accurate understanding of the world by seeing it up in terms of processes of change, interconnection and contradiction. While dialectical principles originated in ancient Greece, our presentation will focus on materialist dialectics, which is identified as the Marxist tradition in philosophy. Marxists see dialectics as anchored in a realist, objectivist and materialist framework that links dialectics as a scientific method of thought to the material world. As Marx (1990 / 1867) explains, "With me, […] the Ideal is nothing else than the material world reflected in the human mind and translated into forms of thought."

This should not be taken to imply that the world is passively 'reflected' in thought, but rather that the 'translation' requires an active (if often unconscious) process of grasping or appropriating the world through human practice. (Marx, 1973 / 1857-8). This leads us directly to writers in the Marxist tradition who have been particularly concerned with these processes of translation and its consequences for the forms of thought and their relationship to the material world. (Dietzgen, 1869 / 1984; Ollman, 1993; Wartofsky, 1979). Abstraction, as an activity through which humans grasp the world, is central in their work.
Modelling is one specific form of this translation, which is of central importance in IS as there can be no information systems without modelling. Models form the essential mediation between the human purposes involved in creating an information system and their embodiment in artefacts and structured human activities.



'All is flux', according to the early dialectician, Heraclitus. It is a fundamental principle of dialectics that everything is in a continuous process of change, of development and decay, becoming and ceasing to be. Change is not merely an event, something that occurs when a definite change of state takes place. Instead change is built in to the very nature of existence. In Hegelian and Marxist dialectics, change takes the form of periods of incremental or quantitative changes until a critical point is reached where a qualitative leap takes place, bringing about a fundamental transformation in the nature of the object under consideration. Such leaps then prepare the ground for a new period of incremental change, which takes place on the basis of the previous transformation. This is known as the transformation of quantity into quality.

In a dialectical world view, everything is interconnected. Yet we cannot deal with the totality of the world as such, but rather begin to break it down into pieces that are meaningful for us in our activity and appear to encapsulate true distinctions in the world. "Reality may be in one piece when lived, but to be thought about and communicated it must be parcelled out" (Ollman, 1993). While there have to be boundaries between the pieces (otherwise they would not form distinct entities), these boundaries do not remove the interactions between them. The elements we distinguish cannot exist on their own. "The world exists only in its interrelations. Any thing that is torn out of its relations with the world ceases to exist. A thing is anything 'in itself' only because it is something for other things, by acting or appearing in connection with something else." (Dietzgen, 1869 / 1984)

The unity of opposites
Dialectics is distinguished radically from the formal logic that underlies mathematics and computer science by its view that opposites are not mutually exclusive but - at the same time - interdependent and antagonistic. Let us take a basic pair of opposing concepts: identity and difference. In formal logic, identity excludes difference: either A=A or A¹A. In dialectics, A=A establishes the relationship of identity only through abstracting from the totality of what any given A might be . Firstly, any given thing, A, changes over time so that the relationship A=A only holds if we ignore change. Secondly, if we consider the relationship between two distinct objects, A and B, so that A=B, identity is never complete - one can always find difference by a closer examination of A and B. Identity therefore only holds as an approximation or under certain circumstances. At the same time as identity there is always difference (Trotsky, 1964 /1940).

All opposing categories share this simultaneous interdependence and counter-position. Important examples include: quantity and quality; cause and effect (every cause is an effect, every effect a cause); part and whole (every part is a whole, every whole a part); entity and attribute. Formal logic, which sees only one side of a relationship (e.g. identity or difference, part or whole), is therefore a limited way of seeing the world, which may nevertheless be useful in certain contexts .
Which aspect of the opposites appears to us to be dominant or correct at any time reflects three interrelated elements:

- human purpose (what we are trying to explain);
- the context within which we see the objects (which larger totalities do they form a part of);
- the structure and development of those objects (their contradictory elements and their dynamics).

As those conditions shift, different elements and relationships may come to be dominant in the way we see them, though we are still dealing with the same phenomenon. "Viewed in another way or by other people or viewing them under drastically changed conditions may produce not only a different but the exact opposite relation or effect." (Ollman, 1993) The biologist Steven Rose (1997) gives an example of the contradictions involved in making abstractions of the same event from different viewpoints. The single phenomenon of a frog jumping in response to seeing a snake would be viewed very differently by the advocates of various sub-disciplines of biology (a physiologist, an ethologist, a developmental biologist, an evolutionary biologist and a molecular biologist), each giving different explanations in terms of muscle actions, the need to maintain the species, chemical reactions etc. Each of their descriptions would be the product of certain choices about what context to see the action in and what aspects of the single event were relevant.

These contradictory yet true views of different aspects of a single phenomenon also occur in understanding computer systems. Basden (1998) analyses seven "levels of meaning" represented in a computer system, which correspond to different levels of the hardware / software and accordingly are expressed in different types of languages. Additional meaning is added as we move to higher levels of the hierarchy:

 TL: Tacit / Context Assumptions, context, culture Cultural assumptions
 KL: Knowledge What the symbols stand for Referential meaning
 SL: Symbol Symbols: structure, relationships, manipulation  Coding system
 BL: Bit Information resources
Human sensory and neural signals
Figure-ground discernment
 CL: Component  Hardware Manufacturing purpose
 ML: Materials  Physical materials  

Here are statements at three levels of what the computer must do if we are programming it to perform a simple task:

It can be seen that to explain what the computer is doing here by means of assembler language instructions (still less in terms of electrical impulses!) would have no meaning for someone who understood the activity at the knowledge level, despite being a truthful description of what is occurring as seen at that level.

Basden (1998) comments: "Each description is of the same thing: which is the 'correct' one? They are all correct in their own way. To see each as a correct and apt description, we must take a different stance and use a different set of concepts [...] in our description... If we mix our levels then we often get confusion."

In both examples, each description would be equally valid in describing what is a single phenomenon (viewed in different ways) and any description of the totality of the phenomenon would be incomplete and one-sided without taking all these aspects into account. Yet taken by themselves they stand in contradiction to one another. This brings us to the final basic concept of dialectics - contradiction.

In dialectics, contradiction is not understood as something illogical or nonsensical as in common speech. Rather, contradiction is "the incompatible development of different elements within the same relation, which is to say between elements that are also dependent on one another... [They are] constantly blocking, undermining and otherwise interfering with and, in due course, transforming one another." (Ollman, 1993) In other words, contradiction is the dynamic relationship that results from the unity of opposites. Contradiction is a feature of all human and natural phenomena once we see them in their context, development and interconnections.

Contradiction is the motive force of change in dialectics. Change occurs through the tension and conflict that occurs within and between the different components of reality. This has been (over-simplistically) reduced to the triad in which thesis, antithesis and synthesis succeed one another.


Individual human subjects can never see things in their totality or the totality of things. This is not because anything is a priori unknowable, but rather because "Our minds can no more swallow the world whole at one sitting than can our stomachs. Everyone then ... begins the task of trying to make sense of his or her surroundings by distinguishing certain features and focusing on and organising them in ways deemed appropriate." (Ollman, 1993) This is the process of abstraction - a way of "avoiding drowning in the richness of the embedding world." (Cantwell-Smith, 1985 / 1996) - and it is basic to the practice of information systems development.

Abstraction is a human activity, which may be carried out consciously or unconsciously. Its content shifts in relation to our purpose. Yet abstraction has also got to have an objective content - we abstract from something, something provided to us by our interactions with the world. Accordingly, some abstractions may serve better than others may for our purposes and some may simply give a misleading view of the world.

Abstraction is therefore central to the relationship of human subjects to the world. When we grasp or appropriate the world in thought, we establish the boundaries that distinguish one thing from another by selecting and focussing on some properties and relationships and ignoring or rejecting others. This drawing of boundaries also serves to define what we see as integral to the behaviour of the part of reality we have bounded and what appears as chance or contingent.

Abstraction originates in a number of different types of process. It is built into our perceptual mechanisms; learnt in the process of socialisation, in particular through our mastery of language; unconsciously undertaken through participation in certain social activities that involve reducing things to a limited subset of their properties (e.g. monetary exchange); and, most relevant for IS, consciously undertaken in order to achieve certain goals.

Models as forms of abstraction
Modelling is one form of conscious abstraction, which may serve to achieve goals such as the reduction of complexity, the translation of reality into a form tractable through well-understood techniques or the easier communication of knowledge.
As all things share properties and there is some possible way in which anything could be taken to model something else, modelling is not an inherent relationship between things. The specific nature of models comes from the way in which we "take them to represent something else". (Wartofsky, 1979) Therefore we cannot distinguish a modelling relationship between two things without some reference to human cognitive activity. According to Wartofsky, we take models "to exhibit only certain properties - the ones relevant to [our] needs and interests in using the model…" Implicit in taking them to have this representational function is the purpose of our modelling activity and the forms of practice in which it is rooted. We select from the infinite interconnections between things those that serve to make one thing represent another in a particular context. As such the model always has fewer relevant properties than that which it is modelling i.e. the modelling relationship is an abstractive one.

Abstraction and contradiction
Abstraction involves the inevitable creation of contradiction. Firstly, contradiction arises from the partial relationship of an abstraction to the reality from which it is taken (as a result of the exclusion of certain properties and relationships). This means that it never reflects the reality 'as it is'. There is therefore a contradiction between the totality of what is being conceptualised and the abstraction, between that which we include and that which we leave out. For example, in most data modelling texts we are told that we are concerned with a particular slice of reality in our models. However what is left out continues to be a factor in the development of the real world situation which the model describes and the narrow view embodied in the model (and the database) may come into conflict with it.

Other contradictions arise because in creating concepts we define the categories or classes into which the individual objects in the world fit. In doing so, we homogenise what are different things by leaving out of consideration the properties that differentiate them. Thus Hegel (1965 / 1817) explains that "as concept it is already the unity of specific differences and therefore a concrete totality." Because this occurs on the basis of selecting certain properties, there can be contradictions between different elements of the same totality on the basis of their (hidden) differences.

Abstractions do not form themselves out of thin air. Human actors produce and transmit them. Different humans will arrive at different abstractions of the same situation in reality. These differences are rooted not merely in individual experience and skills, but also in the differing social positions that give rise to their distinctive world-views. Ollman (1993) calls this 'abstraction by vantage point'. In this way, social contradictions become introduced into the very centre of the abstraction process and into the resulting abstractions as well. Some aspects of this are discussed below.

However, abstractions are not merely metaphors or social constructions. If we can cut up reality in many different ways, not all the possibilities will match adequately our purpose in forming the abstractions. This notion of purpose forms the link between the subjective and objective sides of abstraction and anchors it in the forms of human action that our concepts are intended to support. Thus any abstraction is a unity of the opposites of subjective purpose and the material reality it faces. Conflicting purposes will lead to contradictions between the different ways we model a particular subset of reality.


We now examine some examples of dialectical thinking about modelling in the IS literature (not usually acknowledged as such) in order to demonstrate the relevance of this way of thinking to important practical issues.

Models and systems correctness
Cantwell-Smith (1985 / 1996) concludes that it is never possible to ensure that a system will function correctly. The reasons lie in the nature of the "inexorable conflict between the partial but tractable model and the actual but infinite world", within which the system will be active. Models have to be partial - "that's how they are able to work". Cantwell-Smith points directly to the contradictions that ensue from the abstractive nature of models. The consequences are that elements not represented in the model may be responsible for the computer system acting in ways that were not foreseen by the modeller - for example, the rising moon being mistaken for incoming Soviet missiles by the American Missile Early-Warning system. Because this contradiction is inherently rooted in the human-model-world relationship, systems will never be able to be shown to provably correct - the techniques of formal methods and software engineering cannot and do not address this problem.

What is an entity?
Dialectics provides a challenge to the one-sided objectivism of the fact-based school of data modelling. According to Hirschheim, Klein and Lyttinen (1995), its basic tenets include:

"The Universe of Discourse (UoD) consists of discrete phenomena called entities…they can be separately distinguished, they have independent existence, and they are selected based on how interesting they are for IS users… they show how the world 'is' and how it is objectively 'constructed'."

These assumptions run counter to two of the underlying principles of dialectics: namely, that all phenomena are interconnected (discrete phenomena are the products of abstraction) and secondly, that there is a contradiction between how the world 'is' and our conceptualisations of it. These principles assert themselves in several ways in the activity of data modelling.
Firstly, the different abstractions we can create from the same real world phenomenon mean that "the boundaries and extent of 'one thing' can be very arbitrarily established… Do we really agree on the composition and boundary of the thing? Maybe you were pointing at a brick and I was pointing at a wall." (Kent, 1978) There can no all-purpose definition of what should be considered to be a single thing. These different conceptualisations of what an entity is lead to contradictions which cannot be resolved by privileging one interpretation as 'what is'. Stamper (1977) therefore concludes that "identifying some entity in the real world has no absolute outcome".

Secondly, the entities we find are classified into types and categories. As we have already seen, assigning something to a category involves creating a unity out of difference, but leaves the differences intact. Thus we may create an entity type or class that would lead to two entities having the same values for all the properties that have been selected as relevant even though they represent separate things. This is usually resolved by creating an artificial and often arbitrary property to distinguish them - the unique identifier.

Thirdly, what is an entity and what an attribute? The relationship between them is one of the unity of opposites. A given thing can be either an entity or an attribute depending on its context. There is no hard and fast distinction, just as there is not between a part and a whole. Dietzgen's (1869 / 1984) comments on such relationships echoes this:

'Where do we find any indivisible unit outside of our abstract conceptions? …an infinite number of separate parts form the raw material out of which the mind fashions the mathematical unit. This book, its leaves, its letters, or their parts are they units? Where do I begin, where do I stop? In the same way, I may call a library with many volumes, a house, a farm and finally the whole universe, a unit. Is not everything a part, every part a thing? Is the colour of a leaf less of a thing than the leaf itself?'

The fluidity of these basic categories by into which we divide the world does not ultimately come from the particular formalism used nor even from the vagueness and ambiguities of the natural language we use to name things (though this does contribute, as Stamper (1977) and Kent (1978) suggest). Rather it originates in the basic forms of interaction between human cognition and its objects. This leads us to the - for some, alarming - conclusion that using more sophisticated formalisms - whether they supply semantically richer primitives, as with semantic data models, or even attempt to embody human purpose and subjectivity, as with Stamper's logic of norms (Stamper, 1985) - will still be subject to the same forms of contradiction.

Modelling change
In data modelling we do not have the tools to deal with change adequately. Data models are 'snapshots' (Bubenko, n.d.) and there has been little success in finding formalisms that adequately describe the temporal element in those models. This is also true of other disciplines based on formal logic (Marquit, 1982) and points to the problematic nature of attempting to capture the process of change so that it be the subject of consistent symbol manipulation.

Some questions cannot be answered without having a more sophisticated conception of change than is provided by the snapshot concept. For example, Kent (1978) asks with regard to the modelling of entities in a database:

'How much change can something undergo and still be the "same thing"? At what point is it appropriate to introduce a new representative into the system, because change has formed something into a new and different thing? The problem is one of identifying or discovering some essential invariant characteristic of a thing, which gives it its identity. That invariant characteristic is often hard to identify or may not exist at all.'

In dialectical thought such characteristics cannot exist - at best they appear invariant over considerable periods of time while the imperceptible processes of change remain invisible.

Changing models
As the world changes, models have to change too if they are to maintain their property of 'being taken to represent something'. However the most common assumption of the data modelling literature is that models are stable and do not need to change often. For example, Marche (1993) quotes a number of examples of which Bravoco and Yadav (1985) is typical:

"… it [the information model] represents a stable information structure, a stable set of rules and definitions upon which a viable database design can be constructed and […] rationality and consistency are injected into the arena of integrated systems definition."

As Marche points out, even on a simplistic understanding of data models, they are not stable at all. Typically the rate of change of the model will lag well behind that of its 'application reality', for reasons such as cost of change, difficulty of change and not least because changes do not always make themselves felt until well after they have begun.

The relationship between the processes of change in the model and that which it is modelling can be explained using the concepts of dialectics. Let us assume that at the start the model does - in the partial way we have described - correspond to what it is modelling and is generally accepted to do so. As reality changes and the static model does not, a contradiction will appear between them. At first, small changes may be reconciled with the model. At a certain point, however the model will have diverged so far from the reality that it turns into its opposite and becomes a purely historical description. Now the stability has been undermined and the old model has become an obstacle to carrying out the task for which it was created. This contradiction now becomes the spur to human action to overcome the contradiction through the creation of a new model. This does not take us back to where we started, but instead creates a new synthesis. However the latent contradiction has not been - and cannot be - resolved and the stage is set for a new divergence between the model and what it describes.

The status of models: reflection, construction or both?
As is the case throughout IS research, the alternative philosophical foundations for understanding modelling are generally presented as the choice between a naive, empiricist realism and an interpretivism / social constructionism. Neither of these is an adequate foundation for the IS discipline as a whole (Robinson & Richardson, 1999) and, we will now argue, for understanding the process of modelling. Materialist dialectics offer a third alternative with a viewpoint distinctive from both.

When Phelan (1998) asks "Is a data model a reflection or a construction of reality?", the dialectical answer has to be "in a certain sense, both". A model must reflect what it is modelling, but cannot do so directly without abstraction, which implies human action and human choice. The relationship between model and that which is being modelled must be a non-arbitrary one based on real interconnections and shared properties, yet it is not a one-to-one relationship in which reality is directly reflected 'as it is' in the model, in which case abstraction and the model itself would not be necessary. Rather it is a many-to-many relationship in which the model is constituted by human choice from a multiplicity of possible real world interconnections and conversely one representation may be used to model different realities. Models must be reflections of reality insofar as they are going to be useful in some form of practice (or in any sense correct), but cannot avoid being human constructions. To the extent that they do become inserted into human practice, they in turn become a real, material factor in defining the nature and the course of the activity and thus in changing the reality from which they emerged.

Examining maps as a form of model makes these distinctions clear. To be useful a map has to have a relationship with the terrain it is describing. Yet a map is a human artefact and there is more than one way to map a given terrain (e.g. different scales, different use of symbols, different degrees of accuracy). A map is not a direct reflection of the land as "highways are not painted red... and you can't see contour lines on a mountain" (Kent, 1978). Once we have established some relationship to what it describes, it is precisely the form of translation between the two and the context of use that tells us whether and in how far a map is useful in a given situation. An accurate map may be useless for a given purpose because it is the wrong scale. When taken on a walk in the countryside, a map may determine we go in the right or the wrong direction - either because of its form as translation of the real landscape or because of its incorrect use or interpretation.

Artz (1998), who poses the same dichotomy as Phelan in relation to object-oriented modelling, describes our position as one where "classes are constructed in the mind of the observer through some cognitive process of abstraction based on cues derived from the real world". He adds: "If class conceptualism is correct, then class formation may be influenced by a wide variety of social and cognitive factors that may influence the abstraction process. Further, validation becomes very difficult."
However his position that this is conceptualism, which is necessarily counterposed to realism and that "since the model is the result of an abstraction process it is necessary to validate the resulting model using some criteria other than conformance to the real world" is one-sided because he sees being and concept, world and model as separate, static and necessarily counterposed rather than different moments or elements in the process of human conceptualisation. Validation must take place in three respects which correspond to different aspects of the process as a whole, namely:

That there are many different possible "cues" (or as we prefer, interrelationships) does not mean that models can do without any degree of conformance to the real world, even though the form that conformance takes may be far from obvious. Equally, some abstractions may fail despite that conformance because they are inadequate conceptualisations for their purpose (e.g. only show one side of the complex relationships within a totality) or they may be adequate conceptualisations in the abstract, but not in relationship to a particular purpose or human activity.


In the last section we have viewed different aspects of the modelling process to demonstrate that it cannot be described adequately in terms of a simple dichotomy between models as a reflection of reality and a human construction. We now bring these elements together to give us a view of modelling as a whole, as a dialectical movement in which both reflection and construction are aspects of the process taken as a whole, but are both antagonistic and interdependent.

The modelling process moves from a given reality through the practice of various means of conceptualisation such as abstraction to the existence of the model. This is however only the first part of the movement - from being via its reflection (the multiplicity of possible real world interconnections) and then construction (abstraction, formalisation etc) to concept (a model). At this stage, the model may be "taken to represent something", but it has yet to be tested for its adequacy to its purpose - we have a map of a certain scale, but do not yet know if it will help us on our walk in the countryside.

If the model is to fulfil a purpose, it must be embodied in a form of activity or praxis , which begins the second part of the movement and forms the test of the model's appropriateness for that purpose. The movement is now from concept to an activity, within which the conceptualisation in the model plays (or fails to play) an active role. After some time, the activity reaches a point at which the model may be assessed in terms of the process as a whole - its goals and its separate aspects. At this point, two paths are open. If the model is considered to be adequate, the process comes to an end, albeit temporarily as even the most adequate model will be subverted by changing reality into becoming an obstacle, as we have seen. Alternatively, it may be necessary to go through reiteration of the process as a result either of the activity changing the reality being modelled or of it demonstrating the need for a different or more adequate model.

What drives the process through its different stages or 'moments'? It is the inadequacy or incompleteness of each moment taken on its own and the need to both subsume and transcend it in passing to a higher stage. Hegel (quoted in Marcuse (1969 / 1941)) states "...that the existence of things is 'the unrest of something in its Limit; it is immanent in the Limit to be the contradiction which sends Something on beyond itself.'" Each moment of the process points to the next stage which is necessary in terms both of the process as a whole and to overcome the limits of that stage taken alone. Thus a simple reflection of reality as the first moment of modelling would leave us with an infinity of possible interconnections, which are not adequate to make a model without a further stage of abstraction and choice, which conversely presupposes those real world interconnections. Later, the model as adequate conceptualisation is not yet realised in terms of its own purpose which requires its incorporation in some form of human activity.

A consequence of seeing modelling as this form of dialectical movement is that it also indicates the possible aspects of the process that may lead to it breaking down (e.g. a reality accurately reflected but wrongly conceptualised as in our map with the wrong scale; or a well-conceptualised model being used for the wrong sort of activity). It also enables us to see the totality of the process as more than just the sum of its parts.

We have arrived at a conception of a dialectical movement of categories, which corresponds to the particular human activity of modelling (in idealised terms that do not necessarily correspond exactly to the way it is consciously carried out) and tried to demonstrate how this incorporates the different aspects of modelling such as abstraction. Yet the movement is not one of categories, of pure logic, but rather one connected to real world human activity, both of the modeller and of those involved in the forms of practice in which the model becomes incorporated. Further, it takes as its starting point the requirement that there is something to be modelled - the material world becomes "reflected in the human mind and translated into forms of thought." Thus while this conceptualisation of the modelling process transcends the classical dichotomy of "realism versus conceptualism" by showing that both provide necessary aspects of the process of modelling, it is the aspect of realism that is its precondition and also - in terms of its ability to realise its purpose - its ultimate validation.


If modelling involves human action and choice and the adoption of a particular vantage point, it is a process not merely rooted in individual experience and skills, but also in broader social relationships and structures. It cannot somehow be exempt from the social conflicts and contradictions of society as a whole. This is often disguised by the assumption of the mainstream paradigm that modelling can produce a single, true picture of what is being modelled and by a social division of labour in which modelling skills are the province of individuals specially trained in the techniques that will find it.

Thus Hirschheim et al (1995) note that "no work has been published on a radical structuralist approach to data modelling''. According to their model of the four paradigms of ISD (Hirschheim & Klein, 1989), the most important aspect of a radical structuralist paradigm would be the articulation of the social divisions in the workplace and perspective of the workers as distinct from that of management.

The understanding of models outlined here provides a basis for such an approach as it incorporates the idea that our models are the products of human choices and of necessity embody a vantage point, which reflects differing human purposes and interests. There are typical vantage points rooted in the particular social situation of those adopting them, particularly rooted in the existing social division of labour. Thus Marx "grounds each class' perceptions in the nature of its habitual abstractions in order to show how starting out to make sense of society, from just these mental units, leads to different perceptual outcomes" (Ollman, 1993, p.69). In IS both the structural roles and the typical world views of the manager, analyst and workers point to their having conflicting vantage points. (e.g.Robinson, 1994). As the workforce has to act directly in the world being modelled, they are more likely to be aware of aspects of the situation they have to deal with that are outside the partial world of the model. This may be expressed through 'work-rounds' or the maintenance of informal systems (Beirne, Ramsay, & Panteli, 1998; Gasser, 1986). Marche (1993) also points out that the workforce is more likely to have to take the burden of adjustment resulting from false assumptions about the stability of the models. Accordingly, a number of approaches have been developed in this paradigm which attempt to base models on the totality of the workers' experience and to give a voice to their distinctive vantage point e.g. (Kyng & Greenbaum, 1991), (Lings, Adabalah, Foster, Jin, & Narayanan, 1991).

In contrast, the analyst will be concerned with making the reality tractable and will be guided in what s/he sees through the formalism or methodology being used to describe it. The notion of vantage point barely enters into the dominant "hard", functionalist school of modelling as it tends to assume a naive realist approach of correspondence of model to reality as long as the analyst does things the right way. Managerial views will tend to be instrumentalist in that managers will be typically concerned with control of the work process and with its outputs, rather than what is going on inside the black box of an IS. The aspects of adjustment taken by the workforce will therefore tend to remain hidden to the other parties to ISD and to remain excluded from the development process. More investigation is needed of how exactly these differing vantage points work themselves out in the modelling process.


Dialectical analysis has enabled us to see that the models we use in information systems development (ISD) are necessarily partial, context dependent and contain contradictions, defined in the sense we outlined earlier. This cannot be avoided, yet ISD will carry on regardless. To remain unaware of these limitations or to continue to claim hubristically that better methods will sort them out is to court, not merely systems failures, but human disasters as our society becomes more and more dependent on technology based on these models. As we cannot escape them, perhaps the best we can hope for is to make them explicit by building steps that do so into our development methods. It should be clear what a model is capable of dealing with and what remains outside it, what its context and purpose are, its dynamics and alternative possible vantage points on and conceptualisations of a given reality. As we have seen, such changes also require changes in the mindset of developers and in the assumed division of labour between developers and those who will use the system.

Dialectics is not merely a way of seeing things, but also a method that provides a number of specified paths towards reaching adequate and rounded conceptualisations. It provides a set of heuristics that can be used in the process of conceptualisation (For examples, see Levins, 1998; Ollman, 1998) and accounts of the processes of dialectical movement necessary to move from real world to concept can be found in both Hegel and Marx. Further research is required to see how these insights can be fused with ISD so as to provide guidelines for use in the development process, albeit of a very different kind from existing methodologies.


Models form the essential mediation between the human purposes involved in creating an information system and their embodiment in artefacts and structured human activities. An understanding of dialectics provides the basis for a deeper understanding of what is going on in the modelling process and of why models are partial, context-dependent, unable to deal adequately with change and socially embedded. Dialectics also contains a critique of many of the dominant assumptions in IS, which are based on formal logic and the functionalist paradigm. (Hirschheim & Klein, 1989) This critique and the recognition that social contradictions are built into the modelling process provide a starting point for a radical structuralist account of modelling.

Kent (1978) concluded his study in some desperation:

"I have tried to describe information as it 'really is' and have kept tripping over fuzzy and overlapping concepts… the complexity and amorphousness of reality is unmanageable… It is consistent with this philosophy of reality (perhaps even necessary rather than consistent) that I cannot see it being applied consistently. I must accept paradoxes embedded right in the process of accepting such views… Well then, what's going on? What are these contradictions all about?"

Dialectical principles allow us to understand 'what's going on': how such contradictions arise and their ultimate location both in the nature of the real world and in our relationship to it. At this level, there may not be a lot we can do, but awareness of the real problems we are grappling with is preferable to bland ignorance. It may then be that a dialectical understanding of modelling serves above all to remind us of the limits of what is possible in information systems and to warn us of what is really going on.


Artz, J. M. (1998). Information Modeling and the Problem of Universals: A Preliminary Analysis of Metaphysical Assumptions, 4th Americas Conference of Information Systems (pp. 810-811). Indianapolis: Association for Information Systems.

Basden, A. (1998). Levels of meaning. Available: http://www.basden.demon.co.uk/R/levels.html [1999, 11th November].

Beirne, M., Ramsay, H., & Panteli, A. (1998). Participating Informally: opportunities and dilemmas in user-driven design. Behaviour and Information Technology, 17(5), 301-310.

Bjerknes, G. (1991). Dialectical reflection in systems development. Scandinavian Journal of Information Systems, Vol.3, 55-77.

Bravoco, R. R., & Yadav, S. B. (1985). A methodology to model the information structure of an organisation. Journal of Systems and Software, 5, 59-71.

Bubenko, J. (n.d.). Data models and their semantics. Infotech State of the Art Reports, 8(4).

Cantwell-Smith, B. (1985 / 1996). Limits of correctness in computers. In R. Kling (Ed.), Computerization and Controversy: Value conflicts and social choices (2nd ed., pp. 810-825). San Diego: Academic Press.

Dahlbom, B., & Mathiassen, L. (1993). Computers in Context: The Philosophy and Practice of Systems Design. Oxford: Blackwell.

Dietzgen, J. (1869 / 1984). The Nature of Human Brain Work. Vancouver: Red Lion Press.

Gasser, L. (1986). The Integration of Computing and Routine Work. ACM Transactions on Office Information Systems, 4(3), 206-225.

Hegel, G. W. F. (1965 / 1817). The Logic of Hegel. (2nd ed.). Oxford: Oxford UP.

Hegel, G. W. F. (1991). The Encyclopaedia Logic. Minneapolis: Hacket.

Hirschheim, R., & Klein, H. K. (1989). The four paradigms of information systems development. Communications of the ACM, Vol 32, 1199-1215(October), 1199-1215.

Hirschheim, R., Klein, H. K., & Lyttinen, K. (1995). Information Systems Development and Data Modelling: Conceptual and Philosophical Foundations. Cambridge, UK: Cambridge UP.

Kent, W. (1978). Data and Reality. Amsterdam: North-Holland.

Kyng, M., & Greenbaum, J. (1991). Design at work: Cooperative work and computer systems.

Levins, R. (1998). The Internal and External in Explanatory Theories. Science as Culture, 7(4), 557-582.

Lings, B., Adabalah, N., Foster, L., Jin, Y., & Narayanan, A. (1991). On a human-centred approach to database systems. AI and Society, 5, 128-141.

Marche, S. (1993). Measuring the stability of data models. European Journal of Information Systems, 2(1).

Marcuse, H. (1969 / 1941). Reason and Revolution. London: Routledge and Kegan Paul.

Marquit, E. (1982). Contradictions in Dialectics and Formal Logic, Dialectical Contradictions . Minneapolis: Marxist Educational Press.

Marx, K. (1973 / 1857-8). Grundrisse. Harmondsworth: Penguin.

Marx, K. (1990 / 1867). Capital. (Vol. 1). Harmondsworth: Penguin.

Mathiassen, L., & Nielsen, P. A. (1989). Soft systems and hard contradictions: approaching the reality of information systems in organisations. Journal of Applied Systems Analysis, 16, 75-87.

Ollman, B. (1993). Dialectical Investigations. London: Routledge.

Ollman, B. (1998). Why dialectics? Why now? Science and Society, 63(3), 338-357.

Orlikowski, W. J., & Baroudi, J. J. (1991). Studying Information Technology in Organisations: Research Approaches and Assumptions. Information Systems Research, 2(1), 1-28.

Phelan, A. (1998). Constructed or Given Meanings?: Epistemological, Ontological and Hermeneutic Aspects of Data Modelling. Systemist, 20(Special Edition, Dec 1998).

Robinson, B. (1994). Social context and conflicting interests in participant understanding of information systems failure. Paper presented at the Information Systems Methodologies.

Robinson, B., & Richardson, H. (1999). The Historical Meaning of the Crisis of Information Systems: A Vygotskyan Analysis. Paper presented at the Critical Management Conference, Manchester.

Rose, S. (1997). Lifelines: Biology, Freedom, Determinism. London: Allen Lane, the Penguin Press.

Stamper, R. (1977). Physical objects, human discourse and formal systems. In G. M. Nijssen (Ed.), Architecture and Models in Database Management Systems (pp. 293-311). Amsterdam: North Holland.

Stamper, R. (1985). Knowledge as action: a logic of social norms and individual affordances. In Gilbert & Heath (Eds.), Artificial Intelligence and Social Action : Gower.

Thomas, A. R., & Lockett, M. (1979). Marxism and Systems Research: Values in Practical Action. Paper presented at the Proceedings of the 23rd Annual Conference of the International Society for General Systems Research.

Trotsky, L. (1964 /1940). The ABC of Materialist Dialectics. In I. Deutscher (Ed.), The Age of Permanent Revolution (pp. 355-359). New York: Dell.

Wartofsky, M. (1979). Models: Representation and the Scientific Understanding. Dordrecht: D. Reidel.