The design, development and implementation stages of integrated computer projects require close collaboration between users and developers, but this is particularly difficult where there are multiple specialties, organisations and system suppliers. Users become alienated if they are not consulted, but consultation is meaningless if they cannot understand the specifications showing exactly what is proposed. We need stringent specifications that users and developers can review and check before most of the work is done. Avoidable errors lead to delays and cost over-runs. The number of errors is a function of the likelihood of misunderstanding any part of the specification, the number of individuals involved and the number of choices or options. One way to reduce these problems is to provide a conceptual design specification, comprising detailed Unified Modelling Language (UML) class and activity diagrams, data definitions and terminology, in addition to conventional technology-specific specifications. A conceptual design specification needs to be straightforward to understand and use, transparent and unambiguous. People find structured diagrams, such as maps, charts and blueprints, easier to use than reports or tables. Other desirable properties include being technology-independent, comprehensive, stringent, coherent, consistent, composed from reusable elements and computer-readable (XML). When users and developers share the same agreed conceptual design specification, this can be one of the master documents of a formal contract between the stakeholders. No extra meaning should be added during the later stages of the project life cycle.