Lecturer: Christiane Floyd (emer. University of Hamburg)
Fields: Computer Science and Society
Modeling is pervasive in computing, even so there is no general definition of ‘computer modeling’. As some authors emphasise, each program embodies a model, though it may be implicit. For explicit modeling, the notion of modeling is normally taken over from the natural, social, cognitive or technical sciences relevant to the specific area of interest. Common to all models in computing is that they are ‘operational’ – when implemented and executed in computer programs, they become effective: they serve to enable or constrain human action and communication, or even to have direct impact on the real world.
Modeling inherently relies on ‘abstraction’ which involves reduction and decontextualisation. Human modellers – sometimes on their own, but more often working in teams and subject to collective interests – make choices in designing the model. These choices affect
- the model base, i. e. which theories and concepts are suitable for modelling?
- the model features, i.e. which objects, attributes, actions and relationships in the area of interested are relevant?
- the model implementation, i. e. which technical platforms are appropriate and how are they used?
- the methods for modeling, i. e. which techniques, tools and forms of organisation are used in design and implementation?
Design choices determine the basic properties of the operational system, when implemented and embedded in socio-technical environments: 1) its model-controlled behaviour, 2) its model- induced perception, and 3) the model-enabled human-computer interaction.
Thus, modellers have a scope for choice, which is characteristic for all design. Choice means freedom (within external constraints), and freedom inherently comes with responsibility. As designers, we cannot escape this responsibility, but we can accept, acknowledge and reflect it, making our choices transparent. We can develop value-based criteria for choices, communicate them to all stakeholders, discuss and agree on priorities and reach joint decisions.
In responsibility for design, technical quality of the operational system is important but not sufficient. Primary attention needs to be given to re-contextualization, i. e. to the embedding of the operational system in its socio-technical context. Therefore, responsible modellers cannot stay in their technical area of expertise only, but need to find ways for reaching out into the context and base their design decisions on careful anticipation of the operational system in use.
Christiane Floyd is professor emerita for software engineering and honorary professor at the Technical University of Vienna. Floyd obtained her doctorate in Mathematics at the University of Vienna. She gained experience in computing as compiler developer at Siemens, Munich, as research associate and instructor at Stanford University, and as senior consultant for software development methods at Softlab, Munich. As head of the software engineering group at the Technical University of Berlin (1978-1991) and the University of Hamburg (1991-2008), she was the principal author of STEPS, a participatory and evolutionary approach to software development. Throughout her career, she pursued her interest in philosophical foundations of computing and had a strong concern for the responsible use of computing technology. Since 2006 she is committed to promoting the use of information and communication technologies for development in Ethiopia.